この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。
AWS コマンドラインインターフェイス (Command Line Interface) は、 AWS サービスを管理するための統合ツールです。
AWSでは、大量のセキュリティグループを作成する場合、 特に効率的なツールはありませんが、コンソールで操作する場合、 時間がかかりし、ミスが多発になります。
最も簡単な方法は、Excelを使てCLIをコード生成し、一括実行することです。 これは効率的に、単純なミスの発生を減らすことができます。
本日は、CLIよりセキュリティグループを作成方法を紹介します。 このデモでは、例としてWindowsを使用しています。
先ずは、AWS CLI の設定
一般的な使用の場合、aws configure コマンドが、AWS CLI のインストールをセットアップするための最も簡単な方法です。次の例は、サンプル値を示しています。次のセクションで説明するように、これらの値を独自の値に置き換えます。
$ aws configure
AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Default region name [None]: us-west-2
Default output format [None]: json
セキュリティグループの作成
aws ec2 create-security-group --group-name test --description sg-dec --vpc-id vpc-012
{
"GroupId": "sg-01234"
}
ルールをセキュリティグループに追加する
aws ec2 authorize-security-group-ingress --group-id sg-01234 ^
--ip-permissions IpProtocol=tcp,FromPort=1551,ToPort=1553,IpRanges=[{CidrIp=10.1.2.3/32,Description="test"}]
複数ルールをセキュリティグループに追加する
aws ec2 authorize-security-group-ingress --group-id sg-01234 ^
--ip-permissions IpProtocol=tcp,FromPort=1551,ToPort=1553,IpRanges=[{CidrIp=10.1.2.3/32,Description="test"}] ^
IpProtocol=tcp,FromPort=1551,ToPort=1553,IpRanges=[{CidrIp=10.1.2.3/32,Description="test"}]
※ IpProtocol重複で書いてOK
ルールをセキュリティグループに追加する(ソースはセキュリティグループ)
aws ec2 authorize-security-group-ingress --group-id sg-01234 ^
--ip-permissions IpProtocol=tcp,FromPort=1551,ToPort=1553,UserIdGroupPairs=[{GroupId=sg-1234,Description="from alb"}]
[All traffic]ルールをセキュリティグループに追加する
aws ec2 authorize-security-group-ingress --group-id sg-01234 ^
--ip-permissions IpProtocol=-1,FromPort=0,ToPort=65535,IpRanges=[{CidrIp=10.1.2.3/32,Description="All traffic"}]
結果確認
Table
aws ec2 describe-security-groups --group-id sg-01234 --output table
json
aws ec2 describe-security-groups --group-id sg-01234 --output json
ルールを削除する
aws ec2 revoke-security-group-ingress ^
--group-id sg-01234 ^
--ip-permissions IpProtocol=tcp,FromPort=1551,ToPort=1553,IpRanges=[{CidrIp=10.1.2.3/32,Description="test01"}]
セキュリティグループルールを削除する
aws ec2 delete-security-group --group-id sg-01234
以上です。