最新【网络安全】VPN数据安全原理与应用

本文详细介绍了IPsec原理,包括对称加密、非对称加密、哈希算法以及IKE和ESP的加密机制。讨论了L2L-VPN的配置,涉及策略集、共享秘钥、NAT-T和PPPOE在宽带接入中的应用。还探讨了数字证书、PKI和SSL在网络安全中的角色。
摘要由CSDN通过智能技术生成
文章目录

IPsec原理

密码学
密码学原理
加密算法:
对称加密算法:
对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥
分类
DES
3DES
AES
RC4 一般适用于软件实现,如浏览器

优点
安全
速度快
紧凑性(加密前后数据的大小变化不大) 紧凑

缺点
密钥管理难
密钥生成 生成的密钥非常多,n(n-1)/2
密钥分发 需要事先建立关系交换密钥 容易被中间人劫持
密钥存储 数量多,存储不方便
密钥吊销
不支持数字签名
不支持不可否认性

非对称加密算法:
在这里插入图片描述

密钥对:公钥+私钥,公钥大家都知道,私钥只有本地知道,
公钥加密私钥解,私钥加密公钥解。加解密双方各有一对密钥对。发给谁就用谁的公钥!

加密和解密用的密钥是不同的,这种加密方式是用数学上的难解问题构造的,
通常加密解密的速度比较慢,适合偶尔发送数据的场合。优点是密钥传输方便。常见的非对称加密算法为RSA、ECC和EIGamal
分类 DH RSA ECC
优点
安全

密钥管理方便
密钥生成 只需要生成一把私钥,而公钥根据参与者多少生成多少
密钥分发 不需要事先建立关系交换密钥 不怕被劫持,即使被窃取也无法解密
密钥存储 数量少,容易存储
密钥吊销
支持数字签名
支持不可否认性

缺点
机密速度慢
紧凑性 密文很长 一般是明文的2倍

对称&非对称
一般对称算法用来对数据加密,非对称算法对对称算法的密钥进行加密,实现密钥分发
安全
紧凑
速度快
密钥管理方便
支持数字签名
支持不可否认性

散列算法

MD5 定长输出 输出128bits
SHA 定长输出 输出160bits

现在有很多MD5破解网站
所以md5加密很可能会被破解,不安全
MD5、SHA,用于实现数据完整性校验。

哈希算法原理

特征:
1、雪崩效应:明文有任何的修改,hash全局改变;
2、不可逆向:无法根据哈希值得到明文;
3、固定输出:128bit、160bit
功能:
1、完整性校验
2、安全性校验

哈希算法的应用
网盘秒传
软件下载(安全验证)

密码学应用
数字签名
组件
HASH算法
非对称加密算法
功能
不可抵赖性
用签名者的公钥可以解开HMAC 证明数据是签名者发送的
但是接收方得到的“签名者的公钥”有可能已经在途中被篡改
所以这里还不能说明这个签名者就是我们认定的那个发送者–这便是数字证书解决的问题
很多人忽略了公钥的正确性,凭什么我们得到的便是那个发送方的呢?
数据完整性 HASH值相同证明明文没有被篡改

实现
发送方
1 签名者对明文进行hash计算
2 签名者用本地私钥对hash出来的散列值加密
3 加密后的散列值放在密文尾部一起发送出去
接收方
1 用签名者的公钥解开加密的散列值
2 用明文的散列和刚用公钥解开的散列进行对比

数字证书
组件
对等体公钥
对等体姓名,组织,地址
证书有效期
CA的数字签名
功能
证明对等体的身份

实现
发送方
向CA注册,涉及的内容包括
姓名,地址,组织
公钥
证书有效期
向CA获取数字证书,并添加在密文后面
第三方 CA
对对等体的信息进行数字签名-用CA的私钥加密用户信息的hash值
接收方
向CA获取公钥,用公钥解开CA的数字签名,对比hash值
证明CA身份
同时证明了这个公钥持有者便是那个发送者
用证书夹带的公钥解开发送者的数字签名,对比hash值
证明数据完整性和不可抵赖性

PKI
组件
CA
RA
数字证书
版本 X.509v3
组件
对等体公钥
对等体姓名,组织,地址
证书有效期
CA的数字签名
对等体
分发机制 LDAP HTTP CRL

加密系统
实现框架
1 用对称算法实现明文加密
2 用非对称算法实现密钥分发
3 用数字签名实现数据完整性和不可抵赖性
4 用数字证书实现身份认证
实现过程
发送方
1 用本地随机对称密钥对明文进行加密
2 用接受者的公钥对随机对称密钥进行加密
3 用私钥加密的散列值附加在密文后面
3.1 即数字签名
4 用数字证书附加在数字签名后面
接受方
1 用本地私钥对加密的对称密钥进行解密
2 用对称密钥对密文进行解密
3.1 证明CA本身合法性
3 用CA的公钥验证数字证书合法性
加密系统 3.2 证明数字证书中的公钥便是发送方
4 用发送方的公钥解开发送方的数字签名
4.1 证明密文的合法性和完整性
逻辑推理过程
1.数字证书可以证明发送方的身份
2.用数字证书中夹带的发送方的公钥解开数字签名–证明这必定是发送方的签名
3.用本地私钥解开对称密钥,用对称密钥对密文解密
4.对明文做的hash与数字签名中的hash对比,证明数据完整性
应用举例
HTTPs/SSL
服务端
通过数字证书(夹带公钥)发送给客户端
客户端 本地浏览器如i.e.随机生成对称密钥,用服务端的公钥加密本地对称密钥后发送给服务端,此后双方便都有了密钥
IPsec

IP security 是一套完整的加密系统,可以实现数据的安全性、
完整性、不可抵赖性、防重放。(IPsec用于加密网络及网络层以上的数据)
在这里插入图片描述
在这里插入图片描述

SSL VPN 在传输层以及以上 SSL+HTTP = HTTPS
IPSec VPN在网络层以及以上
P2TP L2TP Windows电脑内置的,这俩不安全,真正使用都是上面的两种
VPN全称是:virtual private network 虚拟私有网
在这里插入图片描述

VPN皆可以在路由器上,防火墙上部署,也可以在专业的VPN网关上部署
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

ISAKMP包:
在这里插入图片描述

ESP包:上层的包已经看不到
在这里插入图片描述

IPsec组件

IKE 互联网密钥交换
在这里插入图片描述

IKE的作用
提供协商安全参数和创建认证密钥的框架
协商安全参数
isakmp policy
transform
交换公共密钥 DH
对等体身份认证
pre-share
数字证书

IKE组件
ISAKMP
在这里插入图片描述

运行层次
基于UDP应用层
端口号
500
4500
作用 提供了框架

Oakley
作用
使IKE在不同的环境下面可以被应用
使IKE的拓展性更好,如应用在路由协议下

SKEME
作用
定义IKE密钥交换的机制
可以是DH,可以是RSA,使密钥交换机制更加灵活

Oakley SKEME比较少用

IKE协商过程
IKE阶段
第1阶段
作用
在对等体之间协商一条ISAKMP AS隧道 为IKE阶段二提供安全通道
身份认证 数据源认证
模式 主模式
IKE分组
第1,2个分组
作用 交换策略集
第3,4个分组
作用 DH密钥交换
第5,6个分组
作用 对等体身份认证 IKE5,6分组

第2阶段
作用
在对等体之间建立IPsec AS为后续的用户数据通信提供安全通道
模式 快速模式

IKE模式
主模式 Main Mode
主动模式 Aggressive Mode 除了EzVPN用主动模式外,其他VPN类型都是主模式
快速模式 Quick Mode
在这里插入图片描述
在这里插入图片描述

并不是所有的路由器都支持3DES,如果不支持,需要买授权码激活
在这里插入图片描述

IKE安全关联
ISAKMP AS
作用 为第二阶段分组协商过程提供安全通道
IPsec SA
作用 提供数据的加解密
特点
单向的
发送方的加密AS等于接收方的解密AS
接收方的加密AS等于发送方的解密AS
lifetime 默认1小时重新计算一次
SPD
IKE Security Policy Database–安全策略数据库
加密算法
hash算法
IPsec模式
密钥
密钥生存周期
SAD
AS Database–AS数据库
目的IP地址
SPI号
IPsec协议
ESP
AH
查看
show crypto ipsec as

IKE-debug
状态
MM_NO_STATE 1,2个分组
MM_AS_SETUP 3,4个分组
MM_KEY_EXCH 5,6个分组
QM_IDLE IPsec AS建立完成
故障排除
策略集不同
没有key
key不匹配
peer设置错误
转换集不同
发送方没有设置crypto-map
接受方没有设置crypot-map
发送数据时一边加密一边没有

IKE数据处理
有map ,感兴趣流,加密 forward
有map,感兴趣流,没加密 drop
有map ,不是感兴趣流,加密 drop
没有map,感兴趣流,不加密 forward
没有map.感兴趣流,加密 forward 有解密,但是在第二阶段协商失败

IKE增强特性
Xauth
作用 由于主动模式只有三个分组不太安全,引入拓展认证增强其安全性
Mode config
NAT-T
DPD
lifttime
keepalive
AS

IKE认证机制
预共享密钥
数字签名
加密临时值

ESP

在这里插入图片描述
在这里插入图片描述

作用 提供加密,认证和保护数据的框架
数据机密性
DES
3DES esp-3des
AES
数据完整性
MD5
SHA esp-sha
数据源验证
共享密钥
HASH算法
防重放攻击
重放攻击
攻击者重复发送大量数据包,使得接受者不断的解封装并分析,在一定程度上消耗系统资源
解决方案
通过序列号和滑动窗口实现
层次
OSI传输层
协议号 50

AH
在这里插入图片描述
在这里插入图片描述

AS协议,数据没有加密,只用于数据完整性校验和防重放攻击,现在很少用到了
作用 提供认证和保护数据的框架
层次
OSI传输层
协议号 51

IPsec VPN

L2L-VPN 两个公网地址,两个私网地址,两个公网地址是固定的 也叫 site to site vpn
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

L2LVPN配置

在互联网出口两个路由器做配置,如上图的R2和R4
老方法配置6个步骤:
在这里插入图片描述
在这里插入图片描述

1、定义第一阶段策略集
R2(config)#crypto isakmp policy 1
R2(config-isakmp)#encryption 3des
R2(config-isakmp)#authentication pre-share #与共享秘钥认证
R2(config-isakmp)#group 2 #不同的group,加密算法长度不同

在这里插入图片描述

R2(config-isakmp)#hash sha #哈希算法,默认是sha,设置了后查看crypto配置看不到的。如果改成了md5可以看到

在这里插入图片描述

在这里插入图片描述

2、定义与共享秘钥
R2(config)#crypto isakmp key 0 jinghao address 100.1.34.4 #对端地址是对端路由器地址

3、定义第三阶段转换集
R2(config)#crypto ipsec transform-set l2ltrans esp-3des esp-sha-hmac

4、定义感兴趣流
R2(config)#ip access-list extended l2lacl
R2(config-ext-nacl)#permit ip 192.168.12.0 0.0.0.255 192.168.45.0 0.0.0.255

5、定义映射图

在这里插入图片描述

这个报错不用管,由于没有配置acl,下面会配置

R2(config)#crypto map l2lmap 1 ipsec-isakmp
R2(config-crypto-map)#set peer 100.1.34.4 #对等体地址是另外一端路由器的地址,不是运营商地址
R2(config-crypto-map)#set transform-set l2ltrans #设置之前配置的转换集
R2(config-crypto-map)#match address l2lacl

6、应用于接口

在公网接口配置:

R2(config)#interface f1/0
R2(config-if)#crypto map l2lmap

在这里插入图片描述
在这里插入图片描述

另一端配置类似
在这里插入图片描述
在这里插入图片描述

配置完,会出现监听状态:
在这里插入图片描述

测试私网到私网连通性:
在这里插入图片描述

现在ping不通,是因为上面配了NAT地址转换,无论访问哪里,都做了地址翻转
解决办法是将私网到私网的网段不做nat
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

再次测试私网到私网连通性,并抓包:
在这里插入图片描述

可以联通
数据包:
在这里插入图片描述

第一阶段6组,第二阶段3组。
协商成功一定是干干净净9个包

测试数据传输包:
在这里插入图片描述
在这里插入图片描述

全是加密的
在内网抓包就是铭文的

L2LVPN新配置方法:
就是GRE over IPSEC,详见下面教程:

NAT-T

NAT Traversal ,NAT穿越,用于实现私网地址到公网地址VPN的建立。
如下图,出口是防火墙,如果在R1上做VPN,则R1上是私有地址,R2上是公有地址。此时就要用到NAT-T
在这里插入图片描述

1、R1一定能找到R4,R4找R1是通过R2做的NAT加端口号找到
2、4500端口解决
3、通过hash值对比

NAT是通过TCP端口复用来实现的,而vpn数据包没有端口号,NAT就无法记录,一旦进入加密数据流,则会丢弃数据包
NAT-T原理就是来修改IP头部,在ESP数据包的头部插入一个UDP端口号4500的头部,使得NAT设备能看到端口信息,顺利的将数据包丢出去
在这里插入图片描述

R1和R4建立VPN,两边必须最少有一个是公网地址,R1私网地址,R4公网地址:
先将R2接口的crypto删除:

R2(config)#interface f1/0
R2(config-if)#no crypto map l2lmap

将R2的vpn配置在R1做一下:
在这里插入图片描述

接口应用:
在这里插入图片描述

R1配置下ACL
在这里插入图片描述

由于在R2做了地址翻转,所以R4不需要修改任何配置:
测试连通性
在这里插入图片描述

抓包查看:
前面4个包与之前的没有区别,端口号都是500:
在这里插入图片描述

第5个包开始端口号变成了4500
在这里插入图片描述

数据传输时,在ESP包下面多了一层端口为4500的UDP包:
在这里插入图片描述

清除crypto邻居关系:

R4#clear crypto session

从第三个包开始,告知对方环境,是在私网还是公网,ISAKM包中有NAT的相关数据,里面有hash值
在这里插入图片描述
在这里插入图片描述

经过地址翻转后的端口对应如下,当R4发现两边地址不一致时,就知道经过了地址翻转,在第五个包开始加入了4500端口的udp包:
在这里插入图片描述

用新版本的wireshark,抓包可能出现问题,这是由于wireshark版本过高导致的:
在这里插入图片描述

查看NAT转发
在这里插入图片描述

故障排除

show crypto engine connections active
show crypto isakmp sa   #查看第一阶段sa
show crypto ipsec sa      #查看第二阶段sa
show crypto map
show crypto isakmp policy
show crypto ipsec transform-set
show crypto isakmp key
show crypto isakmp peer
show crypto session
show crypto connection engine
debug crypto isakmp 
debug crypto ipsec

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

PPPOE

1、宽带接入

DSL技术是宽带接入的老技术,基于电信的固定电话网<POTS/PSTN>
光纤接入技术是一种新的宽带接入技术,基于EPON和GPON技术(ONU/OLT)
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

PPPOE拨号:ppp over ethernet 二层的封装形式
ppp: point to point 串行链路 点到点的链路层协议,主要用于在全双工的链路上进行点到点的数据传输
PPP协议的优点如下:
1、具有很好的扩展性,例如当需要在以太网上承载PPP协议时,PPP可以扩展为PPPOE
2、提供了LCP(link control protocol),用于各链路层参数的协商 魔术字 检测链路环路
3、PPP提供了各种NCP(network control protocol)协议,例如:IPCP IPXCP 用于网络层参数的协商,更好地支持了网络层协议
4、提供了认证协议:CHAP PAP 更好地保证了网络的安全性 以太网没有认证
5、无重传机制,网络开销小
链路控制协议(link control protocol) 用来建立、拆除和监控PPP数据链路
网络层控制协议(network control protocol) 用于对不同网络层协议进行建立连接和参数协商

ppp的报文:
LCP 协商链路
PAP 认证
IPCP 网络协商 为NCP的一种
设置Serial接口数据链路层的封装类型为PPP指令:
link-protocol ppp
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以点击这里获取
rol protocol) 用于对不同网络层协议进行建立连接和参数协商

ppp的报文:
LCP 协商链路
PAP 认证
IPCP 网络协商 为NCP的一种
设置Serial接口数据链路层的封装类型为PPP指令:
link-protocol ppp
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
[外链图片转存中…(img-JhostuT5-1714792258598)]
[外链图片转存中…(img-fF3Ijkdi-1714792258598)]
[外链图片转存中…(img-FVrEnrKy-1714792258599)]
[外链图片转存中…(img-SVGyjzz9-1714792258599)]
[外链图片转存中…(img-lKbtHk2h-1714792258600)]
[外链图片转存中…(img-zHwQWsxc-1714792258600)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以点击这里获取

  • 28
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值