分享
 
 
 

命令行IPSEC封锁端口

王朝other·作者佚名  2006-04-12
窄屏简体版  字體: |||超大  

IPSec

首先需要指出的是,IPSec和TCP/IP筛选是不同的东西,大家不要混淆了。TCP/IP筛选的功能十分有限,远不如IPSec灵活和强大。下面就说说如何在命令行下控制IPSec。

XP系统用ipseccmd。

2000下用ipsecpol。

WIN2003下直接就是IPSEC命令。遗憾的是,它们都不是系统自带的。ipseccmd在xp系统安装盘的SUPPORT\TOOLS\SUPPORT.CAB中,ipsecpol在2000 Resource Kit里。而且,要使用ipsecpol还必须带上另外两个文件:ipsecutil.dll和text2pol.dll。三个文件一共119KB。

winxp命令行下ipsec屏蔽不安全的端口 点此下载IPSECCMD

IPSec叫做Internet协议安全。主要的作用是通过设置IPsec规则,提供网络数据

包的加密和认证。不过这样高级的功能我无缘消受,只是用到了筛选功能罢了。通过设置规则进行数据包的筛选器,可以屏蔽不安全的端口连接。

你可以运行gpedit.msc,在Windows设置>>计算机设置>>IP安全设置中进行手工设

置。更加简单的方法是使用ipseccmd命令。

ipseccmd在WindowsXP中没有默认安装,他在XP系统安装盘的

SUPPORT\TOOLS\SUPPORT.CAB中。在Windows2000中它的名字叫做ipsecpol,默认

应该也没有安装,你自己找找看吧。

使用ipseccmd设置筛选,它的主要作用是设置你的筛选规则,为它指定一个名称,

同时指定一个策略名称,所谓策略不过是一组筛选规则的集合而已。比如你要封

闭TCP135端口的数据双向收发,使用命令:

ipseccmd -w REG -p "Block default ports" -r "Block TCP/135" -f *+0:135:TCP -n BLOCK -x

这里我们使用的是静态模式,常用的参数如下:

-w reg 表明将配置写入注册表,重启后仍有效。

-p 指定策略名称,如果名称存在,则将该规则加入此策略,否则创建一个。

-r 指定规则名称。

-n 指定操作,可以是BLOCK、PASS或者INPASS,必须大写。

-x 激活该策略。

-y 使之无效。

-o 删除-p指定的策略。

其中最关键的是-f。它用来设置你的过滤规则,格式为

A.B.C.D/mask:port=A.B.C.D/mask:port:protocol。其中=前面的是源地址,后面

是目的地址。如果使用+,则表明此规则是双向的。IP地址中用*代表任何IP地址,

0代表我自己的IP地址。还可以使用通配符,比如144.92.*.* 等效于

144.92.0.0/255.255.0.0。使用ipseccmd /?可以获得它的帮助。

如果希望将规则删除,需要先使用-y使之无效,否则删除后它还会持续一段时间。

附件中的blockport.bat是我的一个示例程序,你可以将它作为参考修改使用。

好了,这样你就可以使用ipsec根据自己的需要方便得自己定制你的筛选规则了。

如果有不安全的端口,或者你不太喜欢的IP地址,你就可以把它们封锁在你的大

门之外。

现在,你的机器本身已经基本比较安全了,不必再一接上网线就提心吊胆了。今天

天气还不错,赶快放心大胆的去网上冲浪去吧,海岸上有漂亮的贝壳,不要忘了

捡几颗送给我哦。

[代码清单]

@ echo off

rem

rem blockport.bat

rem Spirituel@SMTH

rem

rem This file use the IPsec filters to block default ports of Windows.

rem It can work on Windows 2003 and Windows XP system if there is ipseccmd command on it.

rem It can also work on Windows2000, if you chang "ipseccmd" to "ipsecpol" when ipsecpol command could work well.

rem You can customize your own policy easily.

rem please refer to README.txt for more details.

rem NOTICE: NO WARRANTY totally. Please use it carefully.

rem

rem

rem

echo [Usage] blockport [ -o or -y ]

echo set policy of filter rules and and enable them without parameter.

echo -y parameter to make the policy inactive.

echo -o parameter to disable and delete the policy.

if "%1"=="-y" goto :inactive

if "%1"=="-o" goto :delete

@ echo on

ipseccmd -w REG -p "Block default ports" -y

ipseccmd -w REG -p "Block default ports" -o

ipseccmd -w REG -p "Block default ports" -r "Block TCP/135" -f *+0:135:TCP -n BLOCK

ipseccmd -w REG -p "Block default ports" -r "Block TCP/139" -f *+0:139:TCP -n BLOCK

ipseccmd -w REG -p "Block default ports" -r "Block TCP/445" -f *+0:445:TCP -n BLOCK

ipseccmd -w REG -p "Block default ports" -r "Block UDP/123" -f *+0:123:UDP -n BLOCK

ipseccmd -w REG -p "Block default ports" -r "Block UDP/135" -f *+0:135:UDP -n BLOCK

ipseccmd -w REG -p "Block default ports" -r "Block UDP/137" -f *+0:137:UDP -n BLOCK

ipseccmd -w REG -p "Block default ports" -r "Block UDP/138" -f *+0:138:UDP -n BLOCK

ipseccmd -w REG -p "Block default ports" -r "Block UDP/139" -f *+0:139:UDP -n BLOCK

ipseccmd -w REG -p "Block default ports" -r "Block UDP/445" -f *+0:445:UDP -n BLOCK

@ rem ipseccmd -w REG -p "Block default ports" -r "Block ping" -f 0+*::ICMP -n BLOCK

ipseccmd -w REG -p "Block default ports" -x

@ goto :end

∶inactive

@ echo on

ipseccmd -w REG -p "Block default ports" -y

@ goto :end

∶delete

@ echo on

ipseccmd -w REG -p "Block default ports" -y

ipseccmd -w REG -p "Block default ports" -o

∶end

@ echo off

pause

IPSec可以通过组策略来控制,但我找遍MSDN,也没有找到相应的安全模板的语法。已经配置好的IPSec策略也不能被导出为模板。所以,组策略这条路走不通。IPSec的设置保存在注册表中(HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\IPSec\Policy\Local),理论上可以通过修改注册表来配置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系统安装盘的SUPPORT\TOOLS\SUPPORT.CAB中。(已经上传了三个文件,也就不在乎多一个了。^_^)

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

net start remoteregistry

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

[FATAL] Failed to get system information of this machine.

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

查看ipsec策略的命令是:

netdiag /debug /test:ipsec

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

转:http://www.zjahzz.com/blog/article.asp?id=99

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有