【aws cli】セキュリティグループの設定と管理

【aws cli】セキュリティグループの設定と管理

こんにちは。今回は、aws cliについて初心者エンジニアに向けて、セキュリティグループの設定と管理方法について解説します。

セキュリティグループは、aws上でネットワークトラフィックを管理するための重要な要素です。正しいセキュリティグループの設定と管理ができれば、aws上のインスタンスやサーバーのセキュリティを確保することができます。aws cliを使用することで、コマンドラインでセキュリティグループを作成・設定・監視することができます。

以下では、aws cliを使ったセキュリティグループの作成やルールの設定、変更、削除、適用方法などについて詳しく解説していきます。

aws cliでのセキュリティグループの作成手順

まずは、aws cliを使ってセキュリティグループを作成する手順について説明します。

aws ec2 create-security-group --group-name mysecuritygroup --description "my security group" --vpc-id vpc-fb9a3497

このコマンドを実行すると、指定したvpc内に"mysecuritygroup"という名前のセキュリティグループが作成されます。descriptionにはセキュリティグループの説明を記述します。

セキュリティグループの作成後、必要なインバウンドルールとアウトバウンドルールをセットする必要があります。

セキュリティグループのインバウンドルールとアウトバウンドルールの設定

インバウンドルールとアウトバウンドルールは、セキュリティグループに設定される制御ルールです。

以下のコマンドを実行することで、インバウンドルールを追加できます。

aws ec2 authorize-security-group-ingress --group-name mysecuritygroup --protocol tcp --port 22 --cidr 0.0.0.0/0

このコマンドでは、mysecuritygroup というセキュリティグループに対して、tcpプロトコル、ポート番号22、許可元のcidrブロック0.0.0.0/0(全てのipアドレスからの接続を許可)を追加するという設定を行っています。

同様に、アウトバウンドルールを追加するためには、以下のコマンドを実行します。

aws ec2 authorize-security-group-egress --group-name mysecuritygroup --protocol tcp --port 80 --cidr 0.0.0.0/0

このコマンドでは、mysecuritygroup というセキュリティグループに対して、tcpプロトコル、ポート番号80、許可先のcidrブロック0.0.0.0/0(全てのipアドレスへの接続を許可)を追加するという設定を行っています。

aws cliを使用したセキュリティグループのルールの編集と削除

作成したセキュリティグループのルールを編集したり削除したりするためには、以下のコマンドを使用します。

まず、ルールの編集を行うためには、以下のコマンドを実行します。

aws ec2 update-security-group-rule-descriptions-ingress --group-name mysecuritygroup --protocol tcp --port 22 --cidr 0.0.0.0/0 --description "updated rule description"

このコマンドでは、mysecuritygroup というセキュリティグループのインバウンドルールで、tcpプロトコル、ポート番号22、許可元のcidrブロック0.0.0.0/0に対して、ルールの説明を "updated rule description" に変更します。

また、ルールの削除を行うためには、以下のコマンドを実行します。

aws ec2 revoke-security-group-ingress --group-name mysecuritygroup --protocol tcp --port 22 --cidr 0.0.0.0/0

このコマンドでは、mysecuritygroup というセキュリティグループのインバウンドルールで、tcpプロトコル、ポート番号22、許可元のcidrブロック0.0.0.0/0に対して、ルールを削除します。

セキュリティグループの適用と関連リソースへの割り当て方法

セキュリティグループを作成した後、ec2インスタンスやrdsインスタンスなどの関連リソースに対して、セキュリティグループを適用する必要があります。

以下のコマンドを使用して、セキュリティグループをec2インスタンスに適用することができます。

aws ec2 modify-instance-attribute --instance-id i-1234567890abcdef0 --groups sg-01234567890abcdef

このコマンドでは、i-1234567890abcdef0 というec2インスタンスに対して、sg-01234567890abcdef というセキュリティグループを適用します。

同様に、rdsインスタンスにセキュリティグループを適用するためには、以下のコマンドを使用します。

aws rds modify-db-instance --db-instance-identifier mydbinstanceidentifier --vpc-security-group-ids sg-01234567890abcdef

このコマンドでは、mydbinstanceidentifier というrdsインスタンスに対して、sg-01234567890abcdef というセキュリティグループを適用します。

aws cliでのセキュリティグループのロギングと監視

セキュリティグループのログと監視を行うことで、セキュリティインシデントの検知やトラブルシューティングが容易になります。

以下のコマンドを使用して、セキュリティグループのログと監視を有効化することができます。

aws ec2 create-flow-logs --resource-type vpc --resource-ids vpc-1234567890abcdef0 --traffic-type all --log-group-name myloggroupname --deliver-logs-permission-arn arn:aws:iam::123456789012:role/myflowlogsrole

このコマンドでは、vpc-1234567890abcdef0 というvpcに対して、allのトラフィックタイプでのログを作成し、myloggroupname というロググループにログを送信します。さらに、arn:aws:iam::123456789012:role/myflowlogsrole というiamロールを使用してログを配信します。

以上がaws cliを使用してセキュリティグループを設定と管理する方法です。セキュリティグループの適切な設定と管理は、aws上のシステムのセキュリティを確保するうえで非常に重要です。aws cliを使ってセキュリティグループを作成・設定・監視することで、効率的な運用が可能となりますので、ぜひ活用してみてください。

参考記事:

 

【AWS CLI】関連のまとめ

【AWS CLI】関連のまとめ
【aws cli】基本コマンドと使い方   【AWS CLI】アクセスキーとシークレットアクセスキーの設定   【aws cli】s3バケットの作成と管理   【aws cli】ec2インスタンスの起動と停止   【aws cli】セキュリ...

 

オンラインスクールを講師として活用する!

【完全無料】使えるプログラミングスクール体験セミナー
【完全無料】使えるプログラミングスクール体験セミナー WEB制作の無料教材がここにきてどんどん増えてきてるので、使えるものをまとめようと思います。 TecAcademy(テックアカデミー) TechAcademyの無料体験 Samurai ...

 

0円でプログラミングを学ぶという選択

タイトルとURLをコピーしました