Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
そもそもAWS Configの設定変えられたらどうするの?Amazon EventBridg...
Search
Satoshi Kaneyasu
April 26, 2025
Programming
1
140
そもそもAWS Configの設定変えられたらどうするの? Amazon EventBridgeでマネコンの操作を監視する
Satoshi Kaneyasu
April 26, 2025
Tweet
Share
More Decks by Satoshi Kaneyasu
See All by Satoshi Kaneyasu
生産性の壁を越えろ! 何がなんでも計測する
satoshi256kbyte
1
25
オープンセミナー2025@広島「君はどこで動かすか?」アンケート結果
satoshi256kbyte
0
200
オープンセミナー2025@広島LT技術ブログを続けるには
satoshi256kbyte
0
120
AWS Summit Japan 2024と2025の比較
satoshi256kbyte
0
21
はじめてのKiro、今あなたは岐路に立つ
satoshi256kbyte
1
67
AWS Summit Japan 2024と2025の比較/はじめてのKiro、今あなたは岐路に立つ
satoshi256kbyte
1
290
フルリモートで社内にどうやって自分の居場所を作るのか?
satoshi256kbyte
12
18k
プロジェクトマネージャーがGitHub Copilotのエージェンモードを使い始めました
satoshi256kbyte
1
180
変化の激しい時代における、こだわりのないエンジニアの強さ
satoshi256kbyte
1
1.8k
Other Decks in Programming
See All in Programming
CSC305 Summer Lecture 06
javiergs
PRO
0
100
AI時代のドメイン駆動設計-DDD実践におけるAI活用のあり方 / ddd-in-ai-era
minodriven
23
9k
AHC051解法紹介
eijirou
0
620
ライブ配信サービスの インフラのジレンマ -マルチクラウドに至ったワケ-
mirrativ
2
260
AIコーディングAgentとの向き合い方
eycjur
0
220
サイトを作ったらNFCタグキーホルダーを爆速で作れ!
yuukis
0
490
あのころの iPod を どうにか再生させたい
orumin
2
2.5k
TROCCO×dbtで実現する人にもAIにもやさしいデータ基盤
nealle
0
330
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
1
730
Terraform やるなら公式スタイルガイドを読もう 〜重要項目 10選〜
hiyanger
13
3.2k
コーディングエージェント時代のNeovim
key60228
1
100
管你要 trace 什麼、bpftrace 用下去就對了 — COSCUP 2025
shunghsiyu
0
470
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Site-Speed That Sticks
csswizardry
10
780
Optimizing for Happiness
mojombo
379
70k
For a Future-Friendly Web
brad_frost
179
9.9k
GraphQLとの向き合い方2022年版
quramy
49
14k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
Rails Girls Zürich Keynote
gr2m
95
14k
Documentation Writing (for coders)
carmenintech
73
5k
The Invisible Side of Design
smashingmag
301
51k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
How STYLIGHT went responsive
nonsquared
100
5.7k
Transcript
そもそもAWS Configの設定変えられ たらどうするの? Amazon EventBridgeでマネコンの 操作を監視する 2024.04.27 JAWS-UG広島 第22回勉強会 SATOSHI
KANEYASU
2 自己紹介 氏名:兼安 聡 所属:株式会社サーバーワークス アプリケーションサービス部 在住:広島(フルリモート) 担当:DevOps、技術支援、PM、SM 2025 AWS
Community Builders 2024 Japan AWS Top Engineers (Database) 2024 Japan AWS All Certifications Engineers 認定スクラムマスター PMP X:@satoshi256kbyte 実はJAWS-UGのオフラインイベントで長尺の発表をするのは今回が初めてです
3 目次 ⚫はじめに ⚫サービス公開時に気にすること ⚫AWS Configによる設定監視 ⚫AWS Config自体の設定変更を防ぐには ⚫AWS Config自体の設定変更の検知
⚫ルートユーザーのログイン検知 ⚫サンプルCloudFormationテンプレートの説明 ⚫まとめ
4 はじめに ⚫サービスを世に出そうとする時、安全性を確保できてないと公開にストップがかか ることがあります ⚫AWS Configの設定監視と、設定監視自体を無効化された時に備えてAWS Config自 体の設定変更を検知・通知する方法について紹介します ⚫本発表で登場するAWSサービスは以下の通りです ⚫AWS
Config ⚫AWS CloudTrail ⚫Amazon EventBridge ⚫Amazon SNS ⚫本発表で出てくる設定内容は、一式を構築するCloudFormationテンプレートを用意 しているので後で試したくなったら使ってみてください
サービス公開時に気にすること
6 サービス公開時に気にすること① 機能 コスト 安全 可用性 セキュリティ 適切な設定 適切な設定の維持
7 サービス公開時に気にすること② 機能 コスト 安全 可用性 セキュリティ 適切な設定 適切な設定の維持 クラウドの導入・サービスの公開
においてここが特に問われる
AWS Configによる設定監視
9 AWS Configとは ⚫AWSリソースの設定変更履歴を記録、評価、監査できるサービス ⚫AWSリソースのインベントリ管理 ⚫インベントリ=在庫 ⚫AWSアカウント上のリソースと変更履歴を管理する ⚫コンプライアンス評価 ⚫リソースの設定がルールに準拠しているチェックして通知に繋げる
10 AWS Configの有効化 ⚫AWS Configの初期画面には2つのボタンがあります ⚫2つのボタンの大きな違いは、途中でコンプライアンス評価ルールの設定を挟むかど うかです
11 AWS Configの無効化 ⚫記録を停止すると、変更の検知や評価が動作しなくなります
12 AWSリソースのインベントリ管理 ⚫リソースの一覧や変更履歴を見ることができます
13 コンプライアンス評価 – ルールの設定 ⚫AWS Configはコンプライアンス評価のルールが設定できます ⚫ルールはマネージドと自作が選べます ⚫例えば、セキュリティグループがSSHのポート(22)が開いていたら非準拠扱いに するルールがあります
14 コンプライアンス評価 – 修復アクション ⚫ルールには修復アクションが設定できます ⚫例えば、セキュリティグループの修復アクションはマネージドのものが存在します ⚫これを使用すると、セキュリティグループでSSHのポートが開けられたら自動で閉 じる(厳密には削除)ようなことができます ⚫ (正直使ったことはありませんが・・・)
15 コンプライアンス評価 – EventBridgeのルールと通知設定 ⚫EventBridgeのルールを作ればコンプライアンス評価の通知が作れます ⚫ただし、状態が変わってないというイベントはないので注意してください
AWS Config自体の設定変更を防ぐ には
17 AWS Config自体の設定変更の検知 ⚫AWS Config自体の設定変更はAWS CloudTrailに記録されます ⚫CloudTrailとEventBridgeのルールで、 AWS Config自体の設定変更は検知すること ができます
18 AWS CloudTrailのイベントレコード ⚫AWS Config自体の設定変更はAWS CloudTrailに記録されます
19 EventBridgeのルールとイベントレコードのJSONビュー ⚫CloudTrailのイベントレコードのJSONビューで内容を見ることができます ⚫JSONビューを元にEventBridgeのルールで引っ掛けるようにします
20 更新系イベントを拾い、一部イベントを除外する ⚫“readOnly”: [false]で更新系イベントだけを拾っています ⚫その上で、コンプライアンス評価による書き込みイベントだけを除外します ⚫コンプライアンス評価は、評価結果の書き込みが発生する更新系イベントに分類さ れる上、日々大量に発生する可能性のあるイベントで、ノイズになるからです
21 通知メッセージの設定
22 通知メッセージのサンプル
23 ルートユーザーのログイン検知 ⚫ルートユーザーのログインもCloudTrail+EventBridgeのルールで検知することがで きます ⚫しかし、ルートユーザーのログインはバージニアリージョンのCloudTrailに記録され るので、EventBridgeのルールもバージニアリージョンに作る必要があります ⚫ 余談ですが、一般ユーザーのログインイベントはもっと複雑です・・・
24 CloudTrailにおけるルートユーザーのログインイベント ⚫ルートユーザーのログインイベントはバージニアリージョンのCloudTrailにしか現れ ません
25 EventBridgeのルールとイベントレコードのJSONビュー ⚫ルートユーザーのログインイベントも、JSONビューを元にEventBridgeのルールで 引っ掛けるようにします
26 通知メッセージのサンプル
サンプルCloudFormationテンプ レートの説明
28 サンプルCloudFormationテンプレートの説明 ⚫サンプルのCloudFormationテンプレートを用意しました ⚫こちらのGitHub Gistからダウンロードできます ⚫解凍すると3つのテンプレートができます 1. config_ssh_security_rule.yaml(コンプライアンス評価 – 修復アクションのサンプル)
2. config_item_change_rule.yaml(AWS Config自体の設定変更の検知サンプル) 3. root_user_signin_rule_us_east_1.yaml(ルートログインの検知サンプル) ⚫テンプレートは3つ用意しています。 ⚫ 1つ目・2つ目は任意のリージョンで実行してください ⚫ AWS Configをゼロから始めるイメージのテンプレートなので、普段使わないリージ ョンの方が試しやすいです ⚫ 3つ目はバージニアリージョンで実行してください
29 サンプルCloudFormationテンプレートの実行方法① ⚫テンプレートはAWSマネジメントコンソールのCloudFormationから実行します
30 サンプルCloudFormationテンプレートの実行方法② ⚫3つのテンプレートは全てパラメータにメールアドレスがあります ⚫入力して実行すると、サブスクリプションの確認メールが飛ぶので中のリンクをク リックして確認します ⚫CloudFormationの実行ができたら、リソースタブからできたリソースに飛べます
まとめ
32 まとめ ⚫サービスを世に出そうとする時、安全性を確保できてないと公開にストップがかか ることがあります ⚫AWS Configを使うと設定監視ができます ⚫AWS Config自体の設定変更はCloudTrail+EventBridgeで検知・通知ができます ⚫設定変更の対策は、AWS OrganizationsでSCPを組むのがより良いと思いますが、
Organizationsの導入はそれはそれで大変なのでまずはできることから始めるのがよ いと思います ⚫今できることをやり、まずは世に出すことが大事です
None