バージョンによる違い
パラメータ,キーワードの"(ダブルクォーテーション)区切り
一定以上のバージョンからパラメータキーワードやパラメータを"(ダブルクォーテーション)で囲む必要が無くなった。
※新バージョンでも"(ダブルクォーテーション)区切りの互換性はある(Ver2.7.35で確認)
コマンド構成
aws <service> <command> <parameter> [option]
- service
- ec2等コマンドを実施したいサービスの選択
- command
- サービスに対して実施したいコマンド
- parameter
- コマンドに必要なパラメータの指定
- option
- オプションの指定
環境設定
AWSを操作する際に使用するアカウント・IAMユーザや、操作先のリージョンの設定
> aws configure <--profile [NAME]> AWS Access Key ID []: AWS Secret Access Key []: Default region name []: Default output format [None]:
設定
- AWS Access Key ID
- 操作に使用するIAMユーザのAccessKeyを指定
- AWS Secret Access Key
- 操作に使用するIAMユーザのsecretAccessKeyを指定
- Default region name
- 接続して操作するリージョンの指定
- リージョンごとに完全に分けられている為、リージョンを切り替えると利用中のサービスも異なる
- JP東京リージョン: ap-northeast-1
- JP大阪リージョン:
- Default output format
- コマンド結果のデフォルト出力方式
- None
- json
- text
- コマンド結果のデフォルト出力方式
option
- --profile
- 指定することによりデフォルトの設定でなく、名前付けしたプロファイルの構成を設定。
- プロファイルことに構成を変えれるので、接続先等を複数登録出来る。
バージョン確認
aws --version
EC2 Command
セキュリティグループのルール一覧出力
Command
aws ec2 describe-security-group-rules <option>
option
オプション複数同時指定可
セキュリティグループ(SG)へのルール追加・削除
aws ec2 <command> <parameter [sub-parameter]>
command
- authorize-security-group-ingress
- Inbound(内向き)通信へのアクセス制御を追加。EC2 <-- アクセス元
- authorize-security-group-egress
- Outbound(外向き)通信へのアクセス制御を追加。EC2 --> アクセス先
- revoke-security-group-ingress
- Inbound(内向き)通信へのアクセス制御を削除。EC2 <-- アクセス元
- revoke-security-group-egress
- Outbound(外向き)通信へのアクセス制御を削除。EC2 --> アクセス先
parameter&sub-parameter
- --group-id
- ルールを追加したいSGのIDを指定
- --ip-permissions
- 以下のパラメータを指定。(各パラメータは,[カンマ]区切り)
- IpProtocol=
- FromPort=
- 開始ポート番号を指定(範囲指定)。
- すべてのポートの場合は[ -1 ]を指定
- ToPort=
- 終了ポート番号を指定(範囲指定)。
- すべてのポートの場合は[ -1 ]を指定
- IpRanges=
Command例
コマンド例1
EC2にプロトコル"TCP",ポート番号"80",送信元"10.0.0.0/24"のインバウンドの通信を許可 (説明コメントあり)
aws ec2 authorize-security-group-ingress --group-id sg-xxxxxx --ip-permissions IpProtocol=tcp,FromPort=80,ToPort=80,IpRanges='[{CidrIp=10.0.0.0/24,Description="TestTCP80"}]'