在日常的生活中,我们时常都会听到VPN。那么VPN到底是什么,今天我们就来看一下VPN是怎么回事。
本文主要讲解一下VPN的功能和类型,具体在网络设备上的配置,下次再来讨论。本文内容摘自思科Cisco安全课程。
1.什么是VPN
VPN:为了保护站点与用户之间的网络流量,组织机构会使用VPN(虚拟专用网络)来创建端到端的专用网络连接。VPN 是虚拟的,因为它在专用网络中传送信息,但是这些信息实际上是通过公共网络传送的。VPN 是私密的,因为其中的流量被加密以保持数据在通过公共网络传输时是保密的。
严格来说,最初的 VPN 只是 IP 隧道,它并不提供认证或数据加密服务。举例来说,GRE(通用路由封装)是由思科开发的隧道协议,它不提供加密服务。它被用来封装IPv4和IPv6流量,代替IP隧道来建立虚拟的点到点链接。
现在的VPN可以支持加密特性,比如IPsec(互联网安全协议)和SSL(安全套接字层)都可以为站点之间的网络流量提供保护。
VPN的主要优势详见表格。
2.VPN的部署
VPN通常部署在以下两种配置中:站点到站点VPN或者远程访问VPN。
-
Site to Site VPN:站点到站点VPN是建立在VPN终结设备上的,也称为VPN网关,该设备上预配置了用来建立安全隧道的信息。VPN流量只会在这些设备之间加密。内部主机并不知道 VPN 的存在。
-
远程访问VPN:远程访问VPN是在客户端和VPN终端设备之间动态创建的安全连接。举例来说,人们在线查询银行帐户信息时就会使用远程访问SSL VPN。
有多种方法可以为企业流量提供保护。这些解决方案因负责管理VPN的机构而异。
人们可以这样管理和部署VPN:
企业VPN – 企业所管理的VPN是企业用来在互联网上保护企业流量的常用解决方案。站点到站点VPN和远程访问VPN是由企业使用IPsec VPN和SSL VPN创建和管理的。
运营商VPN– 运营商所管理的VPN是在运营商网络中创建并管理的VPN。运营商在二层或三层使用MPLS(多协议标签交换),在企业站点之间创建安全的通道。MPLS是运营商用来在多个站点之间创建虚拟路径所使用的路由技术。这样做可以有效地把客户流量与其他客户的流量相隔离。其他传统的解决方案还包括帧中继VPN和ATM(异步传输模式)VPN。
图中列出了不同类型的企业管理的VPN部署和运营商管理的VPN部署。
3.VPN的类型
- SSL VPN
当客户端与VPN网关协商SSL VPN连接时,实际上它会使用TLS(传输层安全)进行连接。TLS 是 SSL 的较新版本,有时表示为 SSL/TLS。但这两个术语通常会交互使用。SSL会使用PKI(公共密钥基础设施)和数字证书来进行对等体认证。IPsec 和 SSL VPN 技术几乎能够提供对任何网络应用程序或资源的访问。但是,需要考虑安全性时,IPsec 是更好的选择。如果是否支持和易于部署是主要问题,则考虑使用 SSL。实施的 VPN 方法的类型取决于用户的访问要求和组织的 IT 流程。表格中对比了IPsec和SSL远程访问部署。
IPsec 和 SSL VPN 并不互相排斥,理解这一点很重要。相反,它们互为补充;两种技术都可解决不同问题,组织可以实施 IPsec、SSL,或同时实施,具体取决于远程工作人员的需求。
- Site to Site VPN:
站点到站点VPN用于在不受信任的网络(比如互联网)上建立网络连接。在站点到站点VPN中,终端主机会通过VPN终结设备来发送和接收未加密的TCP/IP流量。VPN终结设备通常被称作VPN网关。VPN网关设备可以是路由器或防火墙,如图所示。举例来说,图片右侧显示的思科ASA(自适应安全设备)是独立的防火墙设备,它将防火墙、VPN集中器和入侵防御功能整合到一个软件镜像中。
VPN网关负责封装和加密来自特定站点的所有出站流量。然后,VPN网关通过在互联网上建立的VPN隧道,将流量发送给目标站点上的VPN网关。接收到流量后,接收方VPN网关会剥离报头、解密内容,然后将数据包发送给其专有网络内的目标主机。
站点到站点VPN通常是通过IPsec(互联网安全协议)进行创建和保护的。
+基于 IPsec 的 GRE:
通用路由封装 (GRE) 是不安全的站点到站点 VPN 隧道协议。它可以封装多种不同的网络层协议。它还支持组播和广播流量,当组织机构需要在VPN上运行路由协议时,就会产生这类流量。但GRE默认是不支持加密的;因此它无法提供安全的VPN隧道。
标准的IPsec VPN(非GRE)只可以为单播流量创建安全隧道。因此路由协议无法通过IPsec VPN来交换路由信息。
为了解决这个问题,我们可以使用GRE包来封装路由协议流量,然后将这个GRE包封装到IPsec包中,并将其安全地转发到目的地VPN网关。
用来描述在IPsec隧道中封装GRE的术语分别为乘客协议、运载协议和传输协议,如图所示。
举例来说,图中展示了一个拓扑,分支机构和总部之间希望在IPsec VPN上交换OSPF路由信息。但IPsec并不支持组播流量。因此,企业使用GRE over IPsec在IPsec VPN上提供对路由协议流量的支持。具体来说,OSPF包(乘客协议)会被GRE(运载协议)封装,接着会被封装到IPsec VPN隧道中。
图中Wireshark截图显示出OSPF Hello包是通过GRE over IPsec发送的。在这个例子中,原始的OSPF Hello组播包(乘客协议)上封装了GRE头部(运载协议),接着在其上又封装了另一个IP头部(传输协议)。然后这个IP头部会通过IPsec隧道进行转发。
图中Wireshark截图显示出OSPF Hello包是通过GRE over IPsec发送的。传输协议的部分已用方框突出显示,其中显示出IPv4, 源:192.168.12.1,目的:192.168.23.3。运载协议的部分已用方框突出显示,其中显示出GRE、标志和版本,以及协议类型IP。 IP。乘客协议的部分已用方框突出显示,其中显示出IPv4,源:192.168.13.1,目的:224.0.0.5,这表示它是开放式最短路径优先 (OSPF)协议包。
+DMVPN动态多点VPN
当只有少数几个站点之间需要建立安全连接时,站点到站点IPsec VPN和GRE over IPsec VPN就够用了。但当企业增加了更多的站点时,这两种类型的VPN就无法满足需要了。这是因为每个站点都需要静态地配置与其他站点之间的连接,或者静态配置与中心站点之间的连接。
动态多点 VPN (DMVPN) 是用于以轻松、动态和可扩展的方式构建多个 VPN 的思科软件解决方案。与其他类型的VPN一样,DMVPN也依赖于IPsec,在公共网络(比如互联网)上提供安全的传输。
DMVPN简化了VPN隧道的配置,提供了一种灵活的方式来连接中心站点和分支机构站点。它会使用中心辐射型配置来建立全互联拓扑。分支站点会与中心站点建立安全的VPN隧道,如图所示。
图中描绘了动态多点VPN中心辐射型隧道。中心站点有一台路由器分别连接其他路由器:分支A、分支B和分支C。
DMVPN 中心辐射型隧道
个站点上都配置了mGRE(多点GRE)。 mGRE隧道接口可以使单个GRE接口动态地支持多个IPsec隧道。因此当一个新的站点需要建立安全连接时,中心站点上的已有配置可以直接对这个隧道进行支持。无需额外的配置。
分支站点也可以从中心站点那里获取其他远程站点的信息。从而使用这些信息直接与其他远程站点建立VPN隧道,如图所示。图中描绘了动态多点VPN中心辐射型隧道,以及分支到分支隧道。中心站点有一台路由器分别连接其他路由器:分支A、分支B和分支C。 虚线描绘了分支之间的连接。
DMVPN 中心辐射型隧道和分支到分支隧道
-
IPsec 虚拟隧道接口
与DMVPN类似,VTI(IPsec虚拟隧道接口)也简化了配置,能够支持多站点和远程访问。IPsec VTI配置是应用在虚拟接口上的,而不是把IPsec会话静态地映射到物理接口。
IPsec VTI能够发送和接收加密的IP单播和组播流量。因此它能够直接支持路由协议,无需配置GRE隧道。
人们可以在站点之间配置IPsec VTI,或者可以在中心辐射型拓扑中配置IPsec VTI。 -
运营商MPLS VPN
传统的运营商WAN解决方案在其设计中自带安全功能,比如专线、帧中继和ATM连接。如今,运营商在其核心网络中使用MPLS。MPLS骨干网使用标签来转发流量,标签会提前在核心路由器之间发布。与传统的WAN连接类似,当今的流量也是安全的,因为运营商的客户无法看到其他客户的流量。
MPLS可以为客户提供VPN管理解决方案;因此客户站点之间的流量安全性由运营商负责。运营商提供了两种类型的MPLS VPN:
三层MPLS VPN - 运营商会参与客户的路由,客户路由器与运营商路由器之间会建立对等体连接。运营商路由器在接收到客户路由后,会通过MPLS网络将其重定向给客户的远端站点。
二层MPLS VPN - 运营商不会参与客户的路由。运营商会在MPLS网络上部署VPLS(虚拟专用LAN服务),来模拟一个以太网多访问LAN网段。没有路由涉及其中。客户的路由器实际上属于同一个多访问网络。
图中展示出运营商同时提供了二层和三层MPLS VPN。
以上这些就是关于VPN的基础知识。希望大家看完后,会对VPN有一个基础的了解。