今回は、先日書籍(Amazon Web Servicesクラウドデザインパターン設計ガイド)が発売された
Cloud Design Pattern(CDP)の記事になります。
今回の対象は「Operational Firewallパターン」です。
Operational Firewallで設定するアクセス制限ルールは、下記のような非機能要件のようなものと考えています。
- SSH/LDAPなどのログイン関係
- 監視・バックアッップ
- 管理コンソールへのアクセス
- NTP・DNSなどの基本機能
- メンテナンス時(パッケージのインストールなど)のHTTP(S)アクセス
図にすると下記のようになります。
そして、上記のセキュリティグループをCloud Formationのテンプレートにしてみました。
SUZ-LAB Formation Operational Firewall (suz-lab_operational-firewall.json)
内容が長くなるので、今回からはGitHubになります。
(他のテンプレートもあります)
下記のようにスタックの作成ができます。
しかし、VPCの作成等が手間なので、以前作成した下記のテンプレートと重ねて利用してみます。
(多少アップデートはしています)
重ね合わせた元のテンプレートは下記となります
スタックの作成は下記のようになります。
作成が終了すると、上記で図示したセキュリティグループが作成できていることがわかります。
尚、踏み台サーバのCloud Formationテンプレートも作成しています。
上記より、この環境でEC2を立ち上げると、セキュリティグループ(op-ec2)を付与することにより、
踏み台サーバ(step)からSSHでログインすることができます。
また、0.0.0.0/0のルーティングがNAT/IGWに設定されていれば、そのEC2にセキュリティグループ
(op-maintenanec)を付与することで、yumでのパッケージのインストールやアップデート等が
可能となります。