netsh ipsec static add policy name=ポリシー名
netsh ipsec static add filterlist name=フィルタ・リスト名
netsh ipsec static add filter filterlist=フィルタ・リスト名 srcaddr=any dstaddr=Me protocol=tcp dstport=80
netsh ipsec static add filteraction name=フィルタ動作名 action=block
netsh ipsec static add rule name=ルール名 policy=ポリシー名 filterlist=フィルタ・リスト名 filteraction=フィルタ動作名
netsh ipsec static set policy name=ポリシー名 assign=yes
Windowsパソコンでは,「IPセキュリティ・ポリシー」で割り当てられた規則を基に,IPsecの仕組みを利用して通信を暗号化する機能があります。このポリシーには通信の暗号化以外に,IPフィルタによって着信パケットを選別し対応する操作を実行するといった内容も設定することができます。ポリシーを新たに作成したり変更するには,netshコマンドのipsec staticコンテキストを使います。
具体的には,まず「add policy」で新規にIPsecポリシーを作成します。次に,「add filterlist」でIPフィルタを格納するフィルタ一覧を作成し,続いてIPフィルタを「add filter」でフィルタ一覧に追加します。例えば,HTTPによるあて先TCPポート80の入力に関する設定を追加する場合は以下のように入力します(図1)。
netsh ipsec static add filter filterlist=フィルタ・リスト srcaddr=any dstaddr=Me protocol=tcp dstport=80
さらに「add filteraction」でフィルタ操作を作成した後に,「add rule」でフィルタ一覧とフィルタ操作を組み合わせてIPsecポリシーに追加します。最後に「set policy」を使って,設定したIPsecポリシーをコンピュータに割り当てれば,そのパソコンで設定が有効になります。
なお,IPフィルタやフィルタ操作の設定内容は「show filterlist」(図2)や「show filteraction」で確認できます(図3)。