CDP:WAF Proxyパターン

提供:AWS-CloudDesignPattern
移動: 案内, 検索
寄贈したアーキテクト

高価なWeb Application Firewallの効率的な活用

目次

解決したい課題

 Eコマースサイトなど重要な個人情報(クレジットカード情報など)を扱うWebサイトは、セキュリティを高めるためにWAF(Web Application Firewall)を導入することが多い。しかしクラウド上のシステムではスモールスタートしたシステムが多く、ほとんどの場合WAFの導入は考慮されていない。またスケールアウト/インによるサーバーの増減を前提としたシステムも多く、その場合、必要なライセンス数が確定できないのでWAFの導入は困難になってしまう。

クラウドでの解決/パターンの説明

 従来はサーバ台数を決定した後に調達を行っていたため、導入するWAFの台数も固定であり、特に問題は起きなかった。しかし、時間単位でサーバーの増減が行われることもあるクラウド環境では、それらのサーバーにWAFを導入するのは現実的でなく、むしろ、その上流にプロキシーサーバーを導入し、WAFをインストールする方が効果的である。WAFのみが機能するプロキシーサーバーを構築すれば、少ない台数で運用できるため、必要最低限のライセンス数のみで運用することが可能となる。

実装

 EC2とELBの間にWAFがインストールされたプロキシーサーバーを配置する。冗長化のため複数導入するのがよい。

  • ELBとEC2の間にWAFをインストールしたプロキシサーバー(EC2)を用意する。
  • プロキシサーバには必要に応じてHAProxyなどの負荷分散を行うミドルウエアも導入する。

構造

6wNg0ISJczU5Pz1m-87A06.png

利点

  • Web/APサーバーに手を入れずに、WAFを導入できる。
  • WAFの必要ライセンス数がWeb/APサーバー数ではなく、より少ないプロキシサーバー数となる。

注意点

  • SPOFを作らないようにするために、プロキシサーバーも複数用意する。
  • Web/APサーバーはELBに対して間接的に配置されるので、サーバー増減の際にAuto ScalingがELBに自動にEC2をアタッチする機能が利用できなくなってしまう。

その他

  • バックエンドのWebシステムが複数ある場合、Shared Serviceパターンを併用し、ELB/WAFのみを共用のVPCに入れて、各システムのVPCとVPC Peeringすることで、複数システム間でWAFを効率よく利用する事ができる。
個人用ツール
名前空間
変種
操作
CDPメニュー
ツールボックス