虚拟专用网络 之 VPN

虚拟专用网络

  1. 虚拟专用网络诞生
    一个技术的出现都是由于某种需求触发的。那么为什么会出现VPN技术呢?VPN技术解决了什么问题呢? 早期在没有VPN之前,企业的总部和分支机构之间的互通都是采用运营商提供的Internet互联网尽心通信; 但是在Internet互联网中通讯往往是不安全的,通信的内容可能被窃取、修改等,从而造成安全隐患或者安全事件;

所以就需要有一种技术既能实现总部和分支机构建的互通,也能保证数据传输的安全性!

早期很多大型企业会联合运营商构建物理专线网络,在总部和分支机构之间拉条专线,只传输自己的业务; 但是这个专线的费用确实不是一般公司能够承受的,而且维护也很困难;

那么有没有成本比较低的解决方案呢?

因此,就引出了VPN技术,VPN通过在现有的Internet网络中构建专用的虚拟网络,实现企业总部和分支机构的通信;

解决了互通、安全、成本的问题。

一、虚拟专用网络介绍

VPN(全称Virtual Private Network)虚拟专用网络,是依靠ISP和其他的NSP,在公共网络中建立专用的数据通信网络的技术; 可以为企业之间或者个人与企业之间提供安全的数据传输隧道服务。

在VPN中任意两点之间的连接并没有传统专网所需的端到端的物理链路,而是利用公共网络资源动态组成的; 可以理解为通过私有的隧道技术在公共数据网络上模拟出来的和专网有同样功能的点到点的专线技术; 所谓虚拟是指不需要去拉实际的长途物理线路,而是借用了公共Internet网络实现。

为了便于理解VPN概念,利用一个网络示意图进行说明:

1.1虚拟专用网络作用

VPN功能可以帮助公司里的远程用户(出差、家里),公司的分支机构,商业合作伙伴及供应商等公司和自己的公司内部网络之间; 建立可信的安全连接或者是局域网连接,确保数据的加密安全传输和业务访问; 对于运维工程师来说,还可以连接不同的机房构成局域网,处理相关的业务流。

应用虚拟专用网络的优势特点:

  • 安全性高
    在远端用户、驻外机构、合作伙伴、供应商与公司总部之间建立可靠的连接,保证数据传输的安全性。
    这对于实现电子商务或金融网络与通讯网络的融合特别重要。
  • 费用低廉
    利用公共网络进行信息通讯,企业可以用更低的成本连接远程办事机构、出差人员和业务伙伴。
  • 支持移动
    支持出差VPN用户在任何时间、任何地点的移动接入,能够满足不断增长的移动业务需求。
  • 可扩展性
    由于VPN为逻辑上的网络,物理网络中增加或修改节点,不影响VPN的部署。

1.2 虚拟专用网络分类

01 根据VPN建设单位不同进行划分
  • 租用运营厂商专线搭建VPN
    运营商的虚拟专线网络大多数都是使用 MPLS VPN; 企业通过购买运营商提供的VPN专线服务实现总部和分支机构间的通信需求;VPN网关为运营商所有。
  • 企业内部自建环境搭建VPN
    企业内部自建基于Internet环境的vpn网络,常见的有IPsev VPN、GRE VPN、L2TP VPN、SSL VPN 企业自己购买VPN网络设备,搭建自己的VPN网络,实现总部和分支机构的通信,或者是出差员工和总部的通信;
02 根据VPN组网方式不同进行划分
  • 远程访问VPN
    这种方式适用于出差员工拨号接入VPN的方式,员工可以在只要有Internet的地方都可以通过VPN接入访问企业内网资源。 最常见类型有:SSL VPN、L2TP VPN
  • 站点之间VPN 这种方式适合用于企业两个局域网互通的情况;例如企业的分支机构访问总部; 最常见类型有:MPLS VPN、IPsec VPN
03 根据VPN工作网络层次进行划分
  • 应用层VPN:SSL VPN
  • 网络层VPN:IPsec VPN、GRE VPN
  • 链路层VPN:L2TP2 VPN、PPTP VPN

1.3 虚拟专用网络技术

1.3.1 网络通讯隧道技术

VPN技术的基本原理其实就是用的隧道技术; 就类似于火车/地铁的轨道一样,从A站点到B站点都是直通的,不会堵车。对于乘客而言,就是专车; 隧道技术其实就是对传输的报文进行封装,利用公网建立专用的数据传输通道,从而完成数据的安全可靠传输;

从上图中可以看到原始报文在隧道的一端进行封装,封装后的数据在公网上传输,在隧道另一段进行解封装;

从而实现了数据的安全传输。 隧道协议通过在隧道的一端给数据加上隧道协议头,即进行封装,使这些被封装的数据能都在某网络中传输;

并且在隧道的另一端去掉该数据携带的隧道协议头,即进行解封装。

1.3.2 网络通讯安全技术

在利用VPN进行数据传输通讯时,身份认证、数据加密、数据验证可以有效保证数据传输的安全性;

01 身份认证作用 VPN网关对接入VPN的用户进行身份认证,保证接入的用户都是合法用户。

02 数据加密作用 将明文通过加密技术成密文,哪怕信息被截获窃取了,也无法识别。

注意:保证数据的加密特性,会使用到对称加密技术,和非对称加密技术。

03 数据验证作用 通过数据验证技术验证报文的完整性和真伪进行检查,防止数据被篡改。 不同VPN隧道身份认证、数据加密、数据验证区别如下表所示:

二、专用网络开源产品

2.1 开源产品分类介绍

01 PPTP VPN

点对点隧道协议(PPTP)是由包括微软和3com等公司组成的PPTP论坛开发的一种点对点隧道协议;

基于拨号使用的PPP协议,使用PAP或CHAP之类的加密算法,或者使用Microsoft的点对点加密算法MPPE。

使用PPTP VPN的最大优势在于,无需在windows客户端单独安装客户端软件,默认就支持PPTP VPN拨号连接功能。

适用场景:适合远程的企业用户拨号到企业内部进行办公等的应用。

开源软件:pptp vpn

02 IPsec VPN

IPSec隧道模式是封装、路由与解封装的整个过程。隧道将原始数据包隐藏(或封装)在新的数据包内部;

隧道与数据保密性结合使用时,在网络上窃听通讯的人将无法获取原始数据包数据(以及原始的源和目标);

适用场景 :企业异地两地总分公司或多个IDC机房之间的VPN不间断按需连接
开源软件:openswan

03 SSL VPN

SSL VPN提供了数据私密性、端点验证、信息完整性等特性; SSL独立于应用,因此任何一个应用程序都可以享受它的安全性而不必理会执行细节。http+ssl == https

适用场景 :企业异地或者移动用户拨号连接总部实现VPN不间断按需连接
开源软件:openvpn

注意:属于C/S架构的软件,需要单独安装openvpn客户端与服务端。

2.2 开源产品工作原理

openvpn 工作原理--部署过程 每一步在做什么

  • 需要先关注保证数据安全传输的三要素:数据机密性 数据完整性 身份认证
  • 需要掌握秘钥加密技术应用实现;
  • 需要掌握证书概念的企业应用;
相关推荐
Re.不晚15 分钟前
Java入门15——抽象类
java·开发语言·学习·算法·intellij-idea
老秦包你会17 分钟前
Qt第三课 ----------容器类控件
开发语言·qt
凤枭香20 分钟前
Python OpenCV 傅里叶变换
开发语言·图像处理·python·opencv
ULTRA??24 分钟前
C加加中的结构化绑定(解包,折叠展开)
开发语言·c++
远望清一色40 分钟前
基于MATLAB的实现垃圾分类Matlab源码
开发语言·matlab
weixin_442643421 小时前
推荐FileLink数据跨网摆渡系统 — 安全、高效的数据传输解决方案
服务器·网络·安全·filelink数据摆渡系统
confiself1 小时前
大模型系列——LLAMA-O1 复刻代码解读
java·开发语言
XiaoLeisj1 小时前
【JavaEE初阶 — 多线程】Thread类的方法&线程生命周期
java·开发语言·java-ee
阑梦清川1 小时前
JavaEE初阶---网络原理(五)---HTTP协议
网络·http·java-ee
杜杜的man1 小时前
【go从零单排】go中的结构体struct和method
开发语言·后端·golang