数据传输安全--VPN

目录

前置知识

VPN概念

VPN诞生的原因

VPN分类

根据建设的单位不同分类

企业自建的VPN

运营商搭建的VPN

根据组网方式不同来进行分类

Client to LAN VPN

LAN to LAN

VPN按层次划分

VPN常用技术

VPN的核心技术

VPN封装过程的角色

VPN包含的技术

身份认证技术

加解密技术

数据认证技术

密钥管理技术

为什么有的VPN啥技术都有有的VPN缺胳膊少腿


前置知识

数据传输安全离不开一个技术VPN

VPN有关的一些技术可以查看下面文章

HICP学习--网络类型-CSDN博客

HCIP学习--MPLS-CSDN博客

VPN概念

虚拟专用网络是指依靠ISP或者其他NSP或者企业自身,构建的专用的安全的数据通信网络,只不过,这个专线网络是逻辑上的,而不是物理上的,所以叫做虚拟专用网。

这个转向网络不一定用在公网也可以用在私网,比如说osfp区域划分不合理

VPN诞生的原因

对专用网络需求越来越高,且物理专用网假设难,性价比低

物理专线成本高,在位置不固定的情况下,难以实现

直接将服务器开放到公网,不安全

VPN分类

根据建设的单位不同分类

企业自建的VPN

成本相对较低,因为仅需要支付VPN设备的费用即可,并且 因为设备为企业所有,所以控制上更具有主动性

运营商搭建的VPN

相对比较省心,因为安全问题、带宽问题和管理问题,都 由运营商处理,仅需支付专线费用即可。

根据组网方式不同来进行分类

Client to LAN VPN

用户跨越公网接入VPN,用户下载相应的客户端就对接总部·了

SSL VPN

LAN to LAN

企业购买专业的设备来进行对接

IPSEC VPN

VPN按层次划分

这个层次划分指的是VPN技术所保护的层次,但是这个VPN保护在没有加密的情况下并不意味着安全

VPN常用技术

VPN的核心技术

隧道技术(封装技术)

VPN可以应对于不同的网络之间相互联通的情况,如下图IPX头部和IP头部不同网络之间可以连通

(IPX是一种很久以前的网络),包括两边是IPv6中间是IPv4他们也可以通。

那么如何实现上面的两种不同网络通的效果。这时候就需要一个隧道协议头,这意思就像你是一个中国人去外国开车这个样子是不行的,因为你没有外国的驾照,但是你可以找一个有外国驾照的人去拉你。这个隧道协议头就是拉你的人。

VPN封装过程的角色

VPN封装过程的角色有三种角色,乘客协议、封装协议和运输协议。就以上面的图片为例子,并假设封装是以GRE协议封装,三种角色对应的协议就是

乘客协议:IPX

封装协议:GRE

运输协议:IP

注:不要把GRE当作VPN技术,GRE只是一种封装技术,我们是利用GRE技术制造处一种GREVPN的技术,IPSec也不是一种VPN技术,他只是一种协议簇,他只是为了保证我们的传输安全的。MPLS也是他只是一种标签交换技术,我们可以利用这个东西形成一种MPLSVPN技术。

VPN包含的技术

身份认证技术

身份认证技术是VPN技术的前提条件,否则,隧道都不知道跟谁建的
GRE VPN--- 不存在身份认证技术 ,GRE里有一个关键字,但是这个关键字,并不是做认证而是通道区分的。严格来说是不具有认证的,但是IPSec是具有认证功能所以两种可以结合使用
L2TP VPN --- 可以利用PPP中的身份认证
IPSEC和SSL VPN都具有身份认证的能力,SSLVPN还支持多种身份认证

加解密技术

加解密的最重要的特点是可逆,将明文通过某些算法转换成密文 ,用来防止网络中的被
动威胁,之后可以将密文再通过某些算法还原明文
GRE VPN和L2TP VPN都不存在加解密的功能
IPSEC VPN和SSL VPN都可以提供加解密的功能

数据认证技术

相当于在进行验货,确保数据的完整性
GRE VPN --- 可以提供“校验和”的功能,但是,这是一个可选项,需要两边同时开启才 能生效。可以找IPsec帮忙
L2TP VPN --- 本身也不提供数据认证功能
IPSEC VPN和SSL VPN都支持数据认证功能

密钥管理技术

加解密肯定需要密钥,

为什么有的VPN啥技术都有有的VPN缺胳膊少腿

因为在内网里是不是本身就很安全几乎不需要验证啥的所以是不是可以省略一些功能,提高效率

相关推荐

  1. SSH:安全的远程登录和数据传输工具

    2024-07-22 09:42:01       54 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 09:42:01       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 09:42:01       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 09:42:01       45 阅读
  4. Python语言-面向对象

    2024-07-22 09:42:01       55 阅读

热门阅读

  1. 16、基于共享内存二叉树的LRU

    2024-07-22 09:42:01       14 阅读
  2. springboot集成kafka | 分布式消息发布和订阅系统

    2024-07-22 09:42:01       14 阅读
  3. shell脚本教程学习

    2024-07-22 09:42:01       13 阅读
  4. mybatis-config.xml中的environments是什么?

    2024-07-22 09:42:01       16 阅读
  5. 云原生:容器技术全解!

    2024-07-22 09:42:01       10 阅读
  6. 设计模式简述(一)

    2024-07-22 09:42:01       17 阅读