サイトアイコン 協栄情報ブログ

AWS CLIよりセキュリティグループを作成する


この記事は公開されてから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

以上です。

モバイルバージョンを終了