はじめに
AWSでは、各サービスで使用するIPアドレス範囲(プレフィックス)が定期的に変更される可能性があります。
公式に提供されている SNS通知 を利用すれば変更の検知は可能ですが、
すべての変更通知が一律で届くため、不要な情報まで含まれてしまいます。
本記事では、特定のサービス(例:Amazon Connect)やリージョン(例:ap-northeast-1)に絞った通知を実現する方法を紹介します。
参考資料
通常のSNS通知の課題
SNS経由で受け取る通知メールは以下のように、
どのサービス・リージョンのどの範囲が変更されたのかが不明瞭です。
正直、なんのこっちゃ。って感じです。
このように、業務上必要な情報(例:ap-northeast-1 の Amazon Connect 関連のIP変更)だけを抽出することはできません。
特定のサービスやリージョンのIPアドレス変更のみを通知する方法
結論から言うと、
SNS単体では特定のサービスやリージョンのプレフィックス変更を直接検知することはできません。
そこで、以下のような構成を用いたカスタム検知フローを構築します。
アーキテクチャ概要
【アーキテクチャ】
【処理内容】
- AWS提供のIPアドレスプレフィックス変更通知(SNS:us-east-1)を受信
- SNSトピックをトリガーにLambdaを実行
- Lambdaで前回のIPプレフィックス一覧(S3格納)と差分比較
- 対象サービス/リージョンに一致する場合のみ、通知SNSへ再送信
- 最新のIPリストをS3へ保存
実際のメール
以下は、特定のサービス/リージョンに該当する変更が検知された場合に送信されるメールの一例です。
このように、変更されたIP範囲が明確に通知されるため、セキュリティグループやファイアウォールの更新判断が即座に行えます。
まとめ
本記事では、AWSが提供するIPアドレス変更通知を活用しつつ、
特定のサービスやリージョンに限定して通知する方法をご紹介しました。
- SNS単体では細かいフィルタリングができない
- LambdaとS3を活用することで差分判定と通知対象の選別が可能
- ノイズを減らした通知で、対応漏れや誤対応を防止
この仕組みによって、変更を見落とすことなく、かつ重要な変更のみを把握する運用が実現できます。
セキュリティポリシーやネットワーク設定に依存するシステムを運用している方には、特に導入をおすすめします。