IPSEC 概述:
什么是IPSEC:网络安全行内的一个标准,不是WINDOWS所独有的,是一个标准。其他操作系统都支持或是能过其他方法也可以实现。WIN是从2000开始支持这个功能的。而且IPSEC是跨平台的。多个系统可以互相使用,不用考虑操作系统的问题。
使用IPSEC关键是一个问题就是你要理解什么是IPSEC策略,你不管希望IPSEC做什么都是通过策略来实现的。IPSEC也可以被用来实现数据加密,认证,不被篡改或不可否定,但都必须要使用策略来实现,每一个策略中又包含了规则,每一个规则中又包含了筛选器,筛选器动作,身份验证方法等。所以大家发现可能在做IPSEC的时候可以需要理解很多东西。的确,如果我们刚刚接触它的时候,可能会发现这个东西有点不好对付,内容太多了,但如果熟悉了,就会发现这是一个好东西。而且还会包含一些防火墙中的一些功能。
基于Windows平台的IPSEC默认情况下已经自带了三个默认策略:
Client(Respond only)、Server (Request Security )、Secure Server (Require Security)。
安全性是依次增强的。也就是说Client最低、Server其次、而Secure Server安全性最高。
如果你懒的去学如何去定制其他策略,可以使用这三个默认策略,也能实现一些相应的要求,但可能不适合你企业的具体场合。
下面咱们不看这三个默认策略,我们来从零开始看一下如何怎么使用IPSEC,如果这个掌握了,那么这三个默认策略对大家来说就是张飞吃豆芽了。
案例:我给大家演示一利用IPSEC禁用协议
利用IPSEC禁用协议:这个功能我们也是经常使用,我们在防火墙中经常使用这个功能,我们不希望别人PING我,因为他一PING就知道我在线对不对。我不希望别人知道。如ping www.sohu.com等,是不通的。那些机器就是不让你ping 他把PING所使用的协议给你禁用了。这通过防火墙可以,通过IPSEC也可以。但为什么禁用,主要是为了加强网络安全,那PING 一下有什么危险的呢。小心别人的死亡之PING,一个PING包是32字节好像,默认一次PING是四个数据包,这对于对方来说没有什么感觉。那如果有多台机器同时PING你,并把数据包改大,不停的PING,也会对服务器来说是一种威胁。所以我们有时候需要禁用PING 而且大于65500就会蓝屏,所以你在PING的时候这个值你不可能改为65500,但这个值对系统来说已经有影响了。如果大于65500立即蓝屏,WINDOWS不会让你设置的。但是可以使用一些软件来实现。如一个数据包的PING小于65500,我制作两个数据包,然后想办法发给对方,对方来进行组合,那么就得到一个大于65500的包,你们有兴趣可以自己去网上找一下相关的软件。
步骤1:网络准备:
环境介绍,此案例用到两台机器,计算机名分别是being和shanghai,并且要保证它们之间的可以ping通。如下图所示:

▲ 网络准备
步骤2: 在上海上启用IPSEC不让别人PING
Shanghai上操作:运行:MMC 文件---添加/删除管理单元 –添加 IP安全策略管理

▲ 添加IPSEC管理单元
可以看到出现了IPSEC的管理界面:

▲IPSEC管理界面
现在咱们不管这三个默认策略,我们从0开始学习怎么使用IPSEC。
开始了,我们在右边的空白处或是左边右键点击“创建IP安全策略”取个形象名字:NOPING

▲ 创建IP安全策略名称
在IPSEC中有一个默认规则,如果没有其他规则可以使用时,那么就使用这个默认规则,我们现在不需要,所以就不选择。

▲ 不用激活,全新设置
再往下就完了问你是否现在编辑它,也可以选择编辑或是创建成功后编辑也可以。
我们来编辑一下:双击打开就好了 可以看到有一个默认规则,我们没有启用,但我们通过这个默认规则可以看到一个规则有哪些元素构成,有筛选器,筛选器动作,身份验证方式,隧道终点等元素组成。也就是说我们在创建一个规则的时候也要考虑这么几点,但有的元素咱们现在用不到!
我们现在来自己创建一个!点击添加。使用向导可以,不使用向导也可以。这个向导做的有点啰嗦,我不太喜欢使用,所以我就不用了。

▲ 手动添加
再往下:大家看到了有两个数据类型:一个是所有ICMP 一个是所有IP通讯。如果我们禁止PING的话,那么就直接选择ICMP协议就可以了。那么在这里我为了给大家说明一下如何掌握IPSEC的使用我就直接创建一个数据类型,不使用IPSEC,我们还是来“添加” 名称:ping 不使用向导。然后需要定义这个数据类型的属性:

▲
源地址:别人的地址,所以选择任何一个IP,目标地址:我的地址
如果也不需要我PING别人可以选择镜像 就其这个例子来说这个镜像不起作用,咱们一会再说。继续向下看:

▲
然后点击确定就可以看到一个筛选器我们就创建成功了。我们选中,点应用 。但会报:没有定义筛选器动作:

▲
所以我们需要定义筛选器动作:也就是允许还是不允许,还是加密允许,我们在此也不使用自还的,也是自己创建一个:点击添加,不使用向导:

▲
选择“阻止” 并在常规中取一个形象的名字:NO
其他的就不用管了。我们来试一下!行还是不行呢:不行。因为没有启用
我们从BEIJING这个机器上来测试一下:

▲ 测试
发现IPSEC很灵活:需要使用就启用,不需要就否,立即生效,
现在我ping不了别人,别人也ping不了我:

▲ 反向测试
但你发现了它报目标主机不可达,报这个提示信息什么意思,这就说明这个数据包根本就没有出去,是不是?
那我希望ping别人,不让别人ping我,那就很简单了,只需要把镜像取消是不是就可以了。试一下:但又发现了报了另一个错误提示:超时,这是怎么了呢!

▲ 取消镜像,再次测试
请大家帮我分析一下为什么了?
因为PING包是一个来回。现在能出去了,但回来的包是不是也使用的是ICMP协议,你给阻止了。所以就其PING来说你勾不勾这个镜像都一样。这就是怎么通过IPSEC来禁用某个协议。
通过IPSEC来限制Ping只是一个比较简单常用的功能,IPSEC还可以用来实现数据的完整性和不可否认性,但限制篇幅,我们以后再做讨论。
