下面使用 IP SEC 實現以下條件的策略:
允許其他人訪問我的WEB服務器,端口TCP(80);允許其他人遠程連接到我的桌面,端口TCP(3389);
允許我打開其他網站,例如 BINGUN.BLOG.51CTO.COM ,需要使用的端口有 UDP(53)TCP(53)TCP(80)
創建策略
1.netsh ipsec static add policy name="My Policy" description="Port accessed policy."
創建兩個過濾器
1.netsh ipsec static add filterlist name="Trust" description="Permit accessed rules."
1.netsh ipsec static add filterlist name="Distrust" description="Block accessed rules."
分別為過濾器創建規則
1.netsh ipsec static add filter filterlist="Trust" srcaddr=any srcport=53 dstaddr=me dstport=0 protocol=udp mirrored=yes description="Permit Any UDP(53) accessed Me UDP(All) ports."
1.netsh ipsec static add filter filterlist="Trust" srcaddr=any srcport=53 dstaddr=me dstport=0 protocol=tcp mirrored=yes description="Permit Any TCP(53) accessed Me TCP(all) ports."
1.netsh ipsec static add filter filterlist="Trust" srcaddr=any srcport=80 dstaddr=me dstport=0 protocol=tcp mirrored=yes description="Permit Any TCP(80) accessed Me TCP(all) ports."
1.netsh ipsec static add filter filterlist="Trust" srcaddr=any srcport=0 dstaddr=me dstport=80 protocol=tcp mirrored=yes description="Permit Any TCP(all) accessed Me TCP(80) ports."
1.netsh ipsec static add filter filterlist="Trust" srcaddr=any srcport=0 dstaddr=me dstport=3389 protocol=tcp mirrored=yes description="Permit Any TCP(all) accessed Me TCP(3389) ports."
1.netsh ipsec static add filter filterlist="Distrust" srcaddr=any srcport=0 dstaddr=me dstport=0 protocol=tcp mirrored=no description="Block Any TCP(all) accessed Me TCP(all) ports."
1.netsh ipsec static add filter filterlist="Distrust" srcaddr=any srcport=0 dstaddr=me dstport=0 protocol=udp mirrored=no description="Block Any(all) accessed Me UDP(all) ports."
創建過濾動作
1.netsh ipsec static add filteraction name="Permit" action=permit
1.netsh ipsec static add filteraction name="Block" action=block
將過濾器與過濾動作關聯
1.netsh ipsec static add rule name="Trusted rules" policy="My Policy" filterlist="Trust" filteraction="Permit"
1.netsh ipsec static add rule name="Distrust rules" policy="My Policy" filterlist="Distrust" filteraction="Block"
啟用和停止策略
1.netsh ipsec static set policy name="My Policy" assign=y
1.netsh ipsec static set policy name="My Policy" assign=n
--------------------------------------------------------------------------------
IP SEC 中的優先級是按所建規則的嚴格程度來區分的,規則越嚴格優先級越高。
==================================================================================
以下是新添加的部分
netsh ipsec static add policy name=mypolicy (建一個安全策略)
netsh ipsec static add filterlist name=myaccess (允許篩選列表)
netsh ipsec static add filterlist name=myrefuse (拒絕篩選列表)
netsh ipsec static add filter filterlist=myaccess……(為myaccess添加一個篩選器)不建篩選器,建規則時會失敗
netsh ipsec static add filter filterlist=myrefuse…… (為myrefuse添加一個篩選器)不建篩選器,建規則時會失敗
netsh ipsec static add filteraction name=ok action=permit (建一個允許篩選操作)
netsh ipsec static add filteraction name=not action=block (建一個拒絕篩選操作)
netsh ipsec static add rule name=允許規則 policy=mypolicy filterlist=myaccess filteraction=ok (建一個規則,並將其添加到mypolicy策略中,並關聯篩選操作)
netsh ipsec static add rule name=拒絕規則 policy=mypolicy filterlist=myrefuse filteraction=not (建一個規則,並將其添加到mypolicy策略中,並關聯篩選操作)
netsh ipsec static set policy name=mypolicy assign=y (激活策略)
netsh ipsec static show policy all(顯示所有安全策略)
netsh ipsec static show policy name=mypolicy(顯示mypolicy安全策略)
netsh ipsec static show policy name=mypolicy level=verbose(顯示mypolicy策略及相關篩選器及篩選操作等相關信息)
netsh ipsec static show filterlist name=myaccess lever=verbose(顯示myaccess篩選列表等相關信息)
netsh ipsec static delete policy name=mypolicy(刪除某個安全策略)
netsh ipsec static delete filterlist name=myaccess(刪除某個篩選器列表)
程序實現,增加列表后然后才執行,每次執行前先刪除現有的規則。