今回は、先日書籍(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の作成等が手間なので、以前作成した下記のテンプレートと重ねて利用してみます。
(多少アップデートはしています)

重ね合わせた元のテンプレートは下記となります

SUZ-LAB Formation ALL (suz-lab_all.json)

スタックの作成は下記のようになります。

作成が終了すると、上記で図示したセキュリティグループが作成できていることがわかります。

尚、踏み台サーバのCloud Formationテンプレートも作成しています。

SUZ-LAB Formation STEP (suz-lab_step.json)

上記より、この環境でEC2を立ち上げると、セキュリティグループ(op-ec2)を付与することにより、
踏み台サーバ(step)からSSHでログインすることができます。
また、0.0.0.0/0のルーティングがNAT/IGWに設定されていれば、そのEC2にセキュリティグループ
(op-maintenanec)を付与することで、yumでのパッケージのインストールやアップデート等が
可能となります。

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら