SSL VPN

深信服SSL VPN集SSL/IPSec于一身,帮助企业构建端到端的安全防护体系,业内拥有多项加密技术,多种认证方式、主从绑定等特色功能,保证远程系统接入的用户身份安全、终端/数据安全、传输安全、应用权限安全和审计安全,具有快速、易用、全面等优势特点,并且连续多年市场占有率第一,一直走在技术前沿,提供优质服务,用户认可度极高。
点击可切换产品版本
知道了
不再提醒
SSL7.6.9R1
SSL VPN 文档 产品手册 产品简介 VPN技术背景知识
{{sendMatomoQuery("SSL VPN","VPN技术背景知识")}}

VPN技术背景知识

更新时间:2023-05-04

VPN简介

VPN是虚拟专用网的简称,虚拟专用网不是真的专用网络,但却能够实现专用网络的功能。虚拟专用网指的是依靠ISP(Internet Service Provider因特网服务提供商)和其它NSP(Network Service Provider网络服务提供商),在公用网络中建立专用的数据通信网络的技术。在虚拟专用网中,任意两个节点之间的连接并没有传统专网所需的端到端的固定物理链路,而是利用某种公众网的物理链路资源动态组成的。

IETF 组织对基于IP 的VPN 解释为:通过专门的隧道加密技术在公共数据网络上仿真一条点到点的专线技术。所谓虚拟,是指用户不再需要拥有实际的长途数据线路,而是使用Internet公众数据网络的长途数据线路。所谓专用网络,是指用户可以为自己制定一个最符合自己需求的网络。早期的虚拟专用网一般指的是电信运营商提供的Frame Relay或ATM 等虚拟固定线路(PVC)服务的网络,或通过运营商的DDN 专线网络构建用户自己虚拟专用网。

现在的VPN 是在Internet 上临时建立的安全专用虚拟网络,用户节省了租用专线的费用,同时除了购买VPN 设备或VPN软件产品外,企业所付出的仅仅是向企业所在地的ISP 支付一定的上网费用,对于不同地区的客户联系也节省了长途电话费。这就是VPN 价格低廉的原因。

按照VPN的网络连接类型主要分为Site to Site 和End to Site两种类型。Site to Site 主要指的是网络和网络之间的VPN连接。而 End to Site 指的是移动终端到企业私有网络之间的VPN连接,而SSL VPN 就是 End to Site类型的VPN。

以OSI 模型参照标准,不同的VPN 技术可以在不同的OSI 协议层实现。

如下表:

VPN在OSI中的层次

VPN实现技术

数据链路层

PPTP及L2TP

网络层

IPSEC

应用层

SSL

 

链路层VPN 技术

PPTP协议:

PPTP(点到点隧道协议)是由PPTP论坛开发的点到点的安全隧道协议,为使用电话上网的用户提供安全VPN业务,1996 年成为IETF草案。PPTP是PPP 协议的一种扩展,提供了在IP 网上建立多协议的安全VPN 的通信方式,远端用户能够通过任何支持PPTP 的ISP 访问企业的专用网络。

PPTP 提供PPTP 客户机和PPTP服务器之间的保密通信。PPTP客户机是指运行该协议的PC 机,PPTP服务器是指运行该协议的服务器。通过PPTP,客户可以采用拨号方式接入公共的IP网。拨号客户首先按常规方式拨号到ISP的接入服务器,建立PPP连接;在此基础上,客户进行二次拨号建立到PPTP服务器的连接,该连接称为PPTP隧道。PPTP隧道实质上是基于IP协议的另一个PPP连接,其中IP包可以封装多种协议数据,包括TCP/IP、IPX和NetBEUI。对于直接连接到IP网的客户则不需要第一次的PPP拨号连接,可以直接与PPTP服务器建立虚拟通路。

PPTP的最大优势是Microsoft公司的支持,另外一个优势是它支持流量控制,可保证客户机与服务器之间不拥塞,改善通信性能,最大限度地减少包丢失和重发现象。PPTP把建立隧道的主动权交给了客户,但客户需要在其PC机上配置PPTP,这样做既会增加用户的工作量,又会造成网络的安全隐患。另外,PPTP仅工作于IP,不具有隧道终点的验证功能,需要依赖用户的验证。

 

网络层VPN 技术

IPSec协议:

IPSec也是IETF 支持的标准之一,它和PPTP、L2TP不同之处在于它是第三层即IP层的加密。IPSec不是某种特殊的加密算法或认证算法,也没有在它的数据结构中指定某种特殊的加密算法或认证算法,它只是一个开放的结构,定义在IP数据包格式中,不同的加密算法都可以利用IPSec定义的体系结构在网络数据传输过程中实施。

IPSec协议可以设置成在两种模式下运行:一种是隧道(tunnel)模式,一种是传输(transport)模式。在隧道模式下,IPSec 把传输层的数据封装在安全的IP包中。传输模式是为了保护端到端的安全性,即在这种模式下不会隐藏路由信息。隧道模式是更安全的,但会带来较大的系统开销。由于IPSec是基于网络层的,不能穿越通常的NAT、防火墙。

SANGFORSL协议:

SANGFORSL是SANGFOR SSL VPN中IPSec VPN采用的安全链路协议。

SANGFORSL是基于IPSec协议的安全隧道,但改进了如下过程:提供压缩的IP头算法,由此提高网络利用率。普通的IPSec网络利用率在70%左右,而SANGFORSL达到90%改进的IP封装技术,使得SANGFORSL可通过任何路由器,提高对网络的适应能力。

SANGFORSL提供基于挑战―响应模式的身份认证。同时也提供基于硬件证书(HARDCA)的鉴权体系。数据传输采用隧道模式,支持各种加密算法,对会话的管理更具有灵活性,同时能适应各种网络层。

 

会话层VPN 技术

SOCKS协议:

SOCKS 处于OSI 模型的会话层,在SOCKS 协议中,客户程序通常是先连接到防火墙1080端口,然后由防火墙建立到目的主机的单独会话,这种情况下客户程序对目的主机是不可见的。SOCKS 的问题在于必须对客户端应用程序做修改,加入对SOCKS协议的支持。

SSL 协议介绍

SSL协议:

安全套接层(Secure Socket Layer,SSL)属于高层安全机制,广泛应用于Web 浏览程序和Web 服务器程序。在SSL中,身份认证是基于证书的。服务器方向客户方的认证是必须的,而SSL 版本3中客户方向服务方的认证只是可选项,现在逐渐得到广泛的应用。

SSL协议过程通过3个元素来完成:

(1)握手协议:这个协议负责配置用于客户机和服务器之间会话的加密参数。当一个SSL客户机和服务器第一次开始通信时,它们在一个协议版本上达成一致,选择加密算法和认证方式,并使用公钥来生成共享密钥。

(2)记录协议:这个协议用于交换应用数据。应用程序消息被分割成可管理的数据块,还可以压缩,并产生一个MAC(消息认证代码),然后结果被加密并传输。接收方接收数据并对它解密,校验MAC,解压并重新组合,把结果提供给应用程序协议。

(3)警告协议:这个协议用于表示在什幺时候发生了错误或两个主机之间的会话在SH什么时候终止。

SSL协议通信的握手步骤如下:

第1步,SSL客户端连接至SSL服务器,并要求服务器验证它自身的身份;

第2步,服务器通过发送它的数字证书证明其身份。这个交换还可以包括整个证书链,直到某个根证书颁发机构(CA)通过检查有效日期并确认证书包含可信任CA的数字签名来验证证书的有效性。

第3步,服务器发出一个请求,对客户端的证书进行验证,但是由于缺乏公钥体系结构,当今的大多数服务器不进行客户端认证。但是完善的SSL VPN安全体系是需要对客户端的身份进行证书级验证的。

第4步,协商用于加密的消息加密算法和用于完整性检查的哈希函数,通常由客户端提供它支持的所有算法列表,然后由服务器选择最强大的加密算法。

第5步,客户机和服务器通过以下步骤生成会话密钥:

客户机生成一个随机数,并使用服务器的公钥(从服务器证书中获取)对它加密,以送到服务器上。 服务器用更加随机的数据(客户机的密钥可用时则使用客户机密钥,否则以明文方式发送数据)响应。使用哈希函数从随机数据中生成密钥。使用会话密钥和对称算法(通常是RC4,DES,3DES)对以后通讯的数据进行加密。

在SSL通信中,服务器方使用443端口,而客户方的端口是任选的。

SSL VPN技术

SSL VPN技术帮助用户通过标准的Web浏览器就可以访问重要的企业应用。这使得企业员工出差时不必再携带自己的笔记本电脑,仅仅通过一台接入了Internet的计算机就能访问企业资源,这为企业提高了效率也带来了方便。SSL VPN网关位于企业网的边缘,介于企业服务器与远程用户之间,控制二者的通信。

掌握三个关键术语的含义有助于理解SSL VPN是如何实现的。即:代理(Proxying)、应用转换(Application Translation)、端口转发(Port Forwarding)。

SSL VPN网关至少要实现一种功能:代理Web页面。它将来自远端浏览器的页面请求(采用HTTPS协议)转发给Web服务器,然后将服务器的响应回传给终端用户。

对于非Web页面的文件访问,往往要借助于应用转换。SSL VPN网关与企业网内部的微软CIFS或FTP服务器通信,将这些服务器对客户端的响应转化为HTTPS协议和HTML格式发往客户端,终端用户感觉这些服务器就是一些基于Web的应用。

有的SSL VPN产品所能支持的应用转换器和代理的数量非常少,有的则很好地支持了FTP、网络文件系统和微软文件服务器的应用转换。用户在选择网关时,必须对自己所需要转换的应用有一个很明确的了解,并能够根据它们的重要性给它们排个先后顺序。

而有一些应用,如微软Outlook或MSN,它们的外观会在转化为基于Web界面的过程中丢失。此时要用到端口转发技术。端口转发用于端口定义明确的应用。它需要在终端系统上运行一个非常小的Java或ActiveX程序作为端口转发器,监听某个端口上的连接。当数据包进入这个端口时,它们通过SSL连接中的隧道被传送到SSL VPN网关,SSL VPN网关解开封装的数据包,将它们转发给目的应用服务器。使用端口转发器,需要终端用户指向他希望运行的本地应用程序,而不必指向真正的应用服务器。

良好的SSL VPN产品应该具有较好的互操作性,较为细致的访问控制能力,完善的日志和认证体系以及对应用的广泛支持。