(已解决)单机:如何才能够快速并有效地禁止(解禁)网络连接?
本帖最后由 user3000 于 2013-8-21 18:26 编辑如题. 就是禁止机器访问网络或解除禁令. (问题补充: 是单机环境上,不考虑路由之类)
要求: 不需要重启机器,无论禁用或解禁应该即时生效,且解禁后随时能够按需要再次禁用.
考虑并尝试了一两天,我自己只发现一个方法有点用....
但其实还不能完全禁止访问网络:比如QQ通讯,QQ游戏倒似乎玩不了了.还有浏览器用IP方式照样能访问网页.
方法在这里,不知道能抛砖引玉否?
(因为有删除注册表的操作,运行代码有一定危险性! 请慎重测试此代码!如果要测试,请注意保存好导出来的注册表文件!或及时运行恢复注册表的代码!双击该文件也能够恢复注册表!)Local $sReg_path = 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip'
Local $sOut_file = @ScriptDir & '\tcpip.reg'
;删除注册表,禁网
RunWait(@ComSpec & ' /c reg export ' &$sReg_path & ' ' & $sOut_file, @SystemDir, @SW_HIDE)
RunWait(@ComSpec & ' /c reg delete ' & $sReg_path & ' /f', @SystemDir, @SW_HIDE)
RunWait(@ComSpec & ' /c gpupdate /force', @SystemDir, @SW_HIDE)
;恢复注册表
RunWait(@ComSpec & ' /c reg import ' & $sOut_file, @SystemDir, @SW_HIDE)
RunWait(@ComSpec & ' /c gpupdate /force', @SystemDir, @SW_HIDE) 本帖最后由 user3000 于 2013-8-21 18:26 编辑
竟然没人帮忙(帮喊一两声的也没有!), 本人运气确实衰衰衰...
不过,自己又想到一个办法, 通过组策略的IP安全策略进行屏蔽.这回确实禁止得很彻底了.
只是花费的时间更多.
CMD建立IP安全策略的命令这里不举出来了,网上可以搜索到.
我是手动做好后导出来的. 这样,在别的机器上直接可导进去,然后设置并启动相关服务,再指定该策略,最后刷新下组策略,万事OK.
Func _start_relating_services()
Local $aServices = ['BFE', 'RpcSs', 'PolicyAgent']
;Base Filtering Engine;Remote Procedure Call (RPC);IPsec Policy Agent
For $i = 0 To 2
RunWait(@ComSpec & ' /c sc config ' & $aServices[$i] & ' start= auto', @SystemDir, @SW_HIDE)
RunWait(@ComSpec & ' /c net start ' & $aServices[$i], @SystemDir, @SW_HIDE)
Next
EndFunc
#cs
'建立一个名字叫XBLUE的安全策略先
netsh ipsec static add policy name=ForbidWAN
'建立一个ip筛选器,指定192.168.1.2
netsh ipsec static add filterlist name=denyip
netsh ipsec static add filter filterlist=denyip srcaddr=ALL dstaddr=Me protocol=ALL
'建立一个筛选器操作
netsh ipsec static add filteraction name=ATION_block action=block
'加入规则到安全策略
netsh ipsec static add rule name=DENYWAN policy=ForbidWAN filterlist=denyip filteraction=ATION_block
把安全策略导出
netsh ipsec static exportpolicy d:\ip.ipsec
删除所有安全策略
netsh ipsec static del all
把安全策略导入
netsh ipsec static importpolicy d:\ip.ipsec
'激活这个策略
netsh ipsec static set policy name=ForbidWAN assign=y
#ce
结帖了. 改dns不是更省事吗?不够就改网关
netsh就行了
页:
[1]