实验2IPSec—IP安全协议伴随着密码学的发展,数字签名技术也得以实现,利用数字签名技术可以保证信息传输过程中的数据完整性以及提供对信息发送者身份的认证和不可抵赖性。一、实验目的1.了解IPSec主要协议2.理解IPSec工作原理3.Windows环境下能够利用IPSec在两台主机间建立安全隧道二、实验环境Windows,交换网络结构,每组2人,密码工具,网络协议分析器三、实验原理IPSec工作原理IPSec包含4类组件:(1)IPSec进程本身:验证头协议(AH)或封装安全载荷协议(ESP);(2)Internet密钥交换协议(IKE,InternetKeyExchange):进行安全参数协商;(3)SADB(SADatabase):用于存储安全关联(SA,SecurityAssociation)等安全相关参数;(4)SPD(SecurityPolicyDatabase,安全策略数据库):用于存储安全策略。IPSec的工作原理类似于包过滤防火墙。IPSec是通过查询安全策略数据库SPD来决定接收到的IP包的处理,但不同于包过滤防火墙的是,IPSec对IP数据包的处理方法除了丢弃、直接转发(绕过IPSec)外,还有进行IPSec的处理。进行IPSec处理意味着对IP数据包进行加密和认证,保证了在外部网络传输的数据包的机密性、真实性、完整性,使通过Internet进行安全的通信成为可能。在IETF的标准化下,IPSec的处理流程受到了规范。1.IPSec流出处理如图2-1,在流出处理过程中,传输层的数据包流进IP层,然后按如下步骤执行:图2-1IPSec流出处理流程(1)查找合适的安全策略。从IP包中提取出“选择符”来检索SPD,找到该IP包所对应的流出策略,之后用此策略决定对该IP包如何处理:绕过安全服务以普通方式传输此包或应用安全服务。(2)查找合适的SA。根据策略提供的信息,在安全关联数据库中查找为该IP包所应该应用的安全关联SA。如果此SA尚未建立,则会调用IKE,将这个SA建立起来。此SA决定了使用何种基本协议(AH或ESP),采用哪种模式(隧道模式或传输模式),以及确定了加密算法,验证算法,密钥等处理参数。(3)根据SA进行具体处理。根据SA的内容,对IP包的处理将会有几种情况:使用隧道模式下的ESP或AH协议,或者使用传输模式下的ESP或AH协议。2.IPSec流入处理如图2-2,在流入处理过程中,数据包的处理按如下步骤执行:图2-2IPSec流入处理流程(1)IP包类型判断:如果IP包中不包含IPSec头,将该包传递给下一层;如果IP包中包含IPSec头,会进入下面的处理。(2)查找合适的SA:从IPSec头中摘出SPI,从外部IP头中摘出目的地址和IPSec协议,然后利用SPI,目的地址,协议在SAD中搜索SPI。如果SA搜索失败就丢弃该包。如果找到对应SA,则转入以下处理。(3)具体的IPSec处理:根据找到的SA对数据包执行验证或解密进行具体的IPSec处理。(4)策略查询:根据选择符查询SPD,根据此策略检验IPSec处理的应用是否正确。最后,将IPSec头剥离下来,并将包传递到下一层,根据采用的模式的不同,下一层或者是传输层,或者是网络层。四、实验步骤本练习主机A、B为一组,C、D为一组,E、F为一组。下面以主机A、B为例,说明实验步骤。IPsec虚拟专用网络的设置1.进入IPsec配置界面(1)主机A、B通过“开始”|“程序”|“管理工具”|“本地安全策略”打开IPSec相关配置界面,如图2-3所示。(2)在默认情况下IPsec的安全策略处于没有启动状态,必须进行指定,IPsec才能发挥作用。IPsec包含以下3个默认策略,如图2-3所示。图2-3本地安全设置安全服务器:对所有IP通讯总是使用Kerberos信任请求安全。不允许与不被信任的客户端的不安全通讯。这个策略用于必须采用安全通道进行通信的计算机。客户端:正常通信,默认情况下不使用IPSec。如果通信对方请求IPSec安全通信,则可以建立IPSec虚拟专用隧道。只有与服务器的请求协议和端口通信是安全的。服务器:默认情况下,对所有IP通信总是使用Kerberos信任请求安全。允许与不响应请求的客户端的不安全通信。(3)以上策略可以在单台计算机上进行指派,也可以在组策略上批量指派,为了达到通过协商后双方可以通信的目的,通信双方都需要设置同样的策略并加以指派。2.定制IPSec安全策略(1)双击“安全服务器(需要安全)”项,进入“安全服务器属性”页,可以看到在“规则”页签中已经存在3个“IP安全规则”,单击“添加”按钮,进入向导添加新安全规则。(2)在本练习中,我们实现的是两台主机之间的IPSec安全隧道,而不是两个网络之间的安全通信,因此,我们选择“此规则不指定隧道”,即选用传输模式IPSec,选中后单击“下一步”按钮。(3)在选择网络类型的界面。安全规则可以应用到3种网络类型:所有网络连接、局域网(LAN)和远程访问。本练习中,我们选择“所有网络连接”,单击“下一步”按钮。(4)在IP筛选器列表界面。我们定制自己的筛选操作,单击“添加”按钮,进入“IP筛选器列表”界面,如图2-4所示。图2-4IP筛选器列表(5)定制自己的IP筛选器。点击“添加”按钮进入“IP筛选器向导”,单击“下一步”按钮;(6)在“IP筛选器描述和镜像属性”的“描述”中,可自由添加对新增筛选器的解释信息,在这里输入“与同组主机进行安全的icmp通信”,单击“下一步”按钮;(7)IP通信源选择“我的IP地址”,单击“下一步”按钮;(8)IP通信目标选择“一个特定的IP地址”,IP地址填写:同组主机IP,单击“下一步”按钮;(9)选择“ICMP”协议类型,单击“下一步”按钮。单击“完成”按钮,完成定制IP筛选器;(10)单击“确定”按钮,退出“IP筛选器列表”对话框。操作界面返回到“安全规则向导”,设置新的IP筛选器:(1)在“IP筛选器列表”中选中“新IP筛选器列表”,单击“下一步”按钮;(2)在“筛选器操作”界面单击“添加”按钮新建筛选器操作,在弹出的“筛选器操作向导”界面中,单击“下一步”按钮;(3)新的筛选器操作名称为“安全的ICMP通信”,描述自定义,单击“下一步”按钮;(4)在“筛选器操作常规选项”中选中“协商安全”,单击“下一步”按钮;(5)选中“不与不支持IPSec的计算机通信”,单击“下一步”按钮;(6)在“IP通信安全措施”中,选择“完整性和加密”,单击“下一步”按钮;最后单击“完成”按钮完成筛选器操作设置。(7)返回到“安全规则向导”,在“筛选器操作”列表中选中“安全的ICMP通信”,单击“下一步”按钮;(8)在“身份验证方法”界面。选中“使用此字符串保护密钥交换(预共享密钥)”,填写共享密钥“jlcss”(主机A、主机B的共享密钥必须一致),单击“下一步”按钮,直至最终完成。IPsec虚拟专用网络的检测「注」应用策略之前必须指派策略,否则策略不会自动生效。右键点击“安全服务器”,选择“指派”使策略生效。(1)主机A不指派策略,主机B不指派策略。主机A在“cmd”控制台中,输入如下命令:ping主机B的IP填写ping操作反馈信息:___________________________________________。(2)主机A指派策略,主机B不指派策略。主机A在“cmd”控制台中,输入如下命令:ping主机B的IP填写ping操作反馈信息:___________________________________________。(3)主机A不指派策略,主机B指派策略。主机A在“cmd”控制台中,输入如下命令:ping主机B的IP填写ping操作反馈信息:___________________________________________。(4)主机A指派策略,主机B指派策略。主机A在“cmd”控制台中,输入如下命令:ping主机B的IP填写ping操作反馈信息:___________________________________________。协议分析ESP首先确保主机A、主机B均已指派策略。(1)主机A、B进入实验平台,单击工具栏“协议分析器”按钮,启动协议分析器。定义过滤器,设置“网络地址”过滤为“主机A的IP-主机B的IP”;单击“新建捕获窗口”按钮,点击“选择过滤器”按钮,确定过滤信息。在新建捕获窗口工具栏中点击“开始捕获数据包”按钮,开始捕获数据包。(2)主机A在“cmd”控制台中对主机B进行ping操作。(3)待主机Aping操作完成后,主机A、B协议分析器停止数据包捕获。切换至“协议解析”视图,观察分析源地址为主机A的IP、目的地址为主机B的IP的数据包信息,如图2-5所示。图2-5概要解析(4)分析右侧协议树显示区中详细解析及下侧十六进制显示区中的数据,参照图2-6,按照链路层报头(默认14字节)→网络层报头(本实验中为20字节)→ESP报头的顺序解析数据,回答下列问题:图2-6ESP十六进制数据ESP协议类型值(十进制)__________。安全参数索引(SPI)值是_________________。序列号是____________________。ICMP负载是否被加密封装________。协议分析AH(1)主机A、B同时进行如下操作,修改“ICMP安全通信策略”,利用AH协议对数据源进行身份验证,而不对传输数据进行加密处理。(2)在“本地安全设置”界面中,双击“安全服务器(需要安全)”;(3)在“属性”对话框中,双击“新IP筛选器列表”;(4)在“编辑规则属性”对话框中,选择“筛选器操作”页签,双击“安全的ICMP通信”;(5)在“属性”对话框中,选择“安全措施”页签,在“安全措施首选顺序”中,双击唯一的一条规则;(6)在“编辑安全措施”对话框中,选中“自定义”,单击“设置”按钮,具体操作如图2-7所示。图2-7自定义安全措施设置单击“确定”按钮,直至最后。(7)主机A、B再次启动协议分析器,过滤规则不变,开始捕获数据包。(8)主机A对主机B进行ping操作,待操作完成,协议分析器停止捕获数据包。切换至“协议解析视图”,观察十六过制显示区数据,参照图2-8,按照链路层报头(默认14字节)→网络层报头(本实验中为20字节)→AH报头的顺序解析数据,回答下列问题:图2-8AH十六进制数据AH协议类型值(十进制)__________。下一个报头所标识的协议类型是______。载荷长度值是______。由该值计算出AH报头总长度是______,具体计算方法________________________。安全参数索引值是_______________________。ICMP负载是否被加密封装__________。为什么?