LinuCレベル2 システムアーキテクチャの設計 問25
システムアーキテクチャの設計/典型的なシステムアーキテクチャインターネットに公開するWeb三層構成(Web・AP・DBサーバー)のネットワーク配置と通信の許可の考え方として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル2の出題範囲「システムアーキテクチャの設計」に対応。実際の試験問題ではありません)
- A外部から到達できるセグメントにはWebサーバーだけを置き、DBサーバーにはAPサーバーからのDB用ポートだけを許可する
- B3種類のサーバーを外部から到達できる同じセグメントに置き、各サーバーのOSのファイアウォールだけで通信を制限する
- CDBサーバーを外部から到達できるセグメントに置き、利用者のブラウザから直接SQLで問い合わせられるようにして速くする
- DAPサーバーとDBサーバーは内部に置き、DBサーバーには内部のすべてのホストからの全ポートへの通信を許可しておく
正解:A
解説
Web三層構成では、利用者からの要求を直接受けるWebサーバー(またはロードバランサ)だけを外部から到達できるセグメント(DMZ等)に置き、APサーバーとDBサーバーは内部のセグメントに置くのが一般的です。各層の間では必要な通信だけを許可し、DBサーバーにはAPサーバーからのDB用ポート(PostgreSQLの5432番、MySQLの3306番等)だけを許可します。こうすることで、Webサーバーが侵害されてもDBへ直接到達されにくくなり、被害の範囲を限定できます。クラウドではセキュリティグループで層ごとに同様の制限を行います。
選択肢ごとの解説
- A正しい。外部に公開するのはWebサーバーだけにし、DBサーバーへの通信はAPサーバーからの必要なポートに限定します。
- B誤り。すべてを外部から到達できるセグメントに置くと、APサーバーやDBサーバーが直接攻撃を受けるおそれがあります。
- C誤り。DBサーバーを外部に公開すると、データを直接狙われる危険が大きくなります。DBへはAPサーバー経由でだけアクセスさせます。
- D誤り。内部のすべてのホストに全ポートを許可すると、内部の1台が侵害されたときにDBへ到達されやすくなります。必要な通信だけを許可します。