aws-cliコマンドでsecurity groupのinboundとoutboundをコマンドで設定する。
AWSにはコマンド経由でEC2のインスタンスに対する操作を行うことができます。
今回はWindows Server上にて、コマンドラインでEC2の設定を行ってみます。
まずは、以下のURLからAWSCLI64.msiをダウンロードします。
http://docs.aws.amazon.com/cli/latest/userguide/installing.html
上記のURLにはLinux上でaws-cliコマンドを使う方法も記載されているため、linux上でAWSをコマンド操作する際にも役に立つと思います。
aws-cliでコマンドを使うためには、
aws configure
というコマンドで、設定を編集する必要があります。
$ aws configure AWS Access Key ID [None]: AKIAfJKJKVF AWS Secret Access Key [None]: wJalrXUtnFVDFJKLJLF/vfdkAMPLEKEY Default region name [None]: us-west-1 Default output format [None]: json
参考)http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html
aws configureで設定するAccess KeyやSecret Access Keyは、IAMを作成して取得します。
IAM(Identity and Access Management)とは、AWS上のリソースを操作する権限を管理するためのサービスで、IAMの機能を使って、使いたいユーザーに「AWSを操作できる権限」を与えなければいけません。
今回の記事はIAMの紹介ではないので割愛します。
では、メインの内容。
セキュリティグループの設定を行うコマンドについてです。
・セキュリティグループを作成するコマンド
aws ec2 create-security-group --group-name "my security" --description "this is my security" --vpi-id hoge
参考)https://github.com/aws/aws-cli/blob/develop/awscli/examples/ec2/create-security-group.rst
・セキュリティグループにinboundの設定を追加するコマンド
aws ec2 authorize-security-group-ingress --group-id sg-64782fhXX --protocol tcp --port 443 --cidr 1X7.100.XXX.YYY/32
・セキュリティグループにoutboundの設定を追加するコマンド
aws ec2 authorize-security-group-egress --group-id sg-64782fhXX --protocol tcp --port 443 --cidr 1X7.100.XXX.YYY/32
こうやってコマンドで設定すれば、たくさんのIPアドレスの設定を、いちいちブラウザ経由のGUIでやることなく、一気に行うことができます。
セキュリティグループの設定の削除はこちらのリンクにあります。
inboundの設定削除がこちらで、
http://docs.aws.amazon.com/cli/latest/reference/ec2/revoke-security-group-ingress.html
aws ec2 revoke-security-group-ingress --group-id sg-XXXdajau --protocol tcp --port 80 --cidr 0.0.0.0/0
outboundの設定削除がこちらですね。
http://docs.aws.amazon.com/cli/latest/reference/ec2/revoke-security-group-egress.html
aws ec2 revoke-security-group-egress --group-id sg-XXXrsYY --protocol tcp --port 80 --cidr 0.0.0.0/0