NAT/IPマスカレードとDMZは双方ともサーバーを公開できるようにするという性質上、一見、同じ意味であるかのような気がしますが、実はセキュリティ的に大きな違いがあります。簡潔にいってしまえば、企業などの大規模なネットワークを想定するのではなく、自宅でサーバーを公開するケースを想定して言うと、NAT/IPマスカレードの方がセキュリティが高く、DMZの方がセキュリティが低いことになります。特に1台のコンピュータでサーバーを構築する場合にDMZ(DeMilitarized
Zone)を使用すると、その名のとおり、自分のサーバーマシンがそのまま 非武装地帯と化してしまいます(なお、パケットフィルタリング機能を併用していればその限りではありません)。では、非武装地帯となってしまうということはどういうことなのかをNAT/IPマスカレードの役割と併せて解説していきます。以下の表が大まかなNAT/IPマスカレードとDMZの違いです。
NAT/IPマスカレード |
DMZ |
プロトコル・ポート番号ごとに転送先を設定します。
|
転送先にIPアドレスを指定します。 |
外部から内部へのルーティングを正しく設定することで、外部からLAN内にある複数のコンピュータを隠蔽することができます。 |
転送先に指定したコンピュータは、セキュリティが低下します。 |
|
まず、サーバーを公開せず、単に特定のWebサイトを閲覧するケースを考えてみましょう。LAN内にある特定のコンピュータ[192.168.0.5]が外部にある特定のWebサイトを閲覧するためには、ルータに対して「LAN側のどのコンピュータから、WAN側のどのコンピュータへ、TCP/UDPのポート何番でアクセスしたのか」といったIPパケット送る必要があります。ルータはその情報を受け取り外部にアクセスして、接続が確立した場合にLAN内にある特定のコンピュータ[192.168.0.5]へとIPパケットを送り返します。それによって[192.168.0.5]のコンピュータはWebページを閲覧することができるようになるわけです。
そこで逆のケース、WAN側からLAN側へとアクセスするケースを考えてみます。例えば、WAN側にある特定のコンピュータがLAN側にある特定のコンピュータにアクセスするためには、ルータがWAN側から送られてきたIPパケットをもとにLAN側にある特定のコンピュータへ情報を送り返さなければなりません。しかしながら、WAN側から送られてきたIPパケットには「LAN内にあるどのコンピュータへ届ければいいのか」といった情報が無いために、ルータはそのようなIPパケットを破棄することになります。つまり、IPマスカレードを使用していることによって、WAN側から不正なIPパケットが送信されてきた場合に、不正アクセスから防御していると考えることができるのです。
◎WAN側からLAN側への要求を破棄する場合
次に、サーバーを公開する場合を想定して考えてみます。上記のような例では、WAN側からのアクセスがあった場合に、ルータによって自動的にパケットが破棄されてしまうためにいくらサーバーを公開しようとも、WAN側からはLAN内にある特定のサーバーへとアクセスすることができなくなってしまい、Webサイトを閲覧することができません。そこで、サーバーを公開するためには、WAN側から送られてきたIPパケットをLAN内にある特定のサーバーマシンへ送るようにルータに記憶させておかなくてはなりません。例えばWWWサーバーを公開する場合は、WAN側からのアクセス要求が発生したら、ルータは「TCPの80番ポートを使用してLAN内にあるサーバーマシン[192.168.0.5]にパケットを転送する」ということをあらかじめ記憶させておく必要があります。NAT/IPマスカレードテーブルでこのように設定しておけば、WAN側からLAN側にあるサーバーマシンへ接続することができ、無事にWebサイトを公開することができるようになります。ここで重要となるのが、NAT/IPマスカレードは プロトコル・ポート番号ごとに転送先を設定できるという点です。つまり、プロトコル、ポート番号が異なりさえすれば、複数の転送先を設定することも可能となります。
まとめると、NAT/IPマスカレードテーブルを設定しなければ、WWWサーバーを公開することもできなければ、IRCやネットワーク対戦型ゲームのようなネットワークアプリケーションを使用することもできません。しかしながら、NAT/IPマスカレードを使用することによってLAN内にあるサーバーマシン以外の特定のコンピュータへの不正なパケットは全て破棄されるために結果的にセキュリティを高めることができるようになります。
3ネットワークモデル(DMZモデル)は外部ネットワークと内部ネットワークの他に非武装セグメント(DMZ)と呼ばれる3つめのネットワークを構成したファイアーウォールシステムのことで、もともとの ファイアーウォールの設計思想ともいえるものです。これは、ファイアーウォールの内側に、隔離された非武装セグメントと呼ばれる社内システムとは別のネットワークを設けて、そこに対外向けの公開サーバーを設置する仕組みのことです。このようなシステムを構築することによって公開サーバーへのアクセスも必ずファイアーウォールを通過することになるためにある程度のフィルタリングも可能となり、仮に公開サーバーへ侵入を許したとしても内部ネットワークとは別の非武装セグメントであるために被害をその範囲内だけに食い止めることができるようになります。
◎大規模DMZモデル図
このような外部からのアクセスを実現するための仕組みは前述の通りDMZ、あるいはフォワーディングとも呼ばれており、IPマスカレードによって確保されるセキュリティとは、明らかに反したものです。フォワーディングはある特定のTCP/UDPポートへのアクセスがあった場合に、あらかじめ指定されているコンピュータのIPアドレスへと転送する方法のことで「 アドレス変換/置換」などとも呼ばれています。あるいは、IPマスカレードに比べて、静的にアドレスを設定するので、「 静的IPマスカレード」と呼んでいるルータもあります。
これとは別にDMZを使用した場合、確かに企業などの大規模なネットワークを構築している場合には社内ネットワークまで被害が及ぶことがないのである程度はセキュリティが確保されていると言えますが、自宅でサーバーを立てる場合にはそんなに何台もコンピュータがあるわけではなく、通常は1台のサーバーマシンを使用していることを考えると、コンピュータがWAN側に直接接続されている(IPマスカレードの保護下から外れる)図式になるために、不正アクセスの対象となる可能性があります。DMZはIPマスカレードのようなプロトコル・ポート番号ごとに転送先を設定できるというものではなく、 TCP/UDPポートを特定することなしに、すべてのアクセスを指定されたIPアドレスのコンピュータへと転送することになるため、セキュリティ上、非常に危険な状態に陥ります。もし、DMZを使用する場合にはセキュリティ面での恩恵は受けられないため、リスクを覚悟の上で、それなりにきちんとした対策を施しておく必要があります。
◎自宅サーバーDMZモデル図
|