この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。
脅威検出のため、CloudFormationを用いてAWS全リージョンに対してGuardDutyを有効化しております。有効化後、AWSリージョンが増えましたら、追加したリージョンに対してGuardDuty有効化作業が必要のため、定期的にAWSリージョン増加確認の運用を行うことになりました。今度はAWSリージョン増減あるかの確認方法についてご紹介いたします。
AWSリージョン種類
AWSリージョンはデフォルトで有効化となっているリージョンとデフォルトで無効化となっているリージョンの2種類があります。デフォルトで有効になっているリージョンは、有効または無効にできません。デフォルトで無効になっているリージョンは、有効または無効にできます。
CLIでAWS一覧を確認する時に、「OptInStatus
」項目が出力されます。OptInStatus
の意味は以下の表で示します。
値 | 説明 |
---|---|
opt-in-not-required | リージョンがデフォルトで有効になっている場合 |
not-opted-in | リージョンが有効になっていない場合 |
opted-in | オプトインリージョンが有効になる場合 |
AWSリージョン一覧を出力コマンド
ec2 describe-regions
でAWSリージョン一覧を出力できます。
aws ec2 describe-regions [--all-regions]
describe-regions — AWS CLI 2.8.2 Command Reference (amazonaws.com)
all-regions
オプションを指定すると、デフォルトで無効化となっているリージョンも出力できます。
オプション付けない場合、デフォルトで有効となっているリージョンのみ出力されます。
デフォルトで有効となっているリージョン一覧
aws ec2 describe-regions --output text
リージョンコードのみ出力したい場合、以下のようにフィルター設定も可能です。
aws ec2 describe-regions --query Regions[*].RegionName --output text
AWS全リージョン一覧
aws ec2 describe-regions --all-regions --output text
AWSリージョン一覧確認運用
確認コマンドは簡単ですが、毎回手動でリージョン数を確認するには賢くないと思います。
以下のようにリージョン一覧確認はLambda関数により実行し、リージョン数が変わったら、SNSで通知する運用にしました。Lambda関数の定期実行はCloudWatchのイベントルール(EventBridgeルール)でスケーリングします。
※lambda関数を書く時に、Pythonのboto3を利用しました。boto3の利用イメージは以下のドキュメントをご参照ください。
EC2 — Boto3 Docs 1.24.89 documentation (amazonaws.com)
纏め
以上、コマンドを利用してAWSリージョン一覧の確認しかたを簡単に説明しました。毎回手動でAWSコンソールから状況確認する手間を省けると思うので、皆さんぜひご活用いただければと思います。