[基本情報]DMZと内部LANにおけるサーバ構成とセキュリティ対策まとめ

エンジニア

基本情報技術者試験によく出るWebアプリケーションをインターネットに公開する際の「サーバの安全な配置方法」について、DMZ(非武装地帯)と内部LANセグメントという2つのネットワークの観点から、WebサーバとDBサーバの配置方法についてまとめます。

「サーバってどこに置けばいいの?」「重要なデータが外に漏れないようにするには?」という疑問をもった方、基本情報の試験勉強中の方は、ぜひ参考にしてください。


DMZ(非武装地帯)とは?

DMZ(DeMilitarized Zone)は、インターネットと内部ネットワークの間にある「緩衝地帯」のようなものです。

🔰 DMZの役割

  • インターネットに公開する必要があるサーバ(例:Webサーバ)を配置
  • 万が一攻撃されても、内部ネットワークへの侵入を防ぐ壁になる

サーバ配置の基本構成

[インターネット]
      │
 ┌────┐
 │ FW │(1段目)
 └────┘
      │
   [DMZゾーン]
     │ ┌──────────────┐
     └▶│ Webサーバ(公開) │
       └──────────────┘
      │
 ┌────┐
 │ FW │(2段目)
 └────┘
      │
[内部LANセグメント]
     │ ┌──────────────┐
     └▶│ DBサーバ(非公開) │
       └──────────────┘

WebサーバはDMZに配置すべし

📌 理由

  • WebサーバはHTTP/HTTPSでインターネットからの通信を受けるため、公開が必須
  • セキュリティリスクが高いため、直接内部ネットワークに入れないことが鉄則

✅ セキュリティ対策

  • 必要なポート(80, 443)のみ開放
  • OS・ミドルウェアのアップデート
  • Webアプリケーションファイアウォール(WAF)の導入
  • 公開鍵認証によるSSH接続、rootログイン禁止
  • ログ監視ツール(例:Fail2ban)で不正ログイン対策

DBサーバは内部LANに設置すべし

📌 理由

  • データベースには機密データが多く格納されるため、外部から直接アクセスできてはいけない
  • Webサーバからの接続のみに限定することで、攻撃経路を限定

✅ セキュリティ対策

  • MySQLなら bind-address = 127.0.0.1 または WebサーバのプライベートIPのみ許可
  • データベースユーザーに最低限の権限のみ付与
  • 通信を暗号化(SSL/TLS)
  • データバックアップは暗号化+安全な場所に保存

二重のファイアウォール構成(2段FW)を採用しよう

DMZと内部LANの間に第2のファイアウォール(FW)を設けることで、WebサーバからDBサーバへの通信も厳密に制御できます。

通信元通信先許可ポート備考
インターネットWebサーバ(DMZ)80, 443HTTP/HTTPS
Webサーバ(DMZ)DBサーバ(内部)3306(MySQL)DB通信のみ許可
その他の通信DBサーバ✖すべて遮断✖セキュリティ向上

まとめ

DMZに配置Webサーバなどの公開系
内部LANに配置DBなど非公開の重要データ系
セキュリティのポイントファイアウォール制御、最小権限、監視、暗号化
推奨構成DMZ+二重FW+内部セグメント

おまけ:クラウド環境(AWSなど)の場合は?

AWSの場合は以下のように考えると良いです。

  • Webサーバ → パブリックサブネット+セキュリティグループ(HTTP/HTTPSのみ)
  • DBサーバ → プライベートサブネット+セキュリティグループ(Webサーバからのみ接続可)
  • NACLやIAMも使えば、さらに堅牢に構成できます。
タイトルとURLをコピーしました