Backnetパターン
管理用ネットワークの設置
目次[非表示] |
解決したい課題
インターネットに公開し、不特定多数のユーザーからアクセスされるサーバー(例えばWebサーバー)は、管理目的でのアクセスも同じネットワークインタフェースを通して行われるケースが多い。 しかし高いセキュリティレベルが要求される場合、信頼できるアクセスとできないアクセスが同じネットワークインタフェースを利用するのは避けるべき課題となり、分離する必要性が出てくる。
クラウドでの解決/パターンの説明
公開目的のWebサーバーに複数のネットワークインタフェースを設置し、管理用のネットワークインタフェースと公開用のネットワークインタフェースに分けることは、一般的なシステム構築・管理でよく用いられる手法である。 この管理用ネットワークインタフェースを設けることを「バックネット」と呼び、これを用意することによって管理上のネットワークリスクを低減させることが可能になる。
実装
VPC(仮想プライベートネットワーク)では、EC2に対して二つのENI(仮想ネットワークインタフェース)が利用可能である。一方を公開用ネットワークインタフェースとして、もう一方を管理用ネットワークインタフェースとして設定する。
- EC2上にWebサーバーやデータベースサーバーをインストールし、二つ(外向け用と内向け用)のENIを用意する。
- ENIの一つは、VPCのパブリックサブネットに所属し、0.0.0.0/0 (全トラフィック)を外向けのインターネットゲートウエイにルーティングする。
- ENIの二つ目は、VPCのプライベートサブネットに所属し、0.0.0.0/0 (全トラフィック)を社内イントラネットなどにつながるVPNゲートウエイにルーティングする。SSHアクセスや管理/ログ用途にもこちらを使う。
- 異なるセキュリティグループを各仮想ネットワークインタフェースに適用することが可能なので、一方の仮想ネットワークインタフェースはポート80のトラフィックを許可し、もう一方のネットワークインタフェースにはポート22へのトラフィックを許可するように設定にする。
構造
利点
- SSHとしてアクセス可能なポートが外部インターネット向けには存在しないので、セキュリティが高い。
- 外向けと内向けの仮想ネットワークインタフェースを明確に分けることができるので、手順上のミスなどが発生しにくい。
注意点
- 複数のENIを利用しても、インターフェースが論理的に分かれるだけで、物理線が分かれるわけではない。このため、ENIを追加しても帯域が増えるわけではない。
サンプルプログラム
※初回起動に20秒程度の待ち時間が発生します。
関連ブログ