网络层应用

网络层VPN应用

1 引言

1.1 加密技术概述

对称加密:

秘钥:加密与解密使用相同的秘钥。

缺点:秘钥是通信双方协商生成的,生成过程时明文通信,导致秘钥容易泄露。

常用算法:DES、3DES、AES。

非对称加密算法:

使用公私钥加密数据。

公私钥承兑生成、互为加解密关系。

公私钥不能互相推算。

双方交换公钥。

使用对方公钥加密以实现机密性、使用自己的私钥进行签名以实现身份验证。

常见算法:RSA、DH。

完整性算法/hash值算法:MD5、SHA。

一、VPN概述

为了防止信息泄露,可以在总部和分支机构之间搭建一条物理专网连接,但其费用会非常昂贵,此时可以考虑采用VPN的方案进行解决。

VPN(全称:Virtual Private Network)虚拟专用网络

采用隧道技术:隧道两端封装、解封装,用以建立数据通道

  1. 在VPN中,专用路由器设置会让它们彼此连接的站点上,并且它们通过公共线路互连。此时,在公共线路,有专门的通信网络无法读取通信的来自外部的内容,如加密建成后,就不必担心的是窃听通信内容

  1. VPN常见技术

隧道技术:隧道两端封装、解封装,用以建立数据通道

身份认证:保证接入VPN的操作人员的合法性、有效性

数据认证:数据在网络传输过程中不被非法篡改

加解密技术:保证数据在网络中传输时不被非法获取

密钥管理技术:在不安全的网络中安全地传递密钥

  1. VPN封装原理

VPN的基本原理是利用隧道(Tunnel)技术,对传输报文进行封装,利用VPN骨干网建立专用数据传输通道,实现报文的安全传输。

隧道技术使用一种协议封装另外一种协议报文(通常是IP报文),而封装后的报文也可以再次被其他封装协议所封装。

在上图中展示的网络中,如果存在VPN隧道,则数据传输如下图所示。当分支机构员工访问总部服务器时,报文封装过程如下:

、按VPN的协议分类:

VPN的隧道协议主要有三种,PPTP、L2TP和IPSec,其中PPTP和L2TP协议工作在OSI模型的第二层,又称为二层隧道协议;IPSec是第三层隧道协议。

1两端相互访问较频繁,传输的数据为机密数据,且任何用户都能访问对端内网,无需认证时,可采用IPSec方式。

2只有一端访问另一端,且访问的用户必须通过用户认证时,可采用L2TP方式

如果只有一端访问另一端,传输数据为机密数据,且访问的用户必须通过用户认证,可采用L2TP over IPSec方式,安全性更高

3GRE over IPSec隧道和IPSec over GRE隧道都可以用来安全的传输数据,两者的区别在于对数据的封装顺序不同。GRE over IPSec在报文封装时,是先GRE封装然后再IPSec封装;IPSec over GRE在报文封装时,是先IPSec封装再GRE封装。

2、按VPN的应用分类:

(1)Access VPN(远程接入VPN):客户端到网关,使用公网作为骨干网在设备之间传输VPN数据流量;

(2)Intranet VPN(内联网VPN):网关到网关,通过公司的网络架构连接来自同公司的资源;

(3)Extranet VPN(外联网VPN):与合作伙伴企业网构成Extranet,将一个公司与另一个公司的资源进行连接。

当前比较流行的VPN技术:SSL VPN、IPSec VPN、GRE+IPSec VPN

PPTP(点对点协议)

PPTP属于点对点应用,比较适合远程的企业用户拨号到企业进行办公等应用,工作在OSI模型的第二层,只适合windows系统。

L2TP(第2等隧道协议)

第2等隧道协议(L2TP)是IETF基于L2F开发的PPTP的后续版本,工作在OSI模型的第二层。

IPSec(三层隧道协议)

第三层隧道协议,也是最常见的协议。当隧道模式使用IPSEC时,其只为通讯提供封装。使用IPSec隧道模式主要是为了与其他不支持IPSec上的L2TP或者PPTP VPN隧道技术的路由器、网关或终端系统之间的互相操作。

SSL VPN

SSL协议提供了数据私密性、端点验证、信息完整性等特性。SSL协议由许多子协议组成,其中两个主要的子协议是握手协议和记录协议(对称加密和非对称加密向结合的方式进行数据的交换)。

典型的SSL VPN应用:Open VPN,这是一个比较好的开源软件。Open VPN允许参与建立VPN的单点使用预设的私钥,第三方证书,或者用户名/密码来进行身份验证。它大量使用了OpenSSL加密库,以及SSLv3/TLSv1协议。OpenVPN能在Linux、xBSD、MacOS上运行。它并不是一个基于Web的VPN软件,也不能与IPSec及其他VPN软件包兼容。

二、IPsecVPN技术

  1. IPsecVPN概述

一组协议的集合

◎是一组基于网络层的应用密码学的安全通信协议簇,是一个开放的协议簇,也考虑长远

性的要求(支持ipv4 和ipv6)

◎保护的是网络层及上层流量,主要保护tcp,udp,idmp等隧道的ip

数据包

◎属于点到点VPN ,可以在2家企业之间建立VPN隧道。

◎定义:指采用IPSec协议来实现远程接入的一种VPN技术,IPSec全称为Internet Protocol Security,在公网上为两个私有网络提供安全通信通道,通过加密通道保证连接的安全——在两个公共网关间提供私密数据封包服务。

2IPsecVPN优点:

可以提供安全的访问服务

◎机密性、完整性、数据源鉴别、不可否认性、抵御重放攻击

什么是重放攻击?

重放攻击,web漏洞中称会话重放漏洞,又称重播攻击、回放攻击,是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。重放攻击可以由发起者,也可以由拦截并重发该数据的敌方进行。攻击者利用网络监听或者其他方式盗取认证凭据,之后再把它重新发给认证服务器

3ipsec架构/协议簇

  1. 两个工作模式:

◎传输模式

◎隧道模式

  1. 两个通信保护协议:

◎AH:只支持鉴别算法(完整性校验)

◎ESP:支持加密和鉴别算法

3.密钥交换管理协议(IKE):SA(安全联盟)

◎阶段一:主模式,野蛮模式(又称快速模式)

◎阶段二:配置感兴趣流

(4)传输模式

◎应用场景:用于主机之间端到端通信的数据保护

◎封装方式:不会改变原始IP包头,在原始包头后插入IPSec包头

◎AH协议

1.完整性校验(通过哈希函数(MD5、SHA1)产生的校验来保证)

2.不管是传输模式还是隧道模式都会验证整个数据报

◎ESP协议

1.加解密(使用对称加密算法DES、3DES、AES)

2.完整性校验(通过哈希函数(MD5、SHA1)产生的校验来保证)

3.ESP在传输模式下,只对数据进行加密和完整性校验

4.ESP在隧道模式下,是对整个原始报文进行加密和校验

AH在不同模式下的封装:

在传输模式下:

ESP在不同模式下的封装:

传输模式:

(5)隧道模式

◎应用场景:用于私网和私网之间通过公网进行通信,简历VPN通道

AH在不同模式下的封装

在隧道模式下封装: 

ESP在不同模式下的封装

在隧道模式下封装:

(6)AH和ESP对比

区别与联系

AH协议

ESP协议

名字

验证头部协议

封装安全载荷协议

IP协议封装的协议

IP协议

51

50

数据完整性校验

√全部

支持但不验证头

SPI

32比特,用于标识有相同IP地址和相同安全协议的不同SA。由SA的创建者定义,只有逻辑意义

ESP头部,32位,语义与AH一致

序列号

32比特,一个单项递增的计数器,用于防止重放攻击,SA建立之初初始化为0,序列号不允许重复

ESP头部,32位,语义与AH一致

认证数据

摘要或者指纹,用于认证,由SA初始化时指定的算法来计算,长度=整数倍32位比特,变长(通信双方必须采用相同的HMAC算法和密钥,认证数据是HMAC算法结果,被称为数据报的完整性校验值ICV,)

ESP验证数据,可选,选择ESP验证服务时使用,语义和AH一致(但具体验证区域不同)

报文格式

AH头部+AH载荷

ESP头部+ESP净荷+ESP尾部(填充、填充长度和下一个头字段)+ESP验证数据(可选)

传输模式

保护IP载荷

保护IP载荷

传输模式验证区域

IP头部+AH头部+TCP/UDP头部+数据(可变字段除外)

ESP头部+ TCP/UDP头部+数据+ESP尾部

传输模式加密区域

ESP净荷+ESP尾部

隧道模式

保护整个IP包

保护整个IP包

隧道模式验证区域

新IP头部+AH头部+ IP头部+ TCP/UDP头部+数据(可变字段除外)

ESP头部+IP头部+TCP/UDP头部+数据+ESP尾部

隧道模式加密区域

ESP净荷+ESP尾部

算法

验证

验证、加密(至少有一种)

服务

无连接的数据完整性:通过哈希函数产生的校验来保证
数据源身份认证:通过计算校验码时加入一个共享密钥实现
防止重放攻击:AH报头的序列号可以防止重放攻击

除了AH已有的三种服务之外(可选),还提供数据包加密和数据流加密

与NAT的联系

NAT会对IP头进行修改导致AH协议下的IPsec不能穿越NAT

如果是NAT对IP头进行修改,ESP能适用于NAT。但如果NAT为IP地址映射+端口映射(端口改变),则ESP协议下的IPSec都不能适用NAT(考虑

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿凯6666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值