实验八 IPSec实现安全通信
【实验目的】
1.了解IPSec主要协议;
2.理解IPSec工作原理;
3.掌握Windows环境下利用IPSec在两台主机间建立安全通道的方法。
【实验环境】
两台以上装有Windows 2000/XP/2003操作系统的计算机,其中必须有一台为Windows 2000/2003。
【实验原理】
IPSec作为一套标准的集合,包括加密技术、Hash算法、Internet密钥交换、AH、ESP等协议,在需要时还可以互相结合。IPSec是基于OSI第三层的隧道协议,第三层隧道协议对于OSI
模型的网络层,使用包作为数据交换单位,将IP包封装在附加的IP包头中,通过IP网络发送。IPSec提供了一种标准的、健壮的以及包容广泛的机制,可用为IP层协议及上层协议提供以下几种服务:数据源验证,确保收到的数据的发送者为实际发送者;数据完整性,确保数据在传输过程中未被非法篡改;抗重播保护,防止数据被假冒者复制存储并重复发送;信息的机密性,确保数据在传输过程中不被偷看。IPSec定义了一套默认的、强制实施的算法,以确保不同的实施方案可以共通。
IPSec包含四类组件:IPSec进程本身,验证头协议(AH)或封装安全载荷协议ESP; Internet密钥交换协议(IKE, Internet Key Exchange),进行安全参数的协商;SADB(SA Database),用于存储安全关联(SA,Security Association)等安全相关的参数;SPD(Security Policy Database),用于存储安全策略。
(1)IPSec的工作模式
在IPSec协议中,无论是AH还是ESP,都可工作于传输模式(Transport Mode)和隧道模式(Tunnel Mode)。
①传输模式,传输模式主要为上层协议提供保护,即传输模式的保护扩充到IP分组的有效载荷。传输模式使用原始的明文IP头,只加密数据部分(包括TCP头或UDP头),如图8-1所示。传输模式的典型应用是用于两个主机之间的端到端的通信。
图8-1 IPSec传输工作模式
②隧道模式,与传输模式相比,隧道模式对整个IP分组提供保护,整个IP数据包全部被加密封装,得到一个新的IP数据包,而新的IP头可以包含完全不同的源地址和目的地址,因此在传输过程中,由于路由器不能够检查内部IP头,从而增加了数据安全性,如图8-2所示。隧道模式通常用于当SA的一端或两端是安全网关,如实现了IPSec的防火墙或路由器的情况。
图8-2 IPSec隧道工作模式
(2)IPSec的主要协议
①AH协议,验证头是插入IP数据包内的一个协议头,如图8-3所示,以便为IP提供数据源认证、抗重播保护以及数据完整性保护。
图8-3 AH协议头格式
验证头不提供机密性保证,所以它不需要加密器,但它依然需要身份验证器,并提供数据完整性验证。
②ESP协议,封装安全载荷是插入进程间通信实验IP数据包内的一个协议头,如图8-4所示,以便为IP提供机密性、数据源认证、抗重播以及数据完整性保护。
图8-4 ESP协议数据格式
③因特网密钥交换协议(IKE)用于动态建立安全关联(SA),IKE以UDP的方式通信,其端口号为500。IKE是一个混合协议,使用到ISAKMP、okley密钥确定协议(基于DH协议)和SKEME协议。IKE分为两个阶段:第一阶段建立IKE本身使用的安全信道而协商SA,主要是协商“主密钥”;第二阶段,利用第一阶建立的安全信道来交换 IPSec SA。
(3)IPSec协议的实现
IPSec的工作原理类似于包过滤防火墙。IPSec通过查询安全策略数据库SPD来决定接收到的IP包的处理,但不同于包过滤防火墙的是,IPSec对IP数据包的处理方法除了丢弃、直接转发(绕过IPSec)外,还有进行IPSec的处理。进行IPSec处理意味着对IP数据包进行加密和认证,保证了在外部网络传输的数据的机密性、真实性、完整性,使通过Internet进行安全通信成为可能。在IETF的标准化下,IPSec的处理流程进行了规范。
1 IPSec外出处理,在外出处理过程中,传输层的数据包流进IP层,然后按如下步
骤处理,如图8-5所示。
图8-5 IPSec外出处理流程
首先,查合适的安全策略。从IP包中提取出“选择符”来检索SPD,到该IP包所对应的外出策略,之后用此策略决定对IP包如何处理;否则绕过安全服务以普通方式传输此包。
其次,查合适的SA。根据安全策略提供的信息,在安全联盟数据库中查该IP包所应该应用的SA。如果该SA尚未建立。则会调用IKE,将这个SA建立起来。此SA决定了使用何种协议(AH或ESP),采用哪种模式(隧道模式或传输模式),以确定了加密算法,验证算法,密钥等处理参数。
最后,根据SA进行具体处理。
②IPSec流入处理,在进入处理过程中,数据包的处理如下步骤执行,如图8-6所示。
图8-6 IPSec数据进入处理流程
首先,IP包类型的判断:如果IP包中不含IPSec头,将该包传递给下一层;如果IP包中包含了IPSec头,会进入下面的处理。
其次,查适合的SA:从IPSec头中摘出SPI,从外部IP头中摘出目的地址和IPSec协议,然后利用<SPI,目的地址,协议>在SAD中搜索SA。如果SA搜索失败就丢弃该包。如果到对应的SA,则转入以下处理。
再次,具体的IPSec处理,根据到SA对数据包执行验证或解密进行具体的IPSec处理。
最后,策略查询:根据选择符查询SPD,根据此策略检验IPSec处理的应用是否正确。最后,将IPSec头剥离下来,并将包传递到下一层,根据采用的模式,下一层要么是传输层,要么是网络层。
【实验步骤】
IPSec协议是在公共IP网络上确保通信双方数据通信具有可靠性和完整性的技术,它能够为通信双方提供访问控制、无连接完整性、数据源认证、载荷有效性和有限流量机密性等安全服务。Windows系统中提供构建IPSec安全应用的所有组件。
首先配置Web服务器和客户端主机网络:
服务器主机A:Windows Server 2003,IP地址是192.168.0.3/24,安装Web站点并测试成功。
测试主机B:Windows 2000/XP/2003/Vista,IP地址是192.168.0.4/24,测试与主机A访问成功。
IPSec技术保证应用层服务访问安全主要有以下几个步骤:
● 在服务器主机A、B上安装并配置IPSec;
● 在服务器主机未启用或启用IPSec的情况下进行测试。
(1) 配置服务器主机 A的IPSec
①建立新的IPSec策略
步骤1:单击“开始”→“所有程序”→“管理工具”→“本地安全策略”,打开【本地安全设
置】窗口。
步骤2:在【本地安全设置】窗口左侧对话框中右击“IP安全策略,在本地机器”→“创
步骤2:在【本地安全设置】窗口左侧对话框中右击“IP安全策略,在本地机器”→“创
建IP安全策略”,如图8-7所示。
图8-7 创建IP安全策略
步骤3:在【欢迎使用IP安全策略】窗口中单击“下一步”按钮。
步骤4:在【IP安全策略名称】窗口中输入名称和描述信息(本实验中的策略名称为新IP安全策略A),单击“下一步”按钮。
步骤4:在【IP安全策略名称】窗口中输入名称和描述信息(本实验中的策略名称为新IP安全策略A),单击“下一步”按钮。
步骤5:在【安全通信请求】窗口中取消“激活默认响应规则”复选框,单击“下一步”按钮。
步骤8:在【完成“IP安全策略向导”】窗口中取消“编辑属性”默认选项,单击“完成”按钮,
步骤8:在【完成“IP安全策略向导”】窗口中取消“编辑属性”默认选项,单击“完成”按钮,
打开【新IP安全策略A属性】窗口,如图8-8所示。
图8-8 创建新IP安全策略A
②添加新规则
步骤1:在【新IP安全规则A属性】窗口中取消“使用‘添加向导’”选项,再单击“添加”
按钮,如图8-8所示。
步骤2:在【新规则属性】窗口中的“IP筛选器列表”选项卡中选中“所有ICMP通信”,
步骤2:在【新规则属性】窗口中的“IP筛选器列表”选项卡中选中“所有ICMP通信”,
单击“添加”按钮,出现【IP 筛选器列表】窗口,如图8-9所示。
图8-9 添加新的过滤器
③添加新过滤器
步骤1:在【IP筛选器列表】窗口中输入筛选器的名称,并取消“使用‘添加向导’”选项,单击“添加”按钮。
步骤2:在【IP筛选器属性】窗口中设置源地址和目标地址为特定的IP地址(本实验为主机到主机实现IPSec安全通信),如图8-10所示。
图8-10 设置通信源与目的地址
步骤3:在【IP筛选器属性】窗口中,如图8-10所示,选择“协议”选项卡,选择“协议类型”为ICMP,单击“确定”按钮。
步骤4:在【IP筛选器列表】窗口中单击“确定”按钮,返回【新规则属性】窗口,通过单击新添加的过滤器旁边的单选按钮激活新设置的过滤器,如图8-11所示。
步骤4:在【IP筛选器列表】窗口中单击“确定”按钮,返回【新规则属性】窗口,通过单击新添加的过滤器旁边的单选按钮激活新设置的过滤器,如图8-11所示。
图8-11 激活新建的过滤器
④规定过滤器动作
步骤1:在【新规则属性】窗口中选择“筛选器操作”选项卡,取消“使用‘添加向导’”
选项,单击“添加”按钮,如图8-12所示。
步骤2:在【新筛选器操作属性】窗口中默认选择“协商安全”选项,单击“添加”按钮。
步骤3:在【新增安全措施】窗口中默认选择“完整性和加密”选项,选择“自定义选项”,
步骤3:在【新增安全措施】窗口中默认选择“完整性和加密”选项,选择“自定义选项”,
单击“设置”按钮,在【自定义安全措施设置】窗口中可选择AH或ESP协议及相应算法,如图8-13所示。
图8-12 添加新筛选器动作
图8-13 自定义安全措施设置
步骤4: 在【新增安全措施】窗口中单击“关闭”按钮,返回【新筛选器属性】对话框,确保不选择“允许和不支持IPSec的计算机进行不安全的通信”,单击“确定”按钮。
步骤5:在如图8-11所示的【新规则属性】窗口中的“筛选器操作”选项卡中选中“新筛选器操作”并激活,如图8-12所示。
⑤设置身份验证方法
步骤1:在如图8-11所示【新规则属性】窗口中的“身份验证方法”选项卡中单击“添加”按钮,打开【新身份验证方法属性】窗口,选择“使用此字串(预共享密钥)”单选框,并输入预共享密钥字串“ABC”。
步骤2:在【身份认证方法属性】窗口中单击“确定”按钮返回“身份验证方法”选项卡,选中新生成的“预共享密钥”,单击“上移”按钮使其成为首选,如图8-14所示。
图8-14 设置预共享密钥
⑥设置“隧道设置”
单击如图8-11所示【新规则属性】窗口中的“隧道设置”选项卡,默认选择“此规则不指定IPSec隧道”。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论