MENU of Routing and Remote Access

私のメモです。参考になればいいですが、間違っていたらごめんなさい。

戯れ言 〜Windows2000でパケットフィルタ?〜
  1. 設定
  2. 注意点

------------------------------------------































Windows2000でパケットフィルタ?

@ITの ページを見ていたら、Windows2000でもパケットフィルタリングができるらしいことを知った。

早速その ページ を参考に設定してみた。

Back to MENU

設定

  1. デフォルト設定の保存
  2. 「スタート」→「ファイルを指定して実行」→cmd(リターン)でコマンドプロンプトを起動。
    起動後、次のコマンドで現在のRRAの設定をバックアップする。
    C:\> netsh dump > {ディレクトリ}\ファイル名

  3. RRASサービスの起動
  4. 「スタート」→「設定」→「コントロールパネル」→「管理ツール」→「サービス」でサービスを起動する。 サービスの「Routing and Remote Access」をダブルクリックして、 「スタートアップの種類」を「自動」に変更。

  5. フィルタリングの確認
  6. オフラインモードで設定する。オフラインでの入り方は下の通り。
    C:\>netsh
    netsh>routing
    routing>ip
    routing ip>

    これでオフラインモードになる。後はコマンドプロンプトrouting ip> の後に 各種設定を加えていけば良い。
    また利用できるコマンド等は「?」をタイプすると見ることが出来る。
    まずはインターフェースの確認。

    routing ip> show interface
    State        Type         Interface
    -------------- -------------- ------------------------
    有効         専用        ローカルエリア接続
    有効         ループバック   ループバック      
    有効         内部        内部

  7. フィルタリングの追加
  8. 「LAN上のPCのIPアドレス以外の接続は、全て拒否。 LAN上のPCからの接続は全て受け付ける」というポリシーでフィルタを作る。
    但し、xxxはLAN上のPCのアドレス、yyyはルーターのアドレスとする。
    僕のPCのネットワーク構成は上の「PCの構成」 を参考のこと。

    routing ip> set filter "ローカル エリア接続" input drop routing ip> add filter "ローカル エリア接続" input 192.168.0.xxx 255.255.255.255 0.0.0.0 0.0.0.0 any
    routing ip> add filter "ローカル エリア接続" input 192.168.0.yyy 255.255.255.255 192.168.0zzz 255.255.255.255 tcp-est 0 0
    routing ip> add filter "ローカル エリア接続" input 0.0.0.0 0.0.0.0 192.168.0zzz 255.255.255.255 tcp-est 0 0

    ※Hotfixやセキュリティアップデートをしているうち、取消線での設定ではtcp-estに ならなくなった(?)。ふつうに考えれば、tcp-estの送信元アドレスはルータではなく インターネット上のホストのため、書き直した方の設定になるべきである。



    さらに、nameserverが使うUDPの53番ポート開ける。この際、接続を許可するのはネームサーバの アドレスにする(アドレスは調べておく必要がある)。

    routing ip> add filter "ローカル エリア接続" input PrimaryNameServer 255.255.255.255 192.168.0.zzz 255.255.255.255 udp 53 0
    routing ip> add filter "ローカル エリア接続" input SecondryNameServer 255.255.255.255 192.168.0.zzz 255.255.255.255 udp 53 0


  9. 確認
  10. ちゃんと設定が反映されているか、下のコマンドで確認する。 特に、デフォルトのルールを設定し忘れないように。 netshでは、フィルタに合致するものはデフォルトと逆の動作をするからである。 そのため、上記の設定でデフォルトの設定(input drop)を忘れると、デフォルトポリシーは 全てを受け付けるため、2〜4行目の設定はdropされる(要するに自分が設定しようとしたことの 逆になる)からである。

    routing ip > show filter "ローカル エリア接続"

    ちゃんと設定されていたら、commitと入れてからnetshを終了する。

Back to MENU

注意点

上記の設定をした際に、注意点が3つある。

  1. ネームサーバ変更の際には設定を変更する
  2. 言うまでも無くISPに割り当てられているネームサーバを使うためである。それに速度が遅くなること もある。
    もちろん、ネームサーバを指定せず53番ポートを開けても良いのだが、下の3のような危険がある

  3. FTPはPASVモードを使用しなくてはならない
  4. ftpはポート20番を使うのだが、上の設定では20番を開けていないからである。 20番を使わない(確か1000番以上のポートをランダムに使う)PASVモードなら問題なくftp可能なので それを使う。

  5. これで完璧では決して無い
  6. Eiji James Yoshida氏 のレポートにあるように、ネームサーバのために53番ポートを開けているからである。Eiji James Yoshida氏 が指摘しているように、ネームサーバを偽ってきた場合にはお手上げである。但し、僕の場合は、 少しでもセキュアになるようにネームサーバを指定している。

    Back to MENU