オフィスを引っ越ししたり、踏み台として使っているサーバが変更になったりなどで、セキュリティグループでアクセス許可設定をしていたIPアドレスが変更になる、ということがたまにある。
セキュリティグループの管理といえば、Piculetが定番である。ExportしたDSLをgitなどで管理することができる、非常に便利なツールである。しかし、多数のAWSアカウントとリージョンに対して、バッチ的に変更を行いたいという場合には、ちょっと工夫が必要になる。
もう少しお手軽に更新したい、という声があったので作ってみたのがこちら。
対象となるリージョンに存在するセキュリティグループすべてをチェックして、指定されたCIDRを検索する。そして、すべてを置き換え対象となるCIDRで置換を行うというもの。例えば、以下のように実行する。
$ sgupdater update --from-cidr 192.0.2.0/24 --to-cidr 198.51.100.0/24
バッチ的に複数の環境に適用するなら、こちらの方が簡単にできるかと思う。
ちなみに、sgupdater
は、内部的にはPiculetを使っている。Piculetは本来、ライブラリ的に使えるように設計されていないのだが、ちょっと無理やり使わせてもらっている。感謝します。