LoginSignup
2
1

More than 1 year has passed since last update.

【AWS】AWS Configの修復アクションを実行してみた(デフォルトSGからルールを削除)

Last updated at Posted at 2022-11-19

はじめに

VPC作成時に同時に作成されるデフォルトセキュリティグループってご存じでしょうか。
アカウント内に存在するけど使ってないなぁという方は結構多いのではないかと思います。
このSGは外部との通信が許可された状態で作成されますので、そのまま放置していると不正アクセスに利用される恐れがあります。

本記事ではこのデフォルトセキュリティグループのルールをAWSConfigのマネージドルールを使用して無効化してみます。
はじめてConfigを触る方でも理解できるよう、易しめの内容となっております。
AWS Configというサービスの存在は知ってるけど、どんな使い方ができるのか知らないって方の参考になれば幸いです。

また、「Configルールに紐づけられた修復アクションは、コンソール画面から削除できない」というちょっと癖がある仕様なため、修復アクションの削除方法も併せて紹介します。

【宣伝】
弊社に関する質問や何か聞きたいことがあればTwitterのDM等でお声がけください!お待ちしております!

目次

  1. AWS Configとは
  2. デフォルトセキュリティグループの作成
  3. Configルールを作成
  4. 修復アクションを定義
  5. リソースを修復
  6. 修復アクションを削除

AWSConfigとは

「Configルール」に記載された内容を正しい姿としてAWSリソースやオンプレミスサーバを評価します。
ルールに対して非準拠だった場合はSNSを使用してユーザに通知したり、Lambdaを実行することで対象のリソースを修正することも可能です。
自動修正だけでなく、非準拠を検知後に手動で修正アクションを実行することも可能です。
リソースの評価だけでなく、「リソースのインベントリ」や「リソースタイムライン」の機能を使用して、いつどんな変更が行われたかを確認することも可能です。

デフォルトセキュリティグループの作成

今回の検証で修正対象となるセキュリティグループを作成していきます。
デフォルトセキュリティグループはVPCを作成すると併せて自動作成されます。
(SGさえ作成されればいいのでVPCの内容は何でもいいです。)
image.png

VPCの作成が完了したら、セキュリティグループの画面でVPCIDを検索します。
デフォルトSGが作成されていることを確認できるかと思います。
このSGのルールに注目してください。
インバウンド、アウトバウンドでそれぞれルールが指定されています。(ルールの詳細は割愛)

今回の検証ではこのインバウンド・アウトバウンドルールをAWS Configを使用して削除します。
image.png
image.png

Configルールを作成

AWS Configのサービス画面で「ルールを追加」を押下します。
image.png
今回はAWSが提供するマネージドルール「vpc-default-security-group-closed」を使用します。
画像のような内容になっているか確認し、「ルールを追加」を押下します。

image.png
image.png
image.png

修復アクションを定義

次にConfigルールで検出されたリソースに対して実行する修復アクションを定義します。
「アクション」から「修復の管理」を選択します。
image.png

今回は手動修復を選択します。
定期的なスキャンやリソース作成を検知して自動修正したい場合は「自動修復」を選択してください。

「修復アクションの詳細」は「AWS-CloseSecurityGroup」,「リソースIDパラメータ」は「SecurityGroupId」を選択してください。
そのまま「変更を保存」を押下します。
image.png
ルールのアクションに「AWS-CloseSecurityGroup」が追加されました。
まだデフォルトセキュリティグループを修正していないので非準拠として1件検出されています。
image.png

ルール名を押下すると画像のようにルールの詳細が表示されます。
デフォルトセキュリティグループが非準拠として検知されていることがわかります。
image.png

リソースを修復

再度ですが、修復前のセキュリティグループを確認しておきます。
インバウンド、アウトバウンドにそれぞれルールが存在しています。
image.png
image.png

いよいよ修正していきます。
リソースを選択した状態で「修復」を押下します。
image.png

image.png
実行が完了したらフィルターを「準拠」に変更してください。
先ほどは非準拠だったセキュリティグループIDが表示されました。
image.png

コンソール画面でルールが削除されたか確認してみます。
image.png
image.png

全てのルールが削除されていることを確認できました!

修復アクションを削除

はじめに でも記載しましたが、修復アクションが定義されたConfigルールはコンソール画面から削除できません。(ゴ〇仕様)
そのため、CloudShellを使用してConfigルールに紐づけられた修復アクションを削除します。
まず初めにConfigルールに紐づけられた修復アクションを確認します。

describe-remediation-configurations.txt
#指定したConfigルールの修復アクションを確認
aws configservice describe-remediation-configurations --config-rule-names {ルール名}

image.png

ルール名に修復アクションが紐づけられていることが確認できました。

次にルールに紐づいた修復アクションを削除します。

delete-remediation-configuration.txt
#指定したConfigルールから修復アクションを削除
aws configservice delete-remediation-configuration --config-rule-name {ルール名}

image.png
削除コマンドを実行し、再度ルールに紐づけられた修復アクションを確認してみると、何も返ってきませんでした。
つまり修復アクションとConfigルールの関連付けが解除できました。
コンソールで確認すると修復アクションが消えていることが確認できます。
image.png

あとはコンソールから(もしくはCLIコマンド)でルールを削除すればOKです!

おわりに

今回はAWS Configって名前も知ってるし、使ったほうがよりセキュアに保てることは分かっているけど、触ったことないからイマイチイメージがつかめない。。。って方向けに書いてみました。
実際に手を動かさなくてもある程度理解できるように画像多めにしてみましたがいかがでしょうか。
今回はマネージドルールを使用した修正でしたが、Lambdaを使ったカスタムルールも作れるのでそのうち検証して記事書いてみようかなと思ってます。気長にお待ちください(笑)

今回はここまでとなります。
最後まで読んでいただきありがとうございました。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1