「AWS Black Belt Online Seminar AWS Config」の自分向けメモ
AWS Configって何?......レベルの人向け
構成管理の課題
- 構成ドキュメントと実設定の整合性の担保
- システム拡張に伴う管理工数の増大
AWS Config概要
- AWSリソースのインベントリ管理、構成変更サービス
- AWSリソースの構成変更を検知し、記録の保存、過去の構成状況、依存関係の確認
- 構成変更の記録を保存し、トレースが可能
- ターミネートされたEC2の確認
- リソース間の関係(リレーションシップ)も管理している
- 双方向の依存関係を確認できる
- 高度なクエリを利用して、特定のセキュリティグループを利用しているEC2を確認
AWS Config Rules概要
- AWS Configで取得した変更情報を評価できる
- 評価してSNSで通知も可能
- 準拠すべきルールを事前に設定し、ルールに沿った構成変更が行われているか評価する
ルールの種類
2種類ある
マネージドルール
- AWS提供のルール
カスタムルール
- Lambdaベースでルールを作成可能
- トリガータイプは任意
- Lambda実行時にConfigからイベントパラメータがセットされる
- Lambdaの実行結果をAWS Config Rulesに返却する
トリガータイプ
ルール評価実行のタイミング
設定変更時
- 関連リソース作成、変更時
定期的
- 任意のタイミング
- AWS Configがスナップショットを取るとき
修復アクション
- コンプライアンス違反のリソースに対して、ルールに関連付けられた修正アクションを実行
- SSM Automationドキュメントを使用したカスタムの修正アクションを設定
- コンプライアンス違反の検出ログからLambadaをトリガーすることも可能
ユースケースとベストプラクティス
ユースケース
- リソースに指定したタグがあるかどうか
- EC2インスタンスがSSMで管理されているか
- S3のパブリック読み書きが許可されていないか
- RDSスナップショットが未公開か
GitHub上で公開されているコミュニティベースで作成されたルールもある
- Lambda関数がVPCに紐づいているか
- S3 VPC Endpointが各VPCで有効か
OS構成情報の管理例
- SSMインベントリでソフトウェアの導入状況を確認
- 導入状況をAWS Configで記録・監視
- 違反があった場合
- 修復アクションとしてSSM Automationを実行
- CloudWatch Events ⇒ Lambda実行
ベストプラクティス
20個ある
記録対象
- 全アカウントと全ンリージョンで全ての操作を記録する
- 全リソースで設定変更を記録する
- グローバルリソースは1リージョンで記録し、重複記録を防ぐ
保存先
- 改ざんできないように安全なS3バケットにヒストリーとスナップショットを保存する
- 保存先のS3バケットの公開設定(マネージドルール)をチェックする
マルチアカウント
- 複数アカウントの構成を管理する場合、管理用アカウントを作成、集中管理する
- 集約ビュー機能でデータの集約が可能
料金
AWS Config
- リソースに対して記録された設計項目単位
- 0.003USD/記録
AWS Config Rules
- アクティブだったルール数/月だが変更予定
- 2019年8月1日から以下
- 最初の100,000ルールの評価:0.001USD
- 次の400,000ルールの評価 :0.0008USD
- 次の500,001ルールの評価 :0.0005USD
まとめ
- 何に対して、誰が、いつ、何をしたかを自動で、継続的に記録し、確認することができる