命令行下IPSec封锁端口的方法详解

发布时间:2021-01-02编辑:脚本学堂
本文介绍下,在命令行使用ipsec封锁端口的方法,有需要的朋友,参考下吧。

2000下 ipsecpol实例

关于ipsecpol和ipseccmd的资料,网上可以找到很多,因此本文就不细说了,只是列举一些实用的例子。

在设置IPSec策略方面,ipseccmd命令的语法和ipsecpol几乎完全一样,所以只以ipsecpol为例:

1,防御rpc-dcom攻击
 

复制代码 代码示例:
ipsecpol -p myfirewall -r rpc-dcom -f *+0:135:tcp *+0:135:udp *+0:137:udp *+0:138:udp *+0:139:tcp *+0:445:tcp *+0:445:udp -n BLOCK -w reg -x

关闭了本地主机的TCP135,139,445和udp135,137,138,445端口。

具体含义如下:
-p myfirewall 指定策略名为myfirewall
-r rpc-dcom 指定规则名为rpc-dcom
-f …… 建立7个筛选器。*表示任何地址(源);0表示本机地址(目标);+表示镜像(双向)筛选。详细语法见ipsecpol -?
-n BLOCK 指定筛选x作是“阻塞”。注意,BLOCK必须是大写。
-w reg 将配置写入注册表,重启后仍有效。
-x 立刻激活该策略。

2,防止被ping
 

复制代码 代码示例:
ipsecpol -p myfirewall -r antiping -f *+0::icmp -n BLOCK -w reg -x

如果名为myfirewall的策略已存在,则antiping规则将添加至其中。

注意,该规则同时也阻止了该主机ping别人。

3,对后门进行IP限制
假设,在某主机上安装了DameWare Mini Remote Control。
为了保护它不被别人暴破密码或溢出,应该限制对其服务端口6129的访问。
 

复制代码 代码示例:
ipsecpol -p myfw -r dwmrc_block_all -f *+0:6129:tcp -n BLOCK -w reg
ipsecpol -p myfw -r dwmrc_pass_me -f 123.45.67.89+0:6129:tcp -n PASS -w reg -x

这样就只有123.45.67.89可以访问该主机的6129端口了。

如果是动态IP,应该根据IP分配的范围设置规则。比如:
 

复制代码 代码示例:
ipsecpol -p myfw -r dwmrc_block_all -f *+0:6129:tcp -n BLOCK -w reg
ipsecpol -p myfw -r dwmrc_pass_me -f 123.45.67.*+0:6129:tcp -n PASS -w reg -x

这样就允许123.45.67.1至123.45.67.254的IP访问6129端口。

在写规则时,应该特别小心,不要把自己也阻塞了。
如果不确定某个规则的效果是否和预想的一样,可以先用计划任务“留下后路”。例如:
 

复制代码 代码示例:
c:>net start schedule
Task Scheduler 服务正在启动 ..
Task Scheduler 服务已经启动成功。
c:>time /t
12:34
c:>at 12:39 ipsecpol -p myfw -y -w reg

新加了一项作业,其作业 ID = 1

然后,有5分钟时间设置一个myfw策略并测试它。5分钟后计划任务将停止该策略。

如果测试结果不理想,就删除该策略。
 

复制代码 代码示例:
c:>ipsecpol -p myfw -o -w reg

注意,删除策略前必须先确保它已停止。不停止它的话,即使删除也会在一段时间内继续生效。持续时间取决于策略的刷新时间,默认是180分钟。

如果测试通过,那么就启用它。
 

复制代码 代码示例:
c:>ipsecpol -p myfw -x -w reg

最后说一下查看IPSec策略的办法。

对于XP很简单,一条命令搞定——ipseccmd show filters

而ipsecpol没有查询的功能。需要再用一个命令行工具netdiag。
它位于2000系统安装盘的SUPPORTTOOLSSUPPORT.CAB中。

netdiag需要RemoteRegistry服务的支持。所以先启动该服务:
 

复制代码 代码示例:
net start remoteregistry

不启动RemoteRegistry就会得到一个错误:
 

复制代码 代码示例:
[FATAL] Failed to get system information of this machine.

netdiag这个工具功能十分强大,与网络有关的信息都可以获取!不过,输出的信息有时过于详细,超过命令行控制台cmd.exe的输出缓存,而不是每个远程cmd shell都可以用linuxjishu/14001.html target=_blank class=infotextkey>more命令来分页的。

查看ipsec策略的命令是:
 

复制代码 代码示例:
netdiag /debug /test:ipsec

然后是一长串输出信息。IPSec策略位于最后。

就介绍这些吧,有关ipsec的相关内容,还是很有用的,可以结合防火墙一起使用,效果更佳。