张春 发表于 2024-8-19 10:40:32

IPSec VPN

目录
一、背景
二、简介
1、概述
2、协议架构
  ①安全协议:
  ②封装模式:
  ③安全同盟(SA):
  ④互联网秘钥交换协议(IKE):
  阶段一:IKE SA
  阶段二:IPSec SA
3、特点
三、实验流程
  数据包出站:
  数据包入站:
四、根本设置
  实验要求
  IPSec设置前的准备
  思科
厂商产物文档
一、背景

  企业处于异地的分部、异地出差员工必要与公司总部举行通信时,必要颠末公网上传输完成私网访问。公网上传输企业可以通过直接拉专线、电路交换等广域网技术毗连其分部或出差员工,对于这个方法除了部署成本高、移动用户远程拨号接入费用高外还存在着信息泄露、被窜改等安全题目。我们可以通过VPN技术在公网上创建一个专用、具有一定安全性和服务质量保障的隧道,确保数据可以或许被传输的同时不被未经授权的第三方截取或窜改。
二、简介

1、概述

  IPSec VPN:是一个安全协议框架,具有基于密码学、可利用性、高质量的安全保护机制。
  VPN类型:3层VPN,利用IPSec隧道构建的网络层VPN
  场景:颠末公网完成私网之间的访问,远程访问VPN、站点到站点VPN、云服务安全等
2、协议架构

  IPSec VPN不是详细的协议,是由一系列安全协议组成的安全协议框架
  ①安全协议:

  作用:业务数据颠末IPSec加密后的报文,保护业务数据。保护的数据重要是IP数据包(包罗应用层数据、TCP/UDP报头、原始IP报头)
  类型:认证头(AH)、封装安全载荷(ESP)
   AH:基于IP协议号51,验证头部。
   ESP:基于IP协议号50,封装安全载荷。
   特点:都支持提供身份验证、完整性检测、抗重放攻击;数据加密上,AH不支持,ESP支持;完整性和认证上,AH通过散列盘算是对整个报文盘算包罗报文头和数据部分,ESP通过散列盘算是只对数据部分做验证。
  推荐利用ESP,ESP支持加密更加安全且可以在NAT环境下工作。NAT环境是对报文的源或目的IP地址举行转换,报文头发生变化AH认证不能通过。
  ②封装模式:

  作用:界说报文的封装结构
  概念:加密点、通信点
    加密点:部署VPN的设备
    通信点:业务数据的收发设备
  类型:传输模式、隧道模式
  封装前报文格式:IPH+DATA (IPH:IP头部;DATA:数据部分包罗TCP/UDP头部)
  传输模式:只保护IP数据包的有用负载(Payload),不保护IP头部。在传输模式下,原始IP包的头部保持不变,只有数据部分(以及TCP/UDP头)受到保护
    封装后报文格式:IPH+安全协议(AH/ESP)+DATA
    AH:在传输模式下,AH会对整个IP包(包罗IP头和数据部分)举行完整性检查和认证。
    ESP:在传输模式下只加密数据部分,并可选择对数据部分举行完整性检查。
    场景:加密点和通信点在同一台设备上,业务自己可达
https://i-blog.csdnimg.cn/direct/bcd8882c86ac475e8cecaca8f766b231.png
   隧道模式:将整个IP包(包罗原始IP头和数据部分)封装在一个新的IP包中。这个新的封装IP包具有新的IP头部。
    封装后报文格式:IPH(新)+安全协议(AH/ESP)+IPH(原始)+DATA。新的IP头大多环境下是封装公网的IP地址实现公网上通信,原始的IP头指私网IP地址。
    AH:在隧道模式下,AH会对整个封装后的IP包(包罗新的IP头和原始的整个IP包)举行完整性检查和认证。
    ESP:在隧道模式下会对整个原始IP包举行加密,并封装在一个新的IP包中。ESP可以选择对加密后的数据举行完整性检查,但不保护新的IP头部。
    场景:加密点和通信点不在同一台设备上,业务自己不可达
https://i-blog.csdnimg.cn/direct/92feb09f484b4100915c620eea6905fb.png
  区别:封装后是否会产生新的报文;业务自己是否可达
https://i-blog.csdnimg.cn/direct/2e8e69f6afb84a71a89d872a532860b0.png
  ③安全同盟(SA):

  作用:在两个通信实体之间创建一个安全通信的参数聚集(看成是VPN双方安全参数的约定,是一份安全通信“合同”)
  三要素:安全参数索引(SPI)、安全协议、目的地址
    安全参数索引:唯一的标识符,用于区分不同的SA。SPI是方向性的,即发送方和吸收方各自有一个用于加密息争密的SPI。
    安全协议:利用AH/ESP
    目的地址:跟谁创建VPN
  安全同盟数据库(SADB):存储所有生动SA的数据库
  ④互联网秘钥交换协议(IKE):

  作用:实现在不安全的互联网上举行VPN交互,界说VPN双方的协商流程
  阶段一:IKE SA

  基于UDP端口号500
  作用:创建一个安全的、加密的通道,用于接下来举行的密钥协商和SA协商。
  模式:主模式、蛮横模式
    主模式:最高的安全性,通过六个消息交换来完成,创建加密和认证。
    第一对:SA交换,协商确认双方构建安全隧道策略的过程;
    第二对:密钥交换
    第三对:ID信息和验证数据的交换,验证对等体。    https://i-blog.csdnimg.cn/direct/8f58b68ccec044748b4ec69c9d4c9667.png
    蛮横模式:快速,利用三个消息交换来完成。 
    第一条:发起方发送当地IKE信息,包罗创建IKE SA所利用的参数、与密钥生成相关的信息和身份验证信息。
    第二条:吸收方对收到的第一个消息举行确认,查找并返回匹配的参数、密钥生成信息和身份验证信息。
    第三条:发起方通过第三条消息回应验证结果,并乐成创建IKE SA。
https://i-blog.csdnimg.cn/direct/310c7bd783f747a0b680fda2945eece6.png
    区别: 交互的报文数目、对等体标识
    场景:主模式适合安全需求高;蛮横模式适合已知对方所利用的VPN策略可以或许快速创建VPN
  阶段二:IPSec SA

  作用:在已经创建的IKE SA通道上协商现实的IPSec SA,用于保护IP数据包的传输
  模式:快速模式。过程与蛮横模式相似
                https://i-blog.csdnimg.cn/direct/2736434c396142fba74403ddbbef2bdd.png
3、特点

  不支持组播,也就是说不能直接利用路由协议(必要额外的设置或特定的网络设计让IPSec VPN支持组播)
  分支之间无法直接访问,在一些IPSec VPN部署场景中,存在所谓的“孤岛”征象,它们必要通过一个中心点或总部来举行路由和通信
  IPSecVPN是一对一的,端对端创建的
三、实验流程

  数据包出站:

https://i-blog.csdnimg.cn/direct/ef1801e2c7e24485b7da44c9e6e4534b.png
  数据包入站:

https://i-blog.csdnimg.cn/direct/8047416b77c74b729c877836a937ae80.png
四、根本设置

  厂商间IPSec VPN技术的实验流程、协议架构等大同小异,差别重要还是在设置上。以下将通过思科的环境,来为各人展示相应设置,其他厂商可以参考厂商的产物文档
  实验要求

    RA为企业分支网关,RB为企业总部网关,分支与总部通过公网创建通信。分支子网为10.1.1.0/24,总部子网为10.1.2.0/24。
    企业渴望对分支子网与总部子网之间相互访问的流量举行安全保护。分支与总部通过公网创建通信,可以在分支网关与总部网关之间创建一个IPSec隧道来实施安全保护。由于维护网关较少,思量接纳手工方式创建IPSec隧道。
  IPSec设置前的准备

   四步走:确定保护的流量/业务、确定保护的路径、确定保护的策略、确定保护的强度
   通过ACL来确定保护的流量,利用VPN路径举行保护,根据必要的保护强度确定双方安全策略
  思科

https://i-blog.csdnimg.cn/direct/bde97834a5444d2bb1c895e4e35ea2bf.png
  RA和RB分别为企业公司分部、总部的出口路由器和子网的默认网关,PCA、PCB分别为企业分部、总部内的终端,ISP模仿运营商。
  实验要求实现PCA可以或许通过IPSec VPN去访问PCB
  1)路由器RA、RB上修改设备名称、设置端口IP地址、设置静态路由指向ISP实现公网可达
   RA
Router>ena
Router#conf t
Router(config)#ho RA  ---修改设备名称
RA(config)#int e0/1
RA(config-if)#ip add 10.1.1.1 255.255.255.0
RA(config-if)#no shu
RA(config-if)#exit
RA(config)#int e0/0
RA(config-if)#no shu
RA(config-if)#ip add 1.1.1.1 255.255.255.0  ---设置端口IP地址
RA(config-if)#exit
RA(config)#ip route 0.0.0.0 0.0.0.0 1.1.1.2  ---设置静态路由 
    RB
Router>ena
Router#conf t
Router(config)#ho RB   ---修改设备名称
RB(config)#int e0/1
RB(config-if)#ip add 10.1.2.1 255.255.255.0
RB(config-if)#no shu
RB(config-if)#exit
RB(config)#int e0/0
RB(config-if)#no shu
RB(config-if)#ip add 2.1.1.1 255.255.255.0   ---设置端口IP地址
RB(config-if)#exit
RB(config)#ip route 0.0.0.0 0.0.0.0 2.1.1.2   ---设置静态路由 
     测试公网可达
https://i-blog.csdnimg.cn/direct/13b82ac8417e47f794a9ace9e26d0b96.png 
  2)设置ACL匹配必要保护的业务/流量
  利用高级访问控制列表(ACL)可以精确匹配并控制感爱好的数据流,资助确保只有符合特定条件的流量才气通过VPN隧道。
     RA(config)#access-list 100 permit ip host 10.1.1.2 host 10.1.2.2   ---设置高级ACL,精准匹配保护流量
     RB(config)#access-list 100 permit ip host 10.1.2.2 host 10.1.1.2
  3)阶段一策略:加密、完整、认证方式、DH算法(生成密钥资源)
  阶段一重要目的创建IKE安全关联(IKE SA),用于保护随后密钥交换过程的安全通道。在该阶段,两个通信端点(通常是两个IPSec网关)实验密钥交换,以创建一个安全且颠末身份验证的通信会话。
   RA(config)#crypto isakmp policy 10  ---创建一个名为10的ISAKMP策略组
RA(config-isakmp)#encryption 3des   ---利用三重DES(3DES)作为加密算法
RA(config-isakmp)#hash md5  ---利用MD5哈希算法举行完整性检查
RA(config-isakmp)#authentication pre-share  ---认证方式 预共享密钥
RA(config-isakmp)#group 15  ---DH算法
RA(config-isakmp)#exit

RA(config)#crypto isakmp key 123 address 2.1.1.1   ---设置预共享密钥,此中key值为123,对端地址为2.1.1.1
    RB(config)#crypto isakmp policy 10
RB(config-isakmp)#encryption 3des 
RB(config-isakmp)#hash md5
RB(config-isakmp)#authentication pre-share 
RB(config-isakmp)#group 15
RB(config-isakmp)#exit

RB(config)#crypto isakmp key 123 address 1.1.1.1 
  4)阶段二:协商IPSec参数、创建IPSec SA、密钥管理。同时在接口下调用
  一旦阶段一乐成完成,IKE SA创建后,就可以进入阶段二。阶段二的重要目的是创建IPSec安全关联(IPSec SA),用于保护现实数据传输的安全通道。在这个阶段,端点协商用于封装和加密IP数据报文的详细参数。
   RA(config)#crypto ipsec transform-set ie esp-3des esp-sha-hmac    ---创建名为ie的IPSec转换集,利用了3DES作为加密算法和SHA-HMAC作为认证算法。
RA(cfg-crypto-trans)#mode tunnel    ---设置转换集ie在隧道模式下工作
RA(cfg-crypto-trans)#exit

RA(config)#crypto map ie 10 ipsec-isakmp    ---创建名为ie的加密映射,并给它分配了一个优先级数字10。这个映射将利用IKE来协商安全参数。
% NOTE: This new crypto map will remain disabled until a peer
        and a valid access list have been configured.
RA(config-crypto-map)#set peer 2.1.1.1    ---指定与本加密映射关联的对等体(即VPN对端)的IP地址为2.1.1.1。
RA(config-crypto-map)#set transform-set ie   ---将之前界说的名为ie的转换集应用到这个加密映射上
RA(config-crypto-map)#match address 100   ---调用ACL列表
RA(config-crypto-map)#exit

RA(config)#int e0/0
RA(config-if)#crypto map ie   ---在接口下调用加密映射ie
    RB(config)#crypto ipsec transform-set ie esp-3des esp-sha-hmac 
RB(cfg-crypto-trans)#mode tunnel 
RB(cfg-crypto-trans)#exit

RB(config)#crypto map ie 10 ipsec-isakmp 
% NOTE: This new crypto map will remain disabled until a peer
        and a valid access list have been configured.
RB(config-crypto-map)#set peer 1.1.1.1
RB(config-crypto-map)#set transform-set ie
RB(config-crypto-map)#match address 100
RB(config-crypto-map)#exit

RB(config)#int e0/0
RB(config-if)#crypto map ie
  5)测试结果及相关查看命令 
   PCB ping PCA 测试通信
https://i-blog.csdnimg.cn/direct/49acfc28d52b40f59cc57f9e8804f42e.png
https://i-blog.csdnimg.cn/direct/3e00b72931914959874cdc93a3833566.png 
    RA#show crypto isakmp sa   ---查看阶段一状态
https://i-blog.csdnimg.cn/direct/181be9663f384987827a892240660320.png 
RA#show crypto isakmp policy   ---查看阶段一策略
https://i-blog.csdnimg.cn/direct/4827df92e3ae4761ae7950e1b0772012.png
    RA#show crypto ipsec sa  ---查看阶段二状态 
https://i-blog.csdnimg.cn/direct/a459ca68bed34443995c1a41ad36e420.png
RA#show crypto ipsec transform-set    ---查看阶段二策略
https://i-blog.csdnimg.cn/direct/22f9f415fec7461186938d8887656970.png
    RA#show crypto map   ---查看静态map
https://i-blog.csdnimg.cn/direct/57e665285316426fb6fcb9248cb3ca10.png
RA#show crypto engine connections active    ---查看加解密的报文数目
https://i-blog.csdnimg.cn/direct/04f01a3701174c8594779bb0517cdbae.png
厂商产物文档

华为:
https://i-blog.csdnimg.cn/direct/ca2976f6c64a4d45b3f20cdde6db9462.pnghttps://i-blog.csdnimg.cn/direct/07dece9a52e648b48043a2d5f78ccfeb.pnghttps://i-blog.csdnimg.cn/direct/413e83c1c7124e78b7557d65d55a06f5.pnghttps://i-blog.csdnimg.cn/direct/726b4831373f4b249b270f1d1b7381bc.png 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: IPSec VPN