您的位置:首页 > 理论基础 > 计算机网络

一步一步实现企业网络架构之五:利用IPSEC建立安全的网络通讯 推荐

2008-04-16 18:03 866 查看

5.1 Internet协议安全性概述

“Internet 协议安全性 (IPSec)”是一种开放标准的框架结构,通过使用加密的安全服务以确保在 Internet 协议 (IP) 网络上进行保密而安全的通讯。Microsoft® Windows® 2000、Windows XP 和 Windows Server 2003 家族实施 IPSec 基于的是“Internet 工程任务组 (IETF)”IPSec 工作组开发的标准。
IPSec 是安全联网的长期方向。它通过端对端的安全性来提供主动的保护以防止专用网络与 Internet 的攻击。在通信中,只有发送方和接收方才是唯一必须了解 IPSec 保护的计算机。在 Windows XP 和 Windows Server 2003 家族中,IPSec 提供的功能可用于保护工作组、局域网计算机、域客户端和服务器、分支机构(可能在物理上为远程机构)、Extranet 以及漫游客户端之间的通讯。

5.2 IPSEC的工作原理

证书服务工作于应用层,必须依赖于应用程序的支持。而IPSEC工作于网络层,与应用程序无关,也就是说不管是什么样的应用程序,当它的数据通过IP层时都会得得保护。
IPSEC是安全联网的长期方向。它为防止专用网络和 Internet 攻击提供了主要防线。
IPSec 有两个目标:
[align=left]l 保护 IP 数据包的内容。 [/align]
[align=left]l 通过数据包筛选及受信任通讯的实施来防御网络攻击。 [/align]
这两个目标都是通过使用基于加密的保护服务、安全协议与动态密钥管理来实现的。这个基础为专用网络计算机、域、站点、远程站点、Extranet 和拨号用户之间的通信提供了既有力又灵活的保护。它甚至可以用来阻碍特定通讯类型的接收和发送。
尽管基于加密的更强大的安全措施对于完全保护通讯是必需的,但是也大大增加了管理开销。为降低开销,IPSec 采用了基于策略的管理。
IPSec 策略(而不是应用程序接口 (API))用来配置 IPSec 安全服务。这些策略可为多数现有网络中的多数通信类型提供各种级别的保护。
可使用 Microsoft® Windows® XP 和 Windows Server 2003 家族中提供的“IP 安全策略管理”控制台来通过 Active Directory® 为计算机(对于域成员)或在本地计算机(对于不属于域的计算机)上定义 IPSec 策略。
IPSEC的默认策略有:
l Clinet[/b] 要求通信的一方首先不选用IPSec对data进行加密。但如果对方请求加密则启用IPSec的加密。
l Server[/b] 要求通信的一方首先选用IPSec对data进行加密。但如果对方请求不加密则不启用IPSec的加密data。
l Secure server[/b] 通信的双方必须要求采用IPSec的安全通信,传输的data必须要加密。
IPSec 基于端对端的安全模式,在源 IP 和目标 IP 地址之间建立信任和安全性。考虑认为 IP 地址本身没有必要具有标识,但 IP 地址后面的系统必须有一个通过身份验证程序验证过的标识。只有发送和接收的计算机需要知道通讯是安全的。每台计算机都假定进行通讯的媒体不安全,因此在各自的终端上实施安全设置。除非两台计算机之间正在进行防火墙类型的数据包筛选或网络地址转换,否则仅从源向目标路由数据的计算机不要求支持 IPSec。该模式允许为下列企业方案成功部署 IPSec:
[align=left]l 局域网 (LAN)[/b] 客户端/服务器与对等。 [/align]
[align=left]l 广域网 (WAN)[/b] 路由器对路由器以及网关对网关。 [/align]
[align=left]l 远程访问[/b] 拨号客户端以及从专用网络访问 Internet。 [/align]
通常,两端都需要 IPSec 配置(称为 IPSec 策略)来设置选项与安全设置,以允许两个系统对如何保护它们之间的通讯达成协议。

5.3 IPSEC的安全性

在您的组织中部署 IPSec 之前,请考虑下列安全问题:
[align=left]l 3DES 和运行 Microsoft® Windows® 2000 的计算机 [/align]
[align=left]l 身份验证方法 [/align]
[align=left]l 防火墙数据包筛选 [/align]
[align=left]l 受保护的通信[/align]
[align=left]l Diffie-Hellman 小组[/align]
[align=left]l IPSEC的工作模式[/align]

5.3.1 3DES和运行Windows 2000计算机

IPSec 策略允许选择强加密算法 3DES,该算法提供的加密性能强于 DES,具有较高的安全性。运行 Windows 2000 的计算机必须安装“高级加密数据包”或“Service Pack 2”(或更高版本)才能执行 3DES 算法。如果运行 Windows 2000 的计算机接收 3DES 设置,但尚未安装“高度加密包”或“Service Pack 2”(或更高版本),则 3DES 设置将被设置为安全性较低的 DES 以提供一定程度的通信保密,而并非阻止整个通信。但是,如果您的环境中的计算机并不都支持使用 3DES,作为折衷选择,您应该仅使用 DES。运行 Windows XP 和 Windows Server 2003 家族的计算机支持 3DES 且不需要安装“高级加密数据包”。

5.3.2 身份验证方法

如果企业中的计算机是 Active Directory® 域中的一部分,则 IPSec 主模式身份验证可以使用默认的身份验证方法 (Kerberos V5) 完成。不必为 Intranet 通信部署公钥证书。然而,运行 Windows XP Home Edition 的计算机不支持 Kerberos V5 身份验证方法。此外,如果您有连接到 Internet 的计算机,建议不要使用 Kerberos V5 作为身份验证方法。在使用 Kerberos 进行身份验证时,在主模式协商期间,每个 IPSec 对等端都以非加密的格式将其计算机标识发送到另外一台对等端。在主模式协商的身份验证阶段,直至对整个标识负载加密之后,计算机标识才会被加密。攻击者可发送一个“Internet 密钥交换 (IKE)”数据包,该数据包会导致响应的 IPSec 对等端暴露其计算机标识和域成员。因此,为保护连接到 Internet 的计算机,建议使用第二种身份验证方法—证书身份验证。
也可以通过一个预共享密钥来提供第三种身份验证方法。但要获得增强的安全性,不推荐使用预共享密钥身份验证,相对来说它是一种比较弱的身份验证方法。此外,预共享密钥以明文方式存储。预共享密钥的身份验证方法是出于互操作性的目的并遵循 IPSec 标准。建议只将预共享密钥用于测试。

5.3.3 防火墙数据包筛选

对于防火墙、安全网关、路由器或连接到 Internet 并为外围网络(也叫网络隔离区或 DMZ)提供数据包筛选性能的任何其他服务器或设备,必须在该计算机上启用特殊筛选来确保允许将使用 IPSec 保护的数据包转发给该外围网络上的计算机。通常,防火墙或其他设备应该允许下列通信类型通过:
[align=left]l 用于 IPSec 封装式安全措施负载 (ESP) 通信的 IP 协议 ID 50 (0x32)。 [/align]
[align=left]l 用于 IPSec 身份验证报头 (AH) 通信的 IP 协议 ID 51 (0x33)。 [/align]
[align=left]l 用于“Internet 密钥交换 (IKE)”协商通信的 UDP 端口 500 (0x1F4)。 [/align]
大部分数据包筛选软件都允许通过更特定的通信。可为以下内容分别定义单独的数据包筛选器:入站通信(入站筛选器)、出站通信(出站筛选器)和每个接口。此外,还可为外围网络上的 IPSec 计算机指定 IP 地址。

5.3.4 受保护的通信

IPSEC使用AH和ESP来保证传输数据的机密性和真实可靠。
l 身份验证报头 (AH)[/b] 可对整个数据包(IP 报头与数据包中的数据负载)提供身份验证、完整性与抗重播保护。但是它不提供保密性,即它不对数据进行加密。数据可以读取,但是禁止修改。AH 使用加密哈希算法签名数据包以求得完整性。
l 封装式安全措施负载 (ESP)[/b] 不仅为 IP 负载提供身份验证、完整性和抗重播保护,还提供机密性。传输模式中的 ESP 不对整个数据包进行签名。只对 IP 负载(而不对 IP 报头)进行保护。ESP 可以独立使用,也可与 AH 组合使用。
与对每个数据包进行加密与解密相比,验证每个数据包的哈希所消耗的 CPU 相对较少。如果性能问题是主要的考虑事项,则可使用 AH 来保护大部分通信。需要保密时,可使用 ESP。例如,可使用 AH 保护 Intranet 上的通信,使用 ESP 保护通过 Internet 发送的通信。

5.3.5 Diffie-Hellman 小组

Diffie-Hellman (使用 Diffie-Hellman 小组 1、2 或 2048)小组用来确定密钥交换过程中使用的基本素数的长度。组 2048(高)比组 2(中)更强(更安全),而组 2 强于组 1(低)。组 1 提供 768 位的密钥强度;组 2 提供 1,024 位的密钥强度;组 2048 提供 2,048 位的密钥强度。
将强 Diffie-Hellman 小组和较长的密钥长度结合使用可以提高确定密钥的计算难度。
以下是在运用Diffie-Hellman 小组时的一些注意事项:
[align=left]l 为了获得增强的安全性,请不要使用 Diffie-Hellman 小组 1。为获得最佳安全性,请尽可能使用组 2048。当需要保证与 Windows 2000 和 Windows XP 的互操作性时,请使用组 2。 [/align]
[align=left]l Diffie-Hellman 小组 2048 仅随 Windows Server 2003 家族一起提供。 [/align]

5.3.6 IPSEC的工作模式

IPSEC式的工作模式有两种:传输模式和隧道模式。
传输模式是 IPSec 的默认模式,用于进行端对端的通信(例如,用于客户端和服务器之间的通信)。当使用传输模式时,IPSec 只对 IP 负载进行加密。传输模式通过 AH 或 ESP 报头对 IP 负载提供保护。典型的 IP 负载包括 TCP 段(包含 TCP 报头与 TCP 段数据)、一条 UDP 消息(包含 UDP 报头与 UDP 消息数据)以及一条 ICMP 消息(包含 ICMP 报头与 ICMP 消息数据)。
[align=left]使用 IPSec 隧道模式时,IPSec 对 IP 报头和负载进行加密,而传输模式只对 IP 负载进行加密。通过将其当作 AH 或者 ESP 负载,隧道模式提供对整个 IP 数据包的保护。使用隧道模式时,会通过 AH 或 ESP 报头与其他 IP 报头来封装整个 IP 数据包。外部 IP 报头的 IP 地址是隧道终结点,封装的 IP 报头的 IP 地址是最终源地址与目标地址。[/align]
[align=left]IPSec 隧道模式对于保护不同网络之间的通信(当通信必须经过中间的不受信任的网络时)十分有用。隧道模式主要用来与不支持 L2TP/IPSec 或 PPTP 连接的网关或终端系统进行相互操作。可以在下列配置中使用隧道模式:[/align]
[align=left]l 网关到网关 [/align]
[align=left]l 服务器到网关 [/align]
[align=left]l 服务器到服务器 [/align]

5.4 IPSEC的配置

5.4.1 企业背景

你的公司正在制订一项包括业务伙伴在内的规划。有关这项规划的工作要求极其保密。你的业务伙伴将利用Internet访问你的服务器上的某些数据。你必须确保你公司的计算机和你的业务伙伴计算机之间的所有网络数据流通都加密进行。
作为公司的网络管理员,你将采用IPSEC为跨越Internet的通信提供安全的保护(在这里我们将要通信的计算机名分别命名为HOSTA和HOSTB)。
本次配置通过保护FTP通信的安全为例讲解IPSec的使用方法。

5.4.2 配置步骤

l 没有IPSEC保护下的FTP通信
l 在IPSEC保护下的FTP通信

5.4.2.1 没有IPSEC保护下的FTP通信

[align=left]1、客户端需要从服务器上下载一些有关turboc2的资源,所以管理员首先在服务器上为之创建了一个FTP站点。如下图所示:[/align]



[align=left]2、客户端通过网络访问创建的FTP站点。如下图所示:[/align]



[align=left]3、以下是通过网络监视器捕捉到的网络流量。[/align]
[align=left][/align]



[align=left]4、由捕获的流量中我们可以清楚的看到FTP通信时的用户名和口令,所以没有IPSEC保护下的FTP通信是不安全的。[/align]

5.4.2.2 在IPSEC保护下的FTP通信

[align=left]1、登录到HOSTA,单击“开始”,然后单击“运行”按钮,在运行中输入“MMC”,打开微软管理控制台,最大化控制台根窗口。[/align]
[align=left]2、在控制台1的单中,单击“添加/删除插件”。[/align]

[align=left][/align]


[align=left]3、在“添加/删除插件”对话框中,单击“添加”按钮。[/align]
[align=left]4、在对话框中,确认选择“IP安全策略管理”,单击“添加”并选择“本地计算机”按默认设置完成IPSEC的添加。[/align]



[align=left]5、IPSEC启动后,会打开一个管理控制台,里面有一些预定义的策略。[/align]



6、右击“IP安全策略”,选择“管理IP筛选器表和筛选器操作”。



7、在这里我们创建一个新的针对FTP访问的IP筛选器,其源地址为“任何地址”,目标地址为“本地IP”,端口号分别为20和21。如下图所示:



8、在控制台树中,右键单击“本地计算机上的安全性策略”,再单击“创建IP安全策略”,进入“IP安全策略向导”。



9、我们创建一个新的IP安全策略取名为“安全FTP通信”,如下图所示:



10、在“安全FTP通信属性”中点击“添加”,进入IP安全规则向导。



11、在“IP筛选器列表”中选择我们刚才创建的筛选器“安全FTP访问”。



12、然后在“筛选器操作”中选择“请求安全(可选)”,并编辑其措施为“协商安全”。在身份验证方法台选择“预共享密钥”,并设置密钥为“123456”。结果如下图所示:



13、完成创建后,还需指派这个策略。如下图所示。



14、同样的方法,在客户端也要创建一个用于FTP通信的策略,并指派。下图为客户端创建的IP策略器,其方向源为客户端和目标为FTP服务器。



15、双方指定IPSEC策略后再进行FTP通信。以下是通过网络监视器捕获量双方通信流量,可见不再看到通信的用户名和口令,全部是ESP加密的包。可见IPSEC可以保护网络通信的安全。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息