Amazon EC2にVPCでセキュアな環境を作る

rubyとNodeを使ったアプリでこんな感じを想定

f:id:rabe_ame:20130311182349j:plain

東京リージョンで作成

ゾーンはサブネット単位で分けれる為、冗長化とか考えてサブネットを11に分けてみた


  • 192.168.0.0 ap-northeast-1a

サービスに直接は関係のない踏み台とか管理画面、

各サーバのプラグイン等の更新時に外からデータを引っ張ってくる為のNATサーバ用

EIPつけて外と直接通信する


  • 192.168.1.0[ap-northeast-1a]
  • 192.168.2.0[ap-northeast-1b]

nginx + rails

ページ表示用


  • 192.168.3.0[ap-northeast-1a]
  • 192.168.4.0[ap-northeast-1b]

Node用

socket.ioとかengine.ioでrailsサーバで表示したページに

notificationとかしてリアルタイムデータを共有させる用


  • 192.168.5.0[ap-northeast-1a]
  • 192.168.6.0[ap-northeast-1b]

KVSとか用

今回はmongoDBを。

こちらを参考にしました。


  • 192.168.7.0[ap-northeast-1a]
  • 192.168.8.0[ap-northeast-1b]

RDS DB用


  • 192.168.9.0 [ap-northeast-1a]
  • 192.168.10.0[ap-northeast-1b]

ELB用

インターネットにつなぐサブネットをわかりやすくしたかったので

ELB用にサブネットを切りました。


コレで192.168.0.0に作成したEIP付けたサーバ以外から内部のサーバへのSSHアクセス等々できない設定にできるハズ!

本当にセキュアにしたいならVPSとか使えばいいのかもデスガ・・・