オフィスを引っ越ししたり、踏み台として使っているサーバが変更になったりなどで、セキュリティグループでアクセス許可設定をしていた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は本来、ライブラリ的に使えるように設計されていないのだが、ちょっと無理やり使わせてもらっている。感謝します。

元記事はこちら

[AWS] セキュリティグループのアクセス許可IPアドレスを変更するツールを作った