|
バリアセグメントとは
ここでのネットワーク設定では、現在のところ、ルータのNAT機能を使って、グローバルIPアドレスとプライベートIPアドレスを変換して、インターネット側とやりとりをしています。クライアントマシンは、IPマスカレードという「1対n」のアドレス変換をしていますが、サーバは「1対1」のアドレス変換をすることで公開することができています。
プライベートIPアドレスを社内LAN側に導入すると、なんとなく安全な気がしてしまいますが、とくに「1対1」の変換では、実際にはグローバルIPアドレスを割り当てられていることとなんら変わりはありません。不正な侵入を防いでいるのは、ルータが持っているフィルタリング機能だけです。クライアントは「1対n」で変換されているため、直接インターネット側から特定することができませんが、かといって安全というわけでもありません。
ルータのNAT機能の場合、社内LAN側にインターネット側からのデータ(パケット)がそのままなだれこんでいます。UNIXマシンがサーバの場合には、そのサーバが侵入されてしまうと、そのサーバを拠点に、社内クライアントマシンへの侵入ができるようになります。WindowsNTがサーバの場合、実際にどのように侵入していくのかを筆者は知りませんが、セキュリティ上危険なネットワーク構成であることは、間違いないでしょう。
問題なのは、
- インターネット側からのパケットが、LAN内に自由に入り込んできてしまう
- LAN側のトラフィックが多くなると、インターネット側のトラフィックを悪くしてしまう
の2つです。トラフィックに関しても気をつけたほうがいいでしょう。LAN側で、AクライアントからBクライアントに大きなデータのコピーをしたりすると、イーサネットの仕組み上、ネットワークの負荷が高くなり、まるで関係のないインターネット側からの接続も悪化します。
こうした問題を解決する手始めが、「バリアセグメント」をネットワーク上に設けることです。「バリアセグメント」というとむずかしそうに思えるかもしれませんが、現在、ひとつしかないネットワークを2つに分け、1台のマシンをその両方に所属させるようにして、橋渡しをさせるようにするだけです。
このとき、クライアント(ともしあれば社内サーバ)が所属する一番内側のネットワークには、プライベートIPアドレスを割り当てます。インターネットとの間にできる中間のネットワーク(バリアセグメント)にはグローバルIPアドレスを割り当てます。
ルータはもちろん、このグローバルIPアドレスを持ったバリアセグメントに属するため、NAT機能を解除し、もとの状態に戻します。そしてプラベートIPアドレスをグローバルIPアドレスへと変換する機能は、両方のネットワークに所属している橋渡しマシンが行なうことになります。
最大の問題は、インターネット側にサービスを提供するサーバ(DNSサーバやWebサーバ、FTPサーバ、メールサーバなど)をどこにおくかですが、ここではバリアセグメントにいったんおくことにします。
この状態は、サーバのセキュリティという点では、ルータのNAT機能を使っている状態と基本的になにも違いはありません。しかし、インターネットサーバの位置や橋渡しの仕組みなどは、非常に複雑に関係していて、ケースバイケースによって設定などが異なってきます。また、各サーバソフトの仕様によっても、設定が違ってきます。管理者の頭を悩ます問題ですが、同時にネットワークを構成する醍醐味でもあります。
まずはシンプルに、「とりあえずバリアセグメントを作る」ところから、始めましょう。バリアセグメントを作れば、社内LAN側のクライアントはかなり安全な状態になります。インターネット側からも、バリアセグメントまでは届きますが、社内LAN側にはほとんど完全に届かなくなります。インターネットサーバのセキュリティは、そのあとでより強化することにしましょう。
WindowsNTにNICを2枚差す
バリアセグメントと社内LAN側の橋渡しをWindowsNTにしてもらうようにする最初の仕事は、当のWindowsNTにネットワークカードをもう1枚装着することです。2枚のネットワークカードのうちの1枚にプライベートIPアドレスを割り当てて、社内LAN側のネットワークに接続します。残りのもう1枚には、グローバルIPアドレスを割り当てて、バリアセグメント側に装着します。
MN128-SOHOにはHUB機能があって、3つのイーサネットポートを持っているため、単純にこのポート側がバリアセグメント側と考えてもいいでしょう。このうちのひとつのポートからのケーブルがWindowsNTの1枚のネットワークカード(グローバルIPアドレス)に接続され、残りの1枚のネットワークカード(プライベートIPアドレス)と社内LAN側のHUBを接続します。もしほかにインターネット側に公開するサーバがあれば、MN128-SOHOの残り2つのイーサネットポートに接続します。
これでネットワークを分割することができます。やってみれば、意外と簡単なことだということがわかるでしょう。さて、問題はこれからです。
WindowsNTに2枚目のネットワークカードのドライバを組み込んで、認識させます。認識に成功するとIPアドレスやデフォルトゲートウェイなどを、1枚目と同様に設定する必要があります。
「コントロールパネル」の「ネットワーク」をダブルクリックして開くと、ネットワークカードに関する設定が表示されていますが、そのカードの名前がプルダウンメニュー形式になっていて、もう1枚のネットワークカードの名前がリストで表示されるようになっています。ここからもう1枚のネットワークカードを選ぶと、IPアドレスやデフォルトゲートウェイなどを独自に設定することができます。
ここでは1枚目のネットワークカードを社内LAN側とし、
| IPアドレス | 「192.168.1.1」 |
| サブネットマスク | 「255.255.255.0」 |
| デフォルトゲートウェイ | 「空欄」 |
とします。

2枚目のネットワークカードは、バリアセグメント側なので、
| IPアドレス | 「210.160.79.98」 |
| サブネットマスク | 「255.255.255.240」 |
| デフォルトゲートウェイ | 「210.160.79.97」 |
とします。デフォルトゲートウェイの「210.160.79.97」はルータのIPアドレスです。

おわかりのように、1枚目のネットワークカードの設定で、デフォルトゲートウェイは「空欄」になっています。2枚(以上)のネットワークカードを装着した場合、ゲートウェイとして設定できるのは、ひとつだけです。
以上でネットワークカードの基本的な設定は、終了です。「DNS」タブや「WINSアドレス」タブ、「DHCPリレー」タブの設定は、2枚のネットワークカードで共通しています。
気をつけなければならないのが、「ルーティング」タブです。ここには、「IP転送を行なう」というチェックだけがありますが、ここをチェックするとそのWindowsNTマシンがルータとして動作するようになってしまいます。

WindowsNTがルータとして動作するようになるとどうなるか、参考までに説明しておきますと、社内LAN側のプライベートIPアドレスを持ったマシンからのパケットは、そのままIPアドレスを書きかえられることなく、バリアセグメントに流れていってしまいます。バリアセグメント内にあるサーバには到達し、その返事のパケットも返ってきます。しかし、ルータを越えてインターネット側には辿り着けません。正確に言うと、出ていって目的のサーバまでには到達します。しかし、プライベートIPアドレスのままのパケットであるため、インターネット側にあるサーバは返す相手がわかりません。結果的に、プライベートIPアドレスのクライアントは、返事を待ったあげく、タイムアウトになります。症状としては、インターネット側に出ていけないような感じがしますが、実態としては、返事が返ってこない状態です。
(ここでの設定では、ルータにフィルタがかけてあり、正規のグローバルIPアドレスからのパケット以外は通さないようになっているため、ルータを乗り越えることがそもそもできないようになっている。)
このあとファイアウォールを導入しますが、delegateなどのプロキシサーバをこのWindowsNTマシン上で動作させる場合には、WindowsNTをルータとして動作させないようにします。したがって「IP転送を行なう」はチェックしません。
最後に、ネットワークの設定で、「バインド」タブをクリックし、ネットワークカードでサポートするプロトコルやサービスを限定しておきます。「バインド」タブを選ぶと、サービスやアダプタ(ネットワークカードなど。リモートアクセスサービスを導入するとそのためのインタフェースもアダプタとして含められる)という区分けで、プロトコルやサービスが関係付けられています。
一番わかりやすいのが、「すべてのアダプタ」欄です。ここには、ネットワークカードの名前ごとに整理されています。このうちバリアセグメント側のネットワークカードを選ぶと、「TCP/IPプロトコル」ほか、インストールされているプロトコルがリストアップされます。中にはバリアセグメント側には不要なプロトコルもあるでしょうから、「無効」にしてしまいましょう。ここの画面では、ネットワークプリンタのために「DLCプロトコル」が組み込んであるため、無効になっています。また、「NetBEUIプロトコル」も無効になっています(NetBEUIはルータを越えることができませんが、不要なパケットは流さないのが賢明です)。「WINSクライアント(TCP/IP)」というのがわかりにくいプロトコルですが、TCP/IPプロトコル上でWindowsネットワークを構成するNetBIOS over TCP/IPのことだと考えていいでしょう。これもできるだけ無効にしてしまいましょう。

ネットワークカードの設定では、ポートごとにフィルタリングする機能がWindowsNTにはあります。ルータのフィルタリング機能に似ていますが、ポート単位で許可・非許可を設定するもので、その方向性までは設定できません。ここでは、あとまわしにします。
|