设为首页收藏本站language→→ 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 2902|回复: 1
收起左侧

清默网络--IPSec VPN机制详解

[复制链接]
发表于 2016-5-17 13:42:20 | 显示全部楼层 |阅读模式
本帖最后由 霸王龙小分队 于 2017-7-3 17:50 编辑

一.摘要
        IPSec VPN是基于VPN技术和加密学的一项应用较广泛的技术。建立隧道,并对传输的数据进行加密,对内容进行验证,对源进行认证。IPSEC VPN不是一个单独的协议,它包括:AH 协议,ESP协议,IKE协议以及用以加密和认证的一些算法。

        二.论文背景
        IP数据包本身不具有任何的安全性,不能保证数据的机密性,数据的完整性,以及数据源的确认。IPSec提供了标准,健壮且包含广泛的机 制来保证IP以上层的安全。因为IPSec安全,经济,便利,可靠,可用,组网灵活,良好的可拓展性,所以IPSec VPN 在实际应用中非常广泛。
        三.IPSec VPN 的结构


        (一).VPN技术
        虚拟专用网络(Virtual Private Network ,简称VPN)指的是在公用网络上建立专用网络的技术。之所以称为虚拟网,主要是因为整个VPN网络的任意两个节点之间的连接并没有传统专网所需的端到端 的物理链路,而是架构在公用网络服务商所提供的网络平台,如Internet之上的逻辑网络,用户数据在逻辑链路中传输。它涵盖了跨共享网络或公共网络的 封装、加密和身份验证链接的专用网络的扩展。VPN主要采用了隧道技术、加解密技术、密钥管理技术和使用者与设备身份认证技术。
        VPN可以按工作在TCP/IP的哪一层那分类:如数据链路层的VPN:PPTP,L2TP等,网络层的VPN:IPSec,GRE。


        (二).加密与认证技术
        1.加密技术
        加密技术主要是对发送的数据信息进行加密,让截取到信息的人无法得知真正地数据,加密技术一般分为
        1古典密码学,如置换和代替,最出名的莫过于凯撒大帝密码。
        2对称密码加密如DES,3DES,AES等。
        3不对称密码加密如RSA等
        2.密钥交换
        DH算法能根据双方的已知信息生成相同的密钥。这样就避免了密钥在网络上传输时被窃听的可能性。
        3.数据完整性
        完整性主要是保证数据在传输的过程中没有被别人更改,常用的如MD5,SHA。
        4.对源的认证
        对发送数据的一方进行认证
        常用的有PRE-SHARE, RSA数字签名,数字证书。


        (三).IPSEC VPN的两种模式
        1.传输模式
        在源IP头部后加上IPSEC头部,用于端到端的场合。


        


        2.隧道模式
        在源IP头部前加上新的IP头部和IPSEC头部,用于网关到网关的场合。


        


        (四).IPSEC协议中的AH与ESP
        1.AH (Authentication Header)身份认证头部


        


        特点:1.只能对数据进行认证,不提供数据加密功能。
                2.对整个IP数据包进行认证,包括IP头部。
                3.不能穿越NAT,所以只能用于端到端的场合。


        2.ESP(Encapsulating Security Payload)封装安全负载


        


        特点:1.不对头部进行认证,提供数据加密的功能
                2.只对IP包头后面的数据进行认证,不对IP头部认证。
                3.能穿越NAT。

        (五).IPSEC SA(SecurityAssociation)安全关联
        为正确封装及提取IPSec数据包,有必要采取一套专门的方案,将安全服务/密钥与要保护的通信数据联系到一起;同时要将远程通信实体与 要交换密钥的IPSec数据传输联系到一起。换言之,要解决如何保护通信数据、保护什么样的通信数据以及由谁来实行保护的问题。这样的构建方案称为安全关 联
        SA是两个应用IPsec实体(主机、路由器)间的一个单向逻辑连接,决定保护什么、如何保护以及谁来保护通信数据。它规定了用来保护数 据包安全的IPsec协议、转换方式、密钥以及密钥的有效存在时间等等。SA是单向的,要么对数据包进行“进入”保护,要么进行“外出”保护。具体采用什 么方式,要由三方面的因素决定:第一个是安全参数索引(SPI),该索引存在于IPSec协议头内;第二个是IPSec协议值;第三个是要向其应用SA的 目标地址。通常,SA是以成对的形式存在的,每个朝一个方向。既可人工创建它,亦可采用动态创建方式。SA驻留在安全关联数据库(SAD)内。
        SA提供的安全服务取决于所选的安全协议(AH或ESP)、SA模式、SA作用的两端点和安全协议所要求的服务。

        (六).IPsec IKE:Internet 密钥交换协议
        IPSEC SA可以手工创建,也可以通过IKE动态创建。IKE是一个混合协议,由ISAKMP,Oakley密钥交换和SKEME组成,它定义了一个适当的密钥交换机制。IKE是一个双阶段,多模式的协议。
        IKE在第一阶段中确认远端对等体的身份,为两个对等体建立一条安全的,需要认证的通道,自此阶段协商认证算法(MD5),生成密钥参数 (DH),身份认证方法(PRE-SHARE,RSA,或数字签名)。在此阶段有两种模式:主模式(Main Mode)以及主动模式(Aggressive Mode),主模式发送6个数据包,而主动模式发送3个数据包,主模式比主动模式更安全,主动模式比主模式更快速。
        IKE在第二阶段保护数据并俄日IPSEC建立SA,协商封装使用的协议(AH,ESP),加密数据使用的算法 (DES,3DES,AES),需要被保护的IP流量。在此阶段只有一种模式:快速模式(Quick Mode)。当IKE第二阶段结束以后,会建立两条单项的IPSEC SA

        四.IPSEC VPN的工作原理
        数据包输出处理过程:
        (1) 主机(路由器、防火墙) 向通信对等体发送消息,经过应用层协议、传输层、IP 层处理形成IP 数据包;
        (2) IPSec 驱动接受到IP 包后,检查SPD ( IPSec集成于操作系统中的情况) 数据库,查看数据包是否需要保护以及需要受何种保护;
        (3) 如需IPSec 处理,则通过指针在SAD 数据库中找到SA (或SA 束) ;如为空,则通知IKE 进程开始与对方进行安全协商,得到SA ,并填充到SAD 中,与SPD 数据库关联,以便以后查找;
        (4) IPSec 驱动程序使用出站SA 对数据包进行签名(完整性检查) 与加密处理,并将数据包递交给IP 层处理后交给链路层发出;

        数据包输入处理过程:
        (1) 主机(路由器、防火墙) 网络适配器驱动程序收到数据包后交给IPSec 驱动程序;
        (2) IPSec 驱动程序取出SPI ,目标IP 地址,判断出IPSec 通信协议的类型( A H/ ESP) , 进一步查找SAD 数据库,找到相应入站SA (或SA 束) ,并依据SA检查完整性签名或者对数据包解密;
        (3) 根据验证和解密后数据报文的内部IP 地址查询安全策略数据库SPD ,如果安全服务与SPD 项相符,将外部IP 头连同IPSec 头一起剥去,交与IP 层处理。
        (4) 将数据包提交给TCP 驱动程序处理,最后交与应用程序处理。
        以上就是IPSec 的整个工作过程,比较复杂,但对用户来说是透明的,如果是路由器或防火墙,则根据路由表或规则进行IP 包的转发,确保IPSec 和IKE 数据
流不会遭拒绝。

        五.IPsec与GRE
        在功能方面,由于IPSEC VPN虽然很安全,但是不支持多播协议,而GRE VPN支持多播,可以运行使用多播更新的路由协议,但是不能对数据进行加密。GRE over IPsec就是专门解决这个问题的。既可以让总部和分部像一个本地网络一样可以运行路由协议协议,又可以对传输的GRE数据进行加密

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2024-12-26 16:52 , Processed in 0.090446 second(s), 13 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

快速回复 返回顶部 返回列表