首页 > 其他分享 >IPSec VPN

IPSec VPN

时间:2024-08-14 12:58:11浏览次数:7  
标签:IP crypto --- RA RB VPN config IPSec

目录

一、背景

二、简介

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:在传输模式下只加密数据部分,并可选择对数据部分进行完整性检查。

    场景:加密点和通信点在同一台设备上,业务本身可达

   隧道模式:将整个IP包(包括原始IP头和数据部分)封装在一个新的IP包中。这个新的封装IP包具有新的IP头部。

    封装后报文格式:IPH(新)+安全协议(AH/ESP)+IPH(原始)+DATA。新的IP头大多情况下是封装公网的IP地址实现公网上通信,原始的IP头指私网IP地址。

    AH:在隧道模式下,AH会对整个封装后的IP包(包括新的IP头和原始的整个IP包)进行完整性检查和认证。

    ESP:在隧道模式下会对整个原始IP包进行加密,并封装在一个新的IP包中。ESP可以选择对加密后的数据进行完整性检查,但不保护新的IP头部。

    场景:加密点和通信点不在同一台设备上,业务本身不可达

  区别:封装后是否会产生新的报文;业务本身是否可达

  ③安全联盟(SA):

  作用:在两个通信实体之间建立一个安全通信的参数集合(看成是VPN双方安全参数的约定,是一份安全通信“合同”)

  三要素:安全参数索引(SPI)、安全协议、目的地址

    安全参数索引:唯一的标识符,用于区分不同的SA。SPI是方向性的,即发送方和接收方各自有一个用于加密和解密的SPI。

    安全协议:使用AH/ESP

    目的地址:跟谁建立VPN

  安全联盟数据库(SADB):存储所有活跃SA的数据库

  ④互联网秘钥交换协议(IKE):

  作用:实现在不安全的互联网上进行VPN交互,定义VPN双方的协商流程

  阶段一:IKE SA

  基于UDP端口号500

  作用:建立一个安全的、加密的通道,用于接下来进行的密钥协商和SA协商。

  模式:主模式、野蛮模式

    主模式:最高的安全性,通过六个消息交换来完成,建立加密和认证。

    第一对:SA交换,协商确认双方构建安全隧道策略的过程;

    第二对:密钥交换

    第三对:ID信息和验证数据的交换,验证对等体。    

    野蛮模式:快速,使用三个消息交换来完成。 

    第一条:发起方发送本地IKE信息,包括建立IKE SA所使用的参数、与密钥生成相关的信息和身份验证信息。

    第二条:接收方对收到的第一个消息进行确认,查找并返回匹配的参数、密钥生成信息和身份验证信息。

    第三条:发起方通过第三条消息回应验证结果,并成功建立IKE SA。

    区别: 交互的报文数量、对等体标识

    场景:主模式适合安全需求高;野蛮模式适合已知对方所使用的VPN策略能够快速建立VPN

  阶段二:IPSec SA

  作用:在已经建立的IKE SA通道上协商实际的IPSec SA,用于保护IP数据包的传输

  模式:快速模式。过程与野蛮模式相似

                

3、特点

  不支持组播,也就是说不能直接使用路由协议(需要额外的配置或特定的网络设计让IPSec VPN支持组播)

  分支之间无法直接访问,在一些IPSec VPN部署场景中,存在所谓的“孤岛”现象,它们需要通过一个中心点或总部来进行路由和通信

  IPSecVPN是一对一的,端对端建立的


三、执行流程

  数据包出站:

  数据包入站:


四、基本配置

  厂商间IPSec VPN技术的执行流程、协议架构等大同小异,差别主要还是在配置上。以下将通过思科的环境,来为大家展示相应配置,其他厂商可以参考厂商的产品文档

  实验要求

    RA为企业分支网关,RB为企业总部网关,分支与总部通过公网建立通信。分支子网为10.1.1.0/24,总部子网为10.1.2.0/24。

    企业希望对分支子网与总部子网之间相互访问的流量进行安全保护。分支与总部通过公网建立通信,可以在分支网关与总部网关之间建立一个IPSec隧道来实施安全保护。由于维护网关较少,考虑采用手工方式建立IPSec隧道。

  IPSec配置前的准备

   四步走:确定保护的流量/业务、确定保护的路径、确定保护的策略、确定保护的强度

   通过ACL来确定保护的流量,使用VPN路径进行保护,根据需要的保护强度确定两边安全策略

  思科

  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   ---配置静态路由 

 测试公网可达

 

  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 测试通信

 

RA#show crypto isakmp sa   ---查看阶段一状态

 

RA#show crypto isakmp policy   ---查看阶段一策略

RA#show crypto ipsec sa  ---查看阶段二状态 

RA#show crypto ipsec transform-set    ---查看阶段二策略

RA#show crypto map   ---查看静态map

RA#show crypto engine connections active    ---查看加解密的报文数量

厂商产品文档

华为:

 

标签:IP,crypto,---,RA,RB,VPN,config,IPSec
From: https://blog.csdn.net/2301_80471796/article/details/141124025

相关文章

  • 了解经典的 MPLS L3VPN 网络架构
    1.多协议标签交换技术MPLS的概念        MPLS(Multi-ProtocolLabelSwitching,多协议标签交换技术),传统网络中就拥有了3种经典转发实现,它们分别是:L2交换转发L2.5标签转发L3路由转发        MPLS协议则作用于L2.5层,其将L3路由技术和L2交换技术相......
  • mpls-vpn实验
    实验需求客户X及Y各自有2个站点,现需要通过MPLSVPN实现站点之间的互联,分别对应VPNX和VPNY。互联接口、AS号及IP地址信息如图,客户X站点与PE之间采用OSPF交互路由信息,客户Y站点与PE之间采用BGP交互路由信息。数据规划配置项描述PE1PE2VPN名称VPNXVPNYVPNXVPNYRD100:1200:1100......
  • Docker②_安装部署Anylink_VPN
    目录1.Anylink项目介绍2.Docker安装部署Anylink2.1安装Docker环境2.2 pull镜像2.3创建密码2.4修改自己的配置文件2.5 启动Anylink2.6Linux虚拟机开放端口2.6交换机防火墙对外开放ssl端口2.7 检查状态1.Anylink项目介绍        AnyLink是Tmax......
  • Nginx反向代理,代理H5前端 ,java后端,使用服务器+finalshell+vpn
    使用前确认已经安装好nginx,这里我使用的是普通的nginx,注意不是Docker版本的nginx输入nginx-t查询一下,自己的nginxconfig.nginx在那个包下,方便查询 使用catnginx.conf命令,进入需要配置的conf中(这个是我使用的server[server{listen82;s......
  • L2TP VPN
    目录一、实验目的二、实验环境三、实验内容1、实验规划:2、关键内容:3、实施步骤:四、实验总结一、实验目的1、了解L2TP的实现原理;2、掌握Client-Initiated场景下的L2TP的配置。二、实验环境华为eNSP模拟器,实验拓扑如下:图移动办公用户通过L2TPVPN隧道访问企业......
  • dpdk下ipsec内联卸载(inline offload)测试
    使用intel82599网卡完成。介绍本文介绍了数据平面开发套件(DPDK)框架中的内联IPsec加速支持实现,特别关注英特尔®8259910千兆以太网控制器系列的功能和支持。内联IPsec可用于实现IPsec感知系统,该系统具有比旁路辅助和加速硬件更好的延迟,前提是支持的算法合适。......
  • 涉及VPN、金融、健康服务等类型应用上架政策突变
    大家好,我是牢鹅!今天为大家分享GooglePlay2024年7月17日下发的政策更新,此次政策更新距上次(4月5日)政策大更新仅过去三个月。前段时间牢鹅跟谷歌的人有聊过,今年他们的目标很明确,提高开发者的门槛,想要更优质的应用跟开发者,足以说明谷歌对开发者的监管趋近严格。接下来牢鹅将围绕......
  • IPSEC VPN
    IPSECVPN1.IPsec1.1IPSec基础IPSec(IPSecurity)是IETF定义的一组协议,用于增强IP网络的安全性。IPSec协议集提供如下安全服务:        数据完整性(DataIntegrity)        认证(Autentication)        保密性(Confidentiality)        应用......
  • MPLS-EVPN笔记详述
    目录EVPN简介:EVPN路由:基本四种EVPN路由扩展:EVPN工作流程:1.启动阶段:2.流量转发:路由次序整理:总结:EVPN基本术语:EVPN表项:EVPN支持的多种服务模式:简介:1.PortBased:简介:配置实现:2.VLANBased:简介:配置实现:3.VLANBundle:简介:配置实现:VLAN-AwareBundle:简介:M......
  • [计算机网络] VPN技术
    VPN技术1.概述虚拟专用网络(VPN)技术利用互联网服务提供商(ISP)和网络服务提供商(NSP)的网络基础设备,在公用网络中建立专用的数据通信通道。VPN的主要优点包括节约成本和提供安全保障。优点:​VPN可以节约成本​为安全提供保障2.VPN类型VPN主要有三种应用方式:远程接入VP......