六、IPSec VPN IKEL2L

1 概念

  • IPSec : Internet Protocol Security基于IP协议的安全,IPsec是个协议组内含多种协议

IPSec详细介绍

  • 在网络层为ip数据包提供安全服务的协议组,包括私密性,完整性,防重放攻击,以及身份认证;
  • 优点∶
    ■ 对下层没有要求(与物理层和数据链路层无关)
    ■ 对上层没有要求( 与传输层和应用无关)
    ■ 易于扩展(与网络规模无关)
  • VPN : Virtual Private Network 虚拟专用网络
  • IPSec VPN : IPSec协议组实现IP数据包传输安全的一种VPN技术

2 IPSec VPN的类型

site-to-Site VPN

  • 用于两个站点的内部网络可以安全的相互通信
  • 特点:站点通常都具备固定的公网ip地址
  • 包括:L2L, DMVPN,GETVPN,GRE over IPSec, SVTL, EZVPN

Remote Access VPN

  • 用于移动用户或者远程办公的个体用户连接到中心网络.
  • 特点:中心网络具备固定的公网IP地址,远端用户P地址不固定心
  • 包括:SSLVPN,EZVPN,DVTI(其中 SSLVPN不属于IPSec VPN)

3 IPSec协议组的组成

IPSec由三部分组成

  • IKE(Intermet Key Exchange)互联网秘钥交换
  • AH(Authentication Header)认证头部
  • ESP(Encapsulation Security Protocol)封装安全协议

3.1 IKE(控制层面)

作用

  • IPSec使用IKE来完成对等体之间的认证(PSK)和秘钥的生成与交换(DH算法)
  • 协商和维护安全关联SA (Security Association)
  • 参数SA是一个集合,包含了加密算法,认证方式等等,可以手动配置里面内容
  • 通过认证,排除伪装者
  • 自动产生秘钥,并自动更新秘钥
  • 动态,安全的交换秘钥

组成部分

  • Oakley
  • SKEME
  • ISAKMP

工作原理

  • Oakley负责支持现有或新的算法
  • SKEME负责定义秘钥交换方式
  • ISAKMP (Internet Security Association and KeyManagement Protocol)负责Message交互.
  • Oakley, SKEME相当于是后台程序,ISAKMP相当于前台执行者.(类似OSPF通过LSDB计算出RIB表项)
  • 可以简单的认为ISAKMP = IKE

3.2 AH /ESP(数据层面)

概念

  • 用做封装实际数据包的头部的两种形式

4 控制层面——IKE详细说明

ISAKMP(IKE)在Peer之间建立一个安全通道来协商Key需要两个阶段来协商完成

4.1 阶段1

  • 工作原理
    ■ 通过Main Mode(6个包)或Aggressive Mode(3个包),协商产生一个双向的ISAKMP SA该SA内算法用于保护IKE协商过程
    【Main Mode协商来回需要6个报文,而Aggresive Mode协商来回只需要3个报文,后者多用在轻量设备(如手机,pos机)】
    ■ 在这个安全通道中使用非对称密钥算法(DH).得到秘钥(Ka, Kd,Ke, a=Authentication,d=Data, e=Encryption)
    ■ 使用Ke来保护阶段1的第五个和第六个,以及阶段2的所有Message交互
    ■ 使用Ka来完成Peer之间的身份认证
    ■ 使用Kd来产生将来实际加密数据的Key

  • 流程图
    在这里插入图片描述

M1/M2

  • 包含通信双方各自的Cookie (8bytes),作为协商序列号,Cqokie=Hash (P,Port,Protocol,Date,Time, Random),阶段1,2均使用相同Cookie
  • M1包含发送方的所有SA,M2包含接收方选择的匹配的一个SA(因为可能存在一个总部对多个分公司的情况,所以可以是一对多的情况,只需要匹配SA)
  • SA包含对协商消息保护所采用的加密算法,Hash算法,DH秘钥长度,身份认证方式,以及协商的有效期

M3/M4

  • 通信双方开始交换DH计算出的公开值,即DH的公钥
  • 交换公钥的过程中携带一个随机数Nonce
  • (现时标识)交换完以上两个参数以后,开始各自计算Ka, Kd, Ke
  • 该交互过程通常不存在故障性

M5/M6

  • 通信双方利用计算出的Ke完成对Message的加密
  • 通信双方完成身份认证过程
  • 故障可能性∶身份认证出现错误,该原因通常是因为PSK不一致造成.

  • 排错——第一阶段失败的原因?
    收不到
    ■ 外层IP(通信点IP)路由不可达
    收的到
    ■ 双方没有匹配的SA(停在SA协商阶段,即一二个包)
    ■ 双方PSK没有设置(停在计算Ka、Kd、Ke时即三四个包,因为计算需要PSK+DH参数)
    ■ 双方PSK设置不一致(停在身份认证阶段,即五六个包)

4.2 阶段2

  • 工作原理
    ■ 通过Quick Mode(3个包)构建IPSec SA,该SA用于保障后续真实数据的传输,包含对数据封装使用什么协议,加密算法,HMAC算法,工作模式以及感兴趣流量
    ■ 在ISAKMP的保护下,产生两个单向的IPSec SA,一个用于发送数据,一个用于接收数据
    ■ 基于阶段1的Kd结合IPSec SA内定义的算法来产生加密实际数据的Key,不过加密需要基于ESP的封装方式,如果是AH则不具备加密的功能,但是他们都有检验完整性的功能

  • 流程图
    在这里插入图片描述

  • IPSec SA内容
    以下探讨的是真实数据的封装和加密方式
    ■ 使用什么协议封装(ESP,AH)【后面会细说】
    ■ 使用什么加密算法以及秘钥长度( DES,3DES,AES)
    ■ 使用什么认证算法以及输出长度(MD5,SHA)
    ■ 工作模式(Tunnel,Transport)
    ■ 感兴趣流量,即哪些数据需要进行加密
    ■ 保护阶段2协商的有效期,也就是秘钥的有效期
    ■ 是否启用DH算法.(可选项)

  • 工作模式
    ■ Transport Mode传输模式∶加密点等于通信点
    ■ Tunnel Mode隧道模式:加密点不等于通信点.
    在这里插入图片描述
    ■ 如果加密点与通信点地址不相同,那么必须使用Tunnel模式
    ■ 如果加密点与通信点地址相同,那么可以使用Transport模式,也可以是Tunnel模式
    ■ 针对第二种情况,如果使用Tunnel模式,那么会多出一层包头,导致载荷减少
    ■ 工作模式的不同会影响真实数据中报文的封装格式

  • 感兴趣流
    ■ 需要使用类似ACL的工具来吸取感兴趣流

5 数据层面——AH/ESP详细说明

  • AH (Authentication Header)
    ■ 提供源认证,完整性校验,但是不提供加解密现在基本不使用
    ■ 所有数据都是明文传输R1将IP头部,载荷.KEYMAT,一起做Hash,结果都放到AH头部,再将头部放在IP包头与载荷之间.
    ■ R2收到也将IP头部,载荷,KEYMAT—起做Hash,将结果与收到的AH头部记录的Hash值进行比对来完成身份认证以及完整性校验.
    ■ AH头部包含Hash值与序列号
    在这里插入图片描述

  • ESP (Encapsulation Security Payload)
    ■ 提供私密性,完整性,源认证功能,数据载荷加密传输
    ■ ESP头部包含:SPI和序列号
    ■ ESP尾部用于表明填充长度以及后面是否存在认证字段
    ■ Authentication Data用于存放HMAC的结果(抓包看不到字段)
    在这里插入图片描述

  • 两者的区别
    请添加图片描述请添加图片描述

6 IKE命令

在这里插入图片描述
下面为CE1的IPSec VPN的配置部分;基础配置如接口和默认路由不再展示,CE2配置类似于CE1也不再展示

  • 修改ISAKMP 中的SA属性
CE1#conf t
CE1(config)#crypto isakmp policy ? <1-10000>  Priority of protection suiteCE1(config)#crypto isakmp policy 10CE1(config-isakmp)#?
ISAKMP commands:authentication  Set authentication method for protection suite //设置认证方式default         Set a command to its defaultsencryption      Set encryption algorithm for protection suite //设置对称加密算法的秘钥exit            Exit from ISAKMP protection suite configuration modegroup           Set the Diffie-Hellman group //设置DH要生成的最终秘钥的长度hash            Set hash algorithm for protection suite //设置hash的具体方式 lifetime        Set lifetime for ISAKMP security association //设置协商时间no              Negate a command or set its defaultsCE1(config-isakmp)#authentication ?pre-share  Pre-Shared Keyrsa-encr   Rivest-Shamir-Adleman Encryptionrsa-sig    Rivest-Shamir-Adleman Signature
CE1(config-isakmp)#authentication pre-shareCE1(config-isakmp)#encryption ?3des  Three key triple DESaes   AES - Advanced Encryption Standard.des   DES - Data Encryption Standard (56 bit keys)
CE1(config-isakmp)#encryption 3desCE1(config-isakmp)#group ?//设置K的长度1  Diffie-Hellman group 12  Diffie-Hellman group 25  Diffie-Hellman group 5
CE1(config-isakmp)#group 1CE1(config-isakmp)#hash ?md5  Message Digest 5sha  Secure Hash Standard
CE1(config-isakmp)#hash md5

设置PSK值

CE1(config)#crypto isakmp key 0 cisco address 200.64.0.3//前面的cisco是设置PSK,后面设置的IP地址是对端通信IP

设置IPSec SA

//可以设置认证的类型和加密的形式,以及报头的封装类型
CE1(config)#crypto ipsec transform-set ?WORD  Transform set tagCE1(config)#crypto ipsec transform-set 10 ?ah-md5-hmac   AH-HMAC-MD5 transformah-sha-hmac   AH-HMAC-SHA transformcomp-lzs      IP Compression using the LZS compression algorithmesp-3des      ESP transform using 3DES(EDE) cipher (168 bits)esp-aes       ESP transform using AES cipheresp-des       ESP transform using DES cipher (56 bits)esp-md5-hmac  ESP transform using HMAC-MD5 authesp-null      ESP transform w/o cipheresp-seal      ESP transform using SEAL cipher (160 bits)esp-sha-hmac  ESP transform using HMAC-SHA authCE1(config)#crypto ipsec transform-set 10 esp-md5-hmac ?ah-md5-hmac  AH-HMAC-MD5 transformah-sha-hmac  AH-HMAC-SHA transformcomp-lzs     IP Compression using the LZS compression algorithmesp-3des     ESP transform using 3DES(EDE) cipher (168 bits)esp-aes      ESP transform using AES cipheresp-des      ESP transform using DES cipher (56 bits)esp-null     ESP transform w/o cipheresp-seal     ESP transform using SEAL cipher (160 bits)CE1(config)#crypto ipsec transform-set 10 esp-3des esp-md5-hmac 

设置工作模式

CE1(config)#crypto ipsec transform-set 10 esp-3des esp-md5-hmac 
CE1(cfg-crypto-trans)#mode ?transport  transport (payload encapsulation) modetunnel     tunnel (datagram encapsulation) modeCE1(cfg-crypto-trans)#mode tunnel

设置感兴趣流

CE1(config)#access-list 100 permit ip host 172.16.0.1 host 192.168.0.1 

整合ISAKMP SA和IPSec SA
//isakmp不需要匹配,因为所有的都发

CE1(config)#crypto map CCIE ?<1-65535>       Sequence to insert into crypto map entryCE1(config)#crypto map CCIE 10 ? ipsec-isakmp  IPSEC w/ISAKMPCE1(config)#crypto map CCIE 10 ipsec-isakmp
CE1(config-crypto-map)#match address 100
CE1(config-crypto-map)#set transform-set 10//匹配这个IPSec SA
CE1(config-crypto-map)#set peer 200.64.0.3//设置对等体
//此处还可以再set peer和原本的是Backup的关系,要想
设置新的对等体需要CE1(config)#crypto map CCIE 20 ipsec-isakmp

接口开启IPSec VPN

CE1(config)#int s2/0
CE1(config-if)#crypto map CCIE

查看命令

  • 查看ISAKMP 中SA属性

默认的SA属性

CE1#show crypto isakmp policy Global IKE policy
Default protection suiteencryption algorithm:   DES - Data Encryption Standard (56 bit keys).hash algorithm:         Secure Hash Standardauthentication method:  Rivest-Shamir-Adleman SignatureDiffie-Hellman group:   #1 (768 bit)lifetime:               86400 seconds, no volume limit

正确的SA属性

CE1#show crypto isakmp policy Global IKE policy
Protection suite of priority 10encryption algorithm:   Three key triple DEShash algorithm:         Secure Hash Standardauthentication method:  Pre-Shared KeyDiffie-Hellman group:   #1 (768 bit)lifetime:               86400 seconds, no volume limit
Default protection suiteencryption algorithm:   DES - Data Encryption Standard (56 bit keys).hash algorithm:         Secure Hash Standardauthentication method:  Rivest-Shamir-Adleman SignatureDiffie-Hellman group:   #1 (768 bit)lifetime:               86400 seconds, no volume limit
  • 查看加密和解密的数据
CE1#show crypto engine connections active
  • 查看隧道情况
CE1#show crypto isakmp sa


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部