**一、VPN **
vpn-- virtual private network 虚拟私有网,实现是隧道技术。
具体来说,VPN技术可以通过以下方式工作:
加密:VPN技术使用加密技术对数据进行加密,确保数据在传输过程中不会被窃取或篡改。加密算法通常使用AES、DES等强加密算法,以保护数据的安全。
隧道:VPN技术使用隧道技术将数据包装在一个安全的通道中进行传输,确保数据不会在传输过程中被劫持或篡改。隧道技术可以使用多种协议实现,如PPTP、L2TP、IPSec等。
认证:VPN技术使用认证技术对用户进行身份验证,以确保只有经过授权的用户才能访问网络。认证技术通常包括用户名和密码、数字证书、双因素认证等。
1.分类
业务划分:
client to LAN (access vpn)
LAN to LAN (site to site)
**网络层次划分 **:
2.VPN****的常用技术
隧道技术
加解密技术
数据认证技术什么是数据认证?
身份认证技术什么是身份认证?
密钥管理传输技术
隧道技术之间的比较
二、 IPSEC VPN
ipsec 是一种基于网络层,应用密码学的安全通信协议族。目的是在网络层环境ipv4,ipv6提供灵活的安全传输服务。
ipsec vpn 基于ipsec构建在ip层实现的安全虚拟专用网。
1.ipsec****的安全服务
机密性
完整性
数据源鉴别
重传保护
不可否认行
*2.IPSEC***的技术协议族架构 **
ESP
加密算法
鉴别算法
机密性 完整性可用性
AH
鉴别算法
完整性
IKE internet key exchange
可用性密钥管理与分发协议
IKE
协商封装协议以及工作模式 esp ah
协商加密和鉴别算法
密钥参数的协商---密钥产生算法、密钥有效期、密钥分发者身份认证、密钥长度、认证算法
两种工作模式
传输模式 隧道模式
俩个通信协议
ESP encapsulation security header 封装安全载荷
AH authenticition header 鉴别头
密钥管理协议
**IKE **
阶段1
主模式
野蛮模式
阶段2
快速模式
俩个数据库
安全策略数据库 SPD安全管理数据库 SAD
解释域
负责运行
三、传输模式
在传输模式下,IPSec 协议处理模块会在 IP 报头和高层协议报头之间插入一个 IPSec 报头。IP 报头与原始 IP 分组中的 IP 报头是一致的,只是 IP 报文中的协议字段会被改成 IPSec 协议的协议号(50 或者 51) ,并重新计算 IP 报头校验和。传输模式保护数据包的有效载荷、高层协议,IPSec 源端点不会修改 IP 报头中目的 IP 地址,原来的 IP 地址也会保持明文。
传输模式只为高层协议提供安全服务。
主要应用场景:经常用于主机和主机之间端到端通信的数据保护。
封装方式:不改变原有的 IP 包头,在原数据包头后面插入 IPSec 包头,将原来的数据封装成被保护的数据。
四、隧道模式
传输模式不同,在隧道模式下,原始 IP 分组被封装成一个新的 IP 报文,在内部报头以及外部报头之间插入一个 IPSec 报头,原 IP 地址被当作有效载荷的一部分受到 IPSec 的保护。通过对数据加密,还可以隐藏原数据包中的 IP 地址,这样更有利于保护端到端通信中数据的安全性。
封装方式:增加新的 IP(外网 IP)头,其后是 ipsec 包头,之后再将原来的整个数据包封装。
五、AH
authenticition header 鉴别头协议号51
**1.安全服务 **
数据源认证----通过计算验证码时加入一个共享密钥来实现,和ospf的认证类似。
数据抗重放---AH包头中的序列号
数据完整性---hash算法,校验hash值来实现
没有机密性,没有使用加密算法
2.传输模式
3.隧道模式
4.AH头部结构
*做认证时对于易变值是不做认证的,IP包中TTL和TOS*是不参与认证的。 **
六、ESP
协议号 50
**1.安全服务: **
数据完整性
数据源认证
数据抗重放
数据机密性
数据流保护
2.传输模式
3.隧道模式
4.ESP头部结构
七、IKE
ike用途:
为ipsec通信双方,动态的建立安全联盟SA,对SA进行管理与维护。
为ipsec生成密钥,提供AH/ESP加解密和验证使用。
1.安全联盟
SA ---security association 是通信对等体之间对某些要素的约定,通信的双方符合SA约定的内容,就可以建立SA。
SA 标识:安全参数索引目的IP地址安全协议号
建立安全联盟有俩种,一种是静态,一种是动态。如果需要建立安全联盟的节点较多时静态手工配置将会非常困难,也容易出错,并且安全低。可以使用动态的方式进行协商来解决,IKE internet key exchange自动协商安全联盟建立密钥交换过程。
2.IKE****工作过程
IKE经过俩个阶段为ipsec进行密钥协商病建立安全联盟:
俩个阶段
第一阶段:IKE SA 对等体之间的身份认证、IPSEC之间的密钥生成和交换
第二阶段:IPSEC SA
第一个阶段:
通信各方彼此之间需要建立一个已通过身份验证和安全保护的通道,交换建立一个iskmp安全联盟,iskmp sa。
主模式
野蛮模式
第二个阶段:
用已经建立的安全联盟 iskmp sa(ike sa)的安全通道为ipsec协商安全服务,建立ipsec
sa,产生用于业务数据加密的密钥。
3.IKE SA
1.主模式
6个包交互,默认使用IP地址作为身份标识,默认传递自己的接口地址作为身份标识,对方的公网地址作为对端身份标识去检查。安全提议:加密算法、hash算法、身份认证方式、密钥交换算法、密钥有效期
Ci 表述本地cookie信息,SAi表述协商的安全策略参数,SAr对方协商参数的确认,Cr对方cookie信息的确认
Xi,Yi是交换的公钥信息,Ni随机数
ID是身份信息,HASH验证信息
第一个包,承载协议是UDP,端口源目都是500
2.野蛮模式
野蛮虽然是三个包但是安全性没问题,ID设置灵活性很高,有助于不同厂商ipsec对接。nat也会破坏IP地址导致ip作为身份信息不可靠。
3.对比
4.IPSec SA
快速模式 安全参数:封装协议、模式、加密算法、hash算法与认证、密钥有效期
八、DBD
死亡对等体检测(dead peer detection),检查对端IKE SA(iskmp sa)是否存在。当隧道出现异常时,能够检查到异常重新发起协商,维持隧道。
DPD解决隧道黑洞问题,用于检查第一阶段是否生效,如果检查第一阶段 IKE SA断开,则不会再次发出DPD包。
检查机制: 周期发送 ,按需发送空闲计时器。
九、IPSEC的NAT问题
NAT会破坏IPSEC的完整性。
具体场景:当我们ipsec设备没有部署在企业边界,而是部署企业内网时,ipsec的通信地址会被边界NAT设备做地址转换,这种情况下,需要考虑NAT与IPSEC的兼容性。
我们需要详细分析IPSEC在第一阶段、第二阶段与NAT具体兼容情况:
- 第一阶段的主模式
- 第一阶段的野蛮模式
- 第二阶段ESP的传输模式
- 第二阶段ESP的隧道模式
- 第二阶段AH的传输模式
- 第二阶段AH的隧道模式
第一阶段的主模式:第5、6包的认证ID,由于NAT的破坏无法完成身份认证。
第一阶段的野蛮模式:由于ID可以自定义为字符串,NAT无法破坏,可以正常完成第一阶段身份认证。
第二阶段AH的传输模式与隧道模式:AH协议会校验外层IP地址,无论是传输还是隧道NAT都会转换外层头IP地址,所以完整性都会被破坏,AH协议无法与NAT兼容。
第二阶段ESP的隧道模式与传输模式:ESP不会对外层IP做认证或校验,所以完整性算法不会被NAT破坏,但是由于存在尾首部校验,传输模式也被破坏(nat在修改IP地址的时候也要修改伪首部校验和,这样就不会出现伪首部校验失败的问题,但是ESP等加密封装把4层加密后nat就无法修改伪首部校验和,导致校验失败)。
ESP的隧道模式下NAT修改IP是在新头部中,而伪首部校验和针对是原始IP头故而不会导致伪首部校验失败。
但是ESP的传输模式,根据伪首部校验原理,数据最终在接收pC上由于之前加密NAT设备无法伪首部校验值,导致伪首部校验失败,数据包被丢弃。所以ESP传输模式无法与NAT兼容。
ESP隧道模式,伪首部校验针对的事原始IP头,而NAT转换的是新IP头,所以不存校验失败问题,EPS隧道模式可以与NAT兼容。
综上:ipsec的AH协议不支持NAT,ESP仅有隧道模式支持,传输模式不支持NAT,并且标准的IKE SA的主模式是用IP地址作为身份ID的,nat会破坏IP地址故而不支持主模式,仅支持野蛮模式。
*十、IPSEC 的多VPN*问题
当企业需要架设多条VPN线路,但是公网接口有限,由于ESP协议没有端口号,无法完成一对多端口的映射。
ESP加密数据----ESP是三层协议没有端口号
NAT环境下IPSEC最终解决方案:NAT-T**技术,改技术规定在NAT模式下IPSEC的IKE SA阶段使用目的端口UDP 500或4500作为端口号,源端口允许被修改(这种情况下防火墙写策略时不要规定其源端口号),IPSEC SA数据加密流传输阶段规定使用目的端口UDP 4500来传输ESP加密流,源端口允许被修改,解决了ESP没有端口号的问题。**
华为与思科等大部分厂商默认都开启NAT-T技术。
如果需要对方主动发起协商,本端在nat设备上需要写静态nat映射。
版权归原作者 菜鸟Zyz 所有, 如有侵权,请联系我们删除。