|
![]()
IPsecによる恩恵や機能の詳細については多数のRFCが存在します。IPAセキュリティセンターでは、IPsec関連のRFC日本語訳を掲載しているので、IPsecの詳細について知りたい方はそちらを参照してください。
セキュリティ関連の RFC( Request for Comments )
http://www.ipa.go.jp/security/rfc/RFC.html
Winodws 2000のIPsecは、「ローカルセキュリティ設定」の「ローカル コンピュータのIPセキュリティポリシー」から設定することができます。標準では、以下の3つのポリシーが提供されています。
クライアント(応答のみ)
サーバー(セキュリティが必要)
セキュリティで保護されたサーバー(セキュリティが必要)
これらのポリシーをそのまま利用することも可能ですが、ポリシーをカスタマイズすることで特定のポートに対する接続にはIPsecを要求する、といった運用が可能になります。
認証方法として、Windows 2000では次の認証方法を選択することが可能です。
Kerberos V5プロトコル
証明機関(CA)からの証明書
仮共有キー
Kerberos 認証を利用するには、Active Directory環境、証明書(X.509v3)を利用するには証明機関(CA)が必要となります。スタンドアロンのコンピュータ同士でIPsecを利用する場合は仮共有キーを利用することで手軽にIPsecを利用することが可能です。
仮共有キーを利用する場合、次のレジストリキーに仮共有キーが保存されるので十分セキュリティに注意する必要があります。
IPsecポリシー 仮共有キーの保存場所(ローカル)
HKLM\SOFTWARE\Policies\Microsoft\Windows\IPsec\Policy\Local\ipsecNFA{ID番号 }i\ipsecData
なお、Windows 2000の出荷時のデフォルトでは、暗号化方式としてDESしか利用できないようになっています。より強力なTriple DESを利用するには、マイクロソフトからWindows 2000 High Encryption Packを入手する必要があります。Windows 2000 High Encryption Packを適用したシステムでは、暗号化方式としてTriple DESを利用することができるようになります。
IPsecの通信状態を確認するには、ipsecmon.exeを利用することで、現在のセキュリティ アソシエーション、統計情報などを確認することができます。
![]()
IPsecとあわせて、RRAS(ルーティングとリモートアクセスサービス)のパケットフィルタ機能を利用することでより安全なシステムを構築することが可能です。
IPsecでは、認証が行われたコンピュータとの間でやりとりされるパケットに対し、パケットをフィルタリングする機能は提供されていません。このため、IPsecで認証されたコンピュータに対しての制限を行うには、RRASのパケットフィルタを利用する必要があります。
RRASでは、INPUT、OUTPUT、DIALに対するパケットフィルタリング機能が提供されています。RRASは、Serverに関してはGUIの管理ツールが提供されていますが、Professionalに関してはGUIツールが提供されていません。このため、netsh.exe を使いインターフェイスに対するフィルタリングを構成する必要があります。
RRASのパケットフィルタリングは、netsh.exeを使って制御することが可能です。例えば、netshを使い INPUT フィルタにルールを設定するには、以下のようなコマンドを実行します。
例1) 全てのIPアドレスから172.17.0.1の80/TCP宛てのINPUTパケットルール
netsh routing ip add filter "ローカル エリア接続" input 0.0.0.0 0.0.0.0
172.17.0.1 255.255.255.255 TCP 0 80
例2) 192.168.1.1から172.17.0.1の139/TCP宛てのINPUTパケットルール
netsh routing ip add filter "ローカル エリア接続" input 192.168.1.1
255.255.255.255 172.17.0.1 255.255.255.255 TCP 0 139
例3) 全てのIPアドレスから172.17.0.1宛ての確立済みTCPのINPUTパケットルール(ポートを固定せずに通信を許可する場合)
netsh routing ip add filter "ローカル エリア接続" input 0.0.0.0 0.0.0.0
172.17.0.1 255.255.255.255 TCP-EST 0 0
例4) 全てのIPアドレスから172.17.0.1宛てのICMP(全タイプ)宛てのINPUTパケットルール
netsh routing ip add filter "ローカル エリア接続" input 0.0.0.0 0.0.0.0
172.17.0.1 255.255.255.255 proto=ICMP type=255 code=255
例5) 全てのIPアドレスから172.17.0.1のICMP(Echo Request)宛てのINPUTパケットルール
netsh routing ip add filter "ローカル エリア接続" input 0.0.0.0 0.0.0.0
172.17.0.1 255.255.255.255 proto=ICMP type=8 code=0
![]()
インターフェイスで受信したパケットは、転送(フォワード)か破棄(ドロップ)かを指定することができます。
条件に一致するパケットを除いた全てのパケットを受信する(forward)
netsh routing ip set filter name="インターフェイス名" filtertype=input action=forward
条件に一致するパケットを除いた全てのパケットを破棄する(drop)
netsh routing ip set filter name="インターフェイス名" filtertype=input action=drop