Internet 协议安全.docx
《Internet 协议安全.docx》由会员分享,可在线阅读,更多相关《Internet 协议安全.docx(33页珍藏版)》请在冰豆网上搜索。
Internet协议安全
Internet协议安全(IPSec)循序渐进指南
Internet协议安全(IPSec)为IP网络通信提供对应用程序透明的加密服务,并为Windows®2000操作系统提供其它网络访问保护。
本指南专门讲述使用IPSec传输模式保护客户机和服务器之间的应用程序通信的最快速的方法。
它讲述了如何使用IPSec默认策略,在属于一个Windows2000域的两个基于Windows2000的系统之间实现安全的方法。
一旦两台计算机加入了该域中,您就应完成指南的第一部分,它在30分钟或更少的时间内演示默认策略。
还带有一些备注,说明如何使非IPSec客户机能与服务器通信。
还提供了一些步骤说明当Windows2000域不可用时如何使用证书,以及如何建立您自己的自定义策略以便进行更进一步的互操作性测试,或示范IPSec。
内容
1、引言
2、先决条件
3、为测试作准备
4、使用内置的IPSec策略
5、建立自定义IPSec策略
6、测试自定义IPSec策略
7、使用证书验证身份
8、了解IKE协商(高级用户)
9、故障排除
10、其它信息
11、相关链接
引言
通过使用Internet协议安全(IPSec),您可以以下列方案为网络通信提供数据保密性、完整性、真实性和反重播保护:
∙使用IPSec传输模式提供客户机到服务器、服务器到服务器和客户机到客户机之间的端对端安全。
∙使用受IPSec保护的第二层隧道协议(L2TP)保护从客户机到网关在Internet上的远程访问的安全。
IPSec提供跨外向专用广域网(WAN)的安全的网关到网关的连接或使用L2TP/IPSec隧道或纯IPSec隧道模式提供基于Internet的连接。
IPSec隧道模式不是为用于虚拟专用网络(VPN)远程访问而设计的。
Windows®2000Server操作系统通过Windows2000IP安全简化了网络安全的部署和管理,Windows2000IP安全是一种可靠的IP安全(IPSec)的版本。
IPSec是由Internet工程任务组(IETF)作为用于Internet协议(IP)的安全体系结构而设计,它定义了IP数据包格式和相关基础结构,以便为网络通信提供端对端、加强的身份验证、完整性、反重播和(可选)保密性。
使用IETF定义的Internet密钥交换(IKE),RFC2409,还提供按需要的安全协商和自动密钥管理服务。
Windows2000中的IPSec和相关的服务是由Microsoft和CiscoSystems,Inc共同开发的。
Windows2000IP安全通过与Windows2000域和ActiveDirectoryTM服务集成,建立于IETFIPSec体系结构之上。
ActiveDirectory使用组策略为Windows2000域成员提供IPSec策略分配和分发,提供基于策略的、支持目录的网络。
IKE的实现提供三个基于IETF标准的身份验证方法以在计算机之间建立信任:
∙基于Windows2000域基础结构提供的Kerberosv5.0身份验证,用于在一个域中或在几个受信任域中的计算机之间部署安全通讯。
∙使用证书的公钥/私钥签名,与多个证书系统兼容,包括Microsoft、Entrust、VeriSign和Netscape。
∙密码,用术语表示为“预先共享的身份验证密钥”,严格用于建立信任-不用于应用程序数据包保护。
一旦对等计算机互相进行了身份验证,它们就会产生大量密钥以便对应用程序数据包加密。
这些密钥只为这两台计算机所知,因此它们的数据能得到很好的保护,免受可能在网络上的攻击者的修改或破译。
每一台对等计算机都使用IKE来协商使用什么类型和强度的密钥,以及采用什么安全方式来保护应用程序通讯。
这些密钥根据IPSec策略设置自动刷新以在管理员的控制下提供恒定的保护。
使用IPSec端对端的方案
Windows2000中的Internet协议安全(IPSec)是由网络管理员来部署的,以使用户的应用程序数据可以透明地得到保护。
在任何场合,使用Kerberos身份验证和域信任都是进行部署最容易的选择。
证书或预先共享的密钥可用于不受信任的域或第三方互操作中。
您可以使用组策略来向许多客户机和服务器提供IPSec配置(名为“IPSec策略”)。
安全服务器
用于所有单播IP通信的IPSec安全或者是“请求的但可选的”,或者是“请求的且必需的”,具体采用哪种方式由管理员在配置服务器时决定。
使用这种模式,客户机只需要一个如何响应从服务器发出的安全请求的默认策略。
一旦在客户机和服务器之间建立了IPSec安全关联(每个方向一个),这些关联在它们之间发送完最后一个数据包之后1小时仍保持有效。
在1小时之后,客户机清除安全关联并返回到初始的“只响应”状态。
如果客户机再一次向同一服务器发送没有安全措施的数据包,那么该服务器将重新建立IPSec安全。
这是最容易采取的方法,只要应用程序发送到服务器的第一个数据包不包含敏感数据,并且允许服务器从客户机接收没有安全措施的、明文数据包,就可以安全地使用这种方法。
注意这种服务器端的配置只适用于内部网络服务器,因为IPSec策略配置的服务器允许传入的、明文、没有安全措施的数据包。
如果服务器放在Internet上,那么决不能有这种配置。
利用服务器接收不安全的传入的包的能力,会有一些服务攻击,而使用这种配置,就存在不能拒绝这些服务器攻击的可能性。
锁定的服务器
如果服务器可从Internet直接访问,或如果第一个客户机数据包包含敏感数据,那么客户机必须接收IPSec策略,这样当它尝试向服务器发送数据时它就请求IPSec安全以便进行通信。
本指南将不讲述这种配置,但使用节ConfigureanIPSecFilterAction
<讲述的步骤可很容易地实现这种配置。
客户机和服务器可以有具体规则以便允许、闭锁或只保护某些网络数据包(协议或端口特定的)安全。
这种方法更难配置并且容易发生错误,因为它要求对应用程序可以发送和接收的网络通信的类型有深入的了解,还要求管理协调以确保所有客户机和服务器都有兼容的策略。
先决条件
本指南可作为网络和系统管理员理解和掌握Windows2000IPSec工作原理的实验。
您可以在每一台计算机本地配置IP安全策略,然后实施这种策略并测试结果以看到安全的网络通信。
为完成本指南,您需要准备下列硬件:
∙两台运行Windows2000操作系统的计算机。
您可以使用两台Windows2000Professional系统作为域成员,在IPSec安全模式中,其中一台充当客户机,另一台充当服务器。
两个测试系统必须是同一(或受信任)域的成员。
∙Windows2000Server域控制器。
∙连接这三台计算机的LAN或WAN。
本指南采用的公用基础结构在“Windows2000Server部署中的公用基础结构循序渐进”中讲述。
(第一部分
<和第二部分
<
高级部分要求与证书颁发机构(CA)服务器联系的能力。
如果您需要在网络上安装CA服务器,请参见StepbyStepGuidetoSettingUpaCertificateAuthority
<
如果您有与MIT兼容的Kerberosv5服务器并希望使用该Kerberos信任测试Windows2000IPSec,请参见Step-by-StepGuidetoKerberos5Interoperability
<
您必须有两个域成员使用内置策略,因为它们要求域控制器提供的Kerberos身份验证。
您还可以使用IP安全,而不必有两台计算机作为域成员。
为此,请参见建立自定义策略部分。
在完成本指南之后,您将能:
∙使用内置IPSec策略。
∙创建您自己的IPSec策略。
∙检查IP安全的状态。
收集信息
您还需要两台测试用计算机的下列信息:
∙您的主机名称(右击桌面上的我的电脑图标,单击属性,然后单击网络标识选项卡。
)
∙您的IP地址(单击开始,单击运行,键入cmd,然后单击确定。
在命令提示符下键入ipconfig并按Enter。
在检索到IP地址之后,键入exit并按Enter。
为测试作准备
创建自定义控制台
以具有管理特权的用户身份登录到第一台测试用计算机。
在本例中,这是名为HQ-RES-WRK-01的计算机。
备注在本文档的其余部分,HQ-RES-WRK-01指第一台测试用计算机,HQ-RES-WRK-02指第二台测试用计算机。
如果您的计算机的名称不同,一定要使用适当的名称沿步骤进行。
创建自定义MMC控制台
1.从Windows桌面,单击开始,单击运行,然后在打开文本框中键入mmc。
单击确定。
2.在控制台菜单上,单击添加/删除管理单元。
3.在添加/删除管理单元对话框中,单击添加。
4.在添加独立管理单元对话框中,单击计算机管理,然后单击添加。
5.验证已选中了本地计算机,然后单击完成。
6.在添加独立管理单元对话框中,单击组策略,然后单击添加。
7.验证已在组策略对象对话框中选中了本地计算机,然后单击完成。
8.在添加独立管理单元对话框中,单击证书,然后单击添加。
9.选择计算机帐户,然后单击下一步。
10.验证已选中了本地计算机,然后单击完成。
11.若要关闭添加独立管理单元对话框,单击关闭。
12.若要关闭添加/删除管理单元对话框,单击确定。
为计算机启用审核策略
在下面的步骤中,您将配置审核,以便当IPSec参与到通信中时记录事件。
以后,这将是确认IPSec工作正常的有用的证明。
启用审核策略
1.在MMC控制台上,从左窗格选择本地计算机策略并单击+以展开该树。
浏览到计算机配置,到Windows设置,再到安全设置,然后再到本地策略,选择审核策略。
图1浏览到IPSec控制台中的“审核策略”
2.从右窗格显示的属性列表中,双击审核登录事件。
审核登录事件对话框出现。
3.在审核登录事件对话框中,单击以选择审核这些操作:
成功和失败复选框,然后单击确定。
4.对审核对象访问属性重复步骤2和3。
配置IP安全监视器
要监视IPSec策略将建立的成功的安全连接,使用“IP安全监视器”工具。
在创建任何策略之前,首先要启动和配置该工具。
启动和配置IP安全监视器
1.要启动“IP安全监视器”工具,单击开始,单击运行,然后在打开文本框中键入ipsecmon。
单击确定。
2.在“IP安全监视器”工具中单击选项,然后将刷新秒数的默认值从15更改为1。
单击确定。
3.将IP安全监视器窗口最小化。
在本指南的稍后部分您将使用此最小化的工具监视策略。
返回到本节的开始,为第二台计算机创建自定义控制台并重复此前的所有步骤(在本例中,这是名为HQ-RES-WRK-02的计算机)。
使用内置IPSec策略
在本练习中,您将激活其中一个内置IPSec策略以保护两台计算机之间的通信安全。
默认策略使用Kerberos作为初始身份验证方法。
因为两台计算机都是一个Windows2000域的成员,所以需要最小量的配置。
在HQ-RES-WRK-01上激活策略:
1.在您在前面创建的MMC控制台上,从左窗格选择本地计算机上的IP安全策略。
在右窗格中有三个项目:
客户机、安全服务器和服务器。
2.右击安全服务器,然后选择指派。
策略已指派列中的状态应从否变为是。
3.在HQ-RES-WRK-02上重复步骤1。
右击客户机,然后选择指派。
策略已指派列中的状态应从否变为是。
现在您已有一台计算机(HQ-RES-WRK-01)充当安全服务器,而另一台(HQ-RES-WRK-02)充当客户机。
客户机开始时向服务器发送无保护措施的ICMPEcho数据包(使用ping工具),但服务器将从客户机请求安全,在此之后其余的通信都将是安全的。
如果服务器准备启动ping,那么在服务器在网络上允许之前,ping必须对于客户机来说是安全的。
如果客户计算机也同样有安全服务器策略,那么它就不会发送无保护措施的ping或任何其它通信,相反,它将在发送任何应用程序数据之前请求IPSec保护。
如果两台计算机都有客户机策略,则没有数据会得到保护,原因是两端都不请求安全。
4.在HQ-RES-WRK-02上,单击开始,单击运行,在文本框中键入cmd,然后单击确定。
键入pingIP1(HQ-RES-WRK-01的IP地址),在本例中IP1是10.10.1.5。
如下面的图2所示,ping响应将指出正在协商IPSec。
图2Ping指出IP安全协商
5.还原您以前将其最小化的IP安全监视器窗口。
您应看到当前在两台计算机之间使用的安全关联的细节以及传输的已验证的和保密的字节数的统计信息。
6.重复ping命令。
既然两台计算机在它们之间建立了IPSec安全关联,您应接收到四个成功的答复,如下面图3所示。
在本例中,IP1是10.10.1.5。
图3成功的ping答复
7.仍在HQ-RES-WRK-02上继续,从MMC的左窗格,单击计算机管理旁边的+将其展开,然后展开系统工具,展开事件查看器,然后单击安全日志。
在右窗格中双击成功审核最上面的实例。
8.您应看到成功建立了IPSec安全关联(SA)。
使用滚动条以查看整个说明。
应看到类似于下面的代码示例(计算机名和IP地址可能有所不同,这取决于您的配置):
IKEsecurityassociationestablished
Mode:
DataProtectionMode(QuickMode)
PeerIdentity:
KerberosbasedIdentity:
hq-res-wrk-01$@RESKIT.COM
PeerIPAddress:
10.10.1.5
Filter:
SourceIPAddress10.10.1.6
SourceIPAddressMask255.255.255.255
DestinationIPAddress10.10.1.5
DestinationIPAddressMask255.255.255.255
Protocol0
SourcePort0
DestinationPort0
Parameters:
ESPAlgorithmDESCBC
HMACAlgorithmSHA
AHAlgorithmNone
EncapsulationTransportMode
InboundSpi1128617882
OutBountSpi865899841
Lifetime(sec)900
Lifetime(kb)100000
您已经成功地在两台计算机之间配置和使用了IP安全。
安全服务器策略对计算机的影响
只有能成功地协商的IPSec客户机才能与安全服务器计算机通信。
另外,安全服务器也不能够与任何其它系统通信,如域名系统(DNS)服务器,除非该通信也可以使用IPSec来保护其安全。
因为许多服务都在服务器的后台运行,所以它们可能无法通信和生成事件日志消息。
这是正常的,因为默认安全服务器策略是非常严格的,在允许IP数据包进入网络之前会尝试保护几乎所有的IP数据包。
为在生产环境中实际使用,您必须根据安全性要求、网络拓扑和具体的服务器应用程序使用情况,创建能执行您所需要的操作的自定义策略。
允许非IPSec客户机与服务器通信
要允许非IPSec客户机同样能够通信,您应指派服务器策略,代替安全服务器。
这总是请求安全,但允许与客户机进行无安全措施的通信,如果客户机不响应IKE协商请求,则回到明文。
如果任何时候客户机都答复,那么协商在进行中并必须完全成功。
如果协商失败,通信将被闭锁一分钟,于是将尝试另一个协商。
有关用来控制此操作的设置的详细的讲述,参见“配置IPSec筛选器操作”一节。
通过右击右窗格中的策略(在左窗格中的本地计算机上的IP安全策略下面),然后单击撤消指派,撤消安全服务器或服务器和客户机策略,以将计算机返回到它们以前的状态。
建立自定义IPSec策略
在上一节,您使用了其中一个内置IPSec策略,来保护两个域成员之间的通信安全。
如果您想保护不是域成员的两台计算机之间的通信安全,则必须创建自定义策略,因为内置策略要求域控制器提供的Kerberos身份验证。
创建自定义策略还有其它一些理由,例如,如果您想基于网络地址保护通信安全。
在本节,您将创建自定义IPSec策略,首先要定义安全规则,然后再定义筛选器列表,最后指定筛选器操作。
配置IPSec策略
在配置IPSec身份验证方法、筛选器列表或协商方法之前,您必须首先创建新策略。
创建IPSec策略
1.使用HQ-RES-WRK-01,在MMC控制台的左窗格中,右击本地计算机上的IP安全策略,然后单击创建IP安全策略。
IP安全策略向导出现。
2.单击下一步。
3.键入Partner作为策略的名称,然后单击下一步。
4.清除激活默认响应规则复选框,然后单击下一步。
5.确保选中了编辑属性复选框(这是默认值),然后单击完成。
6.在您刚刚创建的策略的属性对话框中,确保选中了右下角的使用“添加向导”复选框,然后单击添加以启动安全规则向导。
7.单击下一步以按照您在上一节结束时启动的安全规则向导的步骤继续执行。
8.选择此规则不指定隧道(在默认情况下已选择),然后单击下一步。
9.选择所有网络连接单选按钮(在默认情况下已选择),然后单击下一步。
配置IKE身份验证方法
接下来您指定计算机如何互相信任,指定当它们尝试建立安全关联时,它们如何验证自己的身份,或互相证明自己的身份。
用于Windows2000的IKE提供三个身份验证方法,来在计算机之间建立信任:
∙Windows2000域提供的Kerberosv5身份验证作为Kerberosv5密钥分发中心(KDC)。
如果Windows2000计算机是一个域的成员或跨受信任域的成员,那么它在Windows2000计算机之间很容易部署安全通信。
IKE只使用Kerberos的身份验证属性。
使用IKERFC2409方法为IPSec安全关联产生密钥。
这在draft-ietf-ipsec-isakmp-gss-auth-02.txt中有描述。
∙使用证书的公钥/私钥签名,与多个证书系统兼容,包括Microsoft、Entrust、VeriSign和Netscape。
∙预先共享的密钥,严格用于在计算机之间建立信任的密码。
在本练习中,您使用预先共享的密钥身份验证。
这是两台计算机(发送方和接收方)必须知道的文字或短语,以便互相之间能够信任对方。
IPSec通信的双方都必须知道此值。
它不用来将应用程序数据加密。
相反,它只用在协商期间以确定两台计算机是否互相信任对方。
IKE协商使用此值,但不将它通过网络传递。
然而,身份验证密钥以明码格式存储在IPSec策略内。
任何有该计算机管理访问权限的人(或任何对计算机具有有效域用户ID,且该计算机是IPSec策略存储在ActiveDirectory中的域的成员)都能够看得见身份验证密钥值。
域管理员必须在目录IPSec策略中设置自定义访问控制,以防止普通用户读取IPSec策略。
因此,Microsoft不建议使用预先共享的密钥进行IPSec身份验证,除非进行测试,或要求与第三方供应商IPSec版本进行互操作的情况。
相反,Microsoft建议使用Kerberos或证书身份验证。
为规则配置身份验证方法
1.选择此字串用来保护密钥交换并输入ABC123作为字符串。
您决不能使用空字符串。
单击下一步。
备注如果您想使用证书进行身份验证,参见使用Internet可用的证书服务器从Microsoft获得测试用的证书的说明。
配置IPSec筛选器列表
IP安全在发送和接收IP数据包时应用于IP数据包。
当发送(出站)数据包时,将数据包与筛选器对照,看它们是否需要保护、闭锁或以明码形式传递。
当接收数据包(入站)时,也将数据包与筛选器对照,看它们是否应该保护、闭锁或允许进入系统。
有两种类型的筛选器:
控制IPSec传输模式安全的筛选器和控制IPSec隧道模式安全的筛选器。
首先将IPSec隧道筛选器应用于所有的数据包。
然后,如果无匹配,就会搜索IPSec传输模式筛选器。
有一些类型的IP通信无法通过Windows2000中的IPSec传输筛选器的设计来保护,这些类型包括:
∙广播地址-通常以.25结束-带有适当的子网掩码。
∙从224.0.0.0到239.255.255.255的多播地址。
∙RSVP-IP协议类型46。
它允许RSVP发送服务质量(QOS)请求信号,以便进行以后可能受IPSec保护的应用程序通信。
∙Kerberos-UDP源或目标端口88。
Kerberos本身是一个安全协议,IPSec的IKE协商服务用它来对域中的其它计算机进行身份验证。
∙IKE-UDP目标端