专业课笔记——虚拟专用网vpn技术

837 阅读5分钟

虚拟专用网vpn技术

vpn的实现技术

VPN是在Internet等公共网络基础上,综合利用隧道技术、加解密技术、密钥管理技术和身份认证技术实现的。

1.隧道技术

  • 隧道技术是VPN的核心技术,为一种隐式传输数据的方法。主要利用已有的lnternet等公共网络数据通信方式,在隧道(虚拟通道)一端将数据进行封装,然后通过已建立的隧道进行传输。在隧道另一端,进行解封装并将还原的原始数据交给端设备。
  • 在VPN连接中,可根据需要创建不同类型的VPN隧道,包括==自愿隧道==和==强制隧道==两种。 网络隧道协议可以建立在网络体系结构的第二层或第三层

vpn最关键的技术就是封装,比如加tcp头,ip头,各种协议帧头就是封装。为了保证该包不被打开,还会进行加解密。 强制隧道就是发出的数据都会被封装,自愿隧道是参与建立了隧道,从而可以选择不通过隧道进行访问

现有两种类型的网络隧道协议:二层隧道协议和三层隧道协议,它们的本质区别在于用户的数据包是被封装在哪种数据包中在隧道中传输的:

  • 二层隧道协议,它主要应用于构建远程访问虚拟专网 (Access VPN),例如L2TP协议。
  • 三层隧道协议,它主要应用于构建企业内部虚拟专网(Internet VPN)和扩展的企业内部虚拟专网(ExtranetVPN),例如GRE和IPSec.
  • 传输协议被用来传送封装协议。
    • IP是一种常见的传输协议,这是因为IP具有强大的路由选择能力,可以运行于不同介质上,并且其应用最为广泛。
  • 封装协议被用来建立、保持和拆卸隧道。
  • 承载协议是被封装的协议,例如PPP协议。 L2TP数据包ip封装

隧道技术:L2TP

  • L2TP (Layer Two Tunneling Protocol,二层隧道协议),属于L2数据链路层协议,是一种基于连接的虚拟隧道协议,用于在隧道之间传递PPP 数据帧。
  • LAC表示L2TP访问集中器(L2TP Access Concentrator ),支持客户端的L2TP,它用于接收客户端呼叫和建立隧道,是隧道的起点。
  • LNS表示L2TP网络服务器(L2TP Network Server),是PPP端系统上用于处理L2TP协议服务器端部分的软件,是隧道的终点。

在这里插入图片描述

2.加解密技术

非对称加密进行密钥协商和交换,对称加密进行数据加密

密钥管理技术

密钥分发采用手工配置和采用密钥交换协议动态分发。

身份认证技术

VPN实际应用中,身份认证包括信息认证和用户身份认证。信息认证用于保证信息的完整性和通信双方的不可抵赖性,用户身份认证用于鉴别用户身份真实性。 采用身份认证技术主要有PKI体系和非PKI体系。PKI体系主要用于信息认证,非PKI体系主要用于用户身份认证。

  • PKI体系通过数字证书认证中心CA (Certificate Authority),采用数字签名和哈希函数保证信息的可靠性和完整性。如SSL VPN是利用PKI支持的SSL协议实现应用层VPN安全通信。
  • 非PKI体系一般采用“用户名+口令”的模式。

密钥管理和分发

密码学基础和算法细节此处省略

基于对称加密的对称密钥分发

A有主密钥ka(只有A和KDC知道),B有主密钥kb(只有B和KDC知道)

密钥分发方案: ( 1)A向KDC发送包请求一个会话密钥来保护到B的逻辑连接的安全,其中包括A﹑B的身份以及该次传输的唯一标识N1,称为临时交互号(nonce)。这个临时交互号可以是一个时间戳截﹑计数器或者一个随机数。最低要求是每次请求的临时交互号是不同的,而且为了防止伪造还要求敌手猜出该临时交互号是困难的 (2) KDC返回的信息是用Ka加密的,因此只有A能成功的读取该信息并且A知道是由KDC发来的。该信息中包含A想获取的两个部分:

  • 用于会话的一次性会话密钥Ks
  • 之前的请求信息,包括临时交互号。A可以借此判断收到的消息是否是重放的消息 另外,该信息中也包含B想获取的两个部分:
  • 用于会话的一次性会话密钥Ks
  • A的标识(如A的网络地址)IDA 后面这两个部分由Kb加密,发送给B,以达到建立连接并校验A的身份

(3) A存储将要使用的会话密钥,把来源于KDC的信息发送给B,即E( Kb[Ks|[IDA])·因为这个消息是用Kb加密的,所以可以防止窃听。B现在知道会话密钥为Ks,想建立连接的另一方是A及该信息是由KDC加密的(因为是使用Kb加密的)。 (4) B使用新的会话密钥Ks,加密临时交互号N2,并将结果发送给A。 (5)同样,A使用Ks ,加密f (N2)后发给B,其中f是一个执行N2转换的函数。 这一步能保证B在步骤(3)中收到的信息没有受到重放攻击

注意:实际的密钥分发方案只包括步骤(1)至步骤( 3),步骤(3)至步骤(5)执行认证功能。