sSLVPN 远程接入之文件共享-WEB代理-端口转发

SSL VPN是通过SSL协议实现远程安全接入的VPN技术。
目的
企业出差员工,需要在外地远程办公,并期望能够通过Internet随时随地的远程访问企业内部资源。同时,企业为了保证内网资源的安全性,希望能对移动办公用户进行多种形式的身份认证,并对移动办公用户可访问内网资源的权限做精细化控制。
IPSec、L2TP等先期出现的VPN技术虽然可以支持远程接入这个应用场景,但这些VPN技术的组网不灵活;移动办公用户需要安装指定的客户端软件,导致网络部署和维护都比较麻烦;无法对移动办公用户的访问权限做精细化控制。
SSL VPN作为新型的轻量级远程接入方案,可以有效地解决上述问题,保证移动办公用户能够在企业外部安全、高效的访问企业内部的网络资源。
如图1所示,FW作为企业出口网关连接至Internet,并向移动办公用户(即出差员工)提供SSL VPN接入服务。移动办公用户使用终端(如便携机、PAD或智能手机)与FW建立SSL VPN隧道以后,就能通过SSL VPN隧道远程访问企业内网的Web服务器、文件服务器、邮件服务器等资源。
SSL VPN为了更精细的控制移动办公用户的资源访问权限,将内网资源划分为了Web资源、文件资源、端口资源和IP资源这4种类型。每一类资源有与之对应的访问方式,例如移动办公用户想访问企业内部的Web服务器,就需要使用SSL VPN提供的Web代理业务;想访问内网文件服务器,就需要使用文件共享业务。资源访问方式同业务类型间的对应关系如表1所示。
| 业务 | 说明 |
|---|---|
| Web代理 | 移动办公用户访问内网Web资源时使用Web代理业务。 |
| 文件共享 | 移动办公用户访问内网文件服务器(如支持SMB协议的Windows系统、支持NFS协议的Linux系统)时使用文件共享业务。移动办公用户直接通过浏览器就能在内网文件系统上创建和浏览目录,进行下载、上传、改名、删除等文件操作,就像对本机文件系统进行操作一样方便。 |
| 端口转发 | 移动办公用户访问内网TCP资源时使用端口转发业务。适用于TCP的应用服务包括Telnet、远程桌面、FTP、Email等。端口转发提供了一种端口级的安全访问内网资源的方式。 |
| 网络扩展 | 移动办公用户访问内网IP资源时使用网络扩展业务。Web资源、文件资源以及TCP资源都属于IP资源,通常在不区分用户访问的资源类型时为对应用户开通此业务。 |
了解Web代理
定义
Web代理是指通过FW做代理访问内网的Web服务器资源(即URL资源)。
业务交互流程
图1所示是移动办公用户通过Web代理方式来访问内网Web Server的一个业务交互流程。
- 移动办公用户通过域名(https://gateway-domain)访问虚拟网关。
- 登录虚拟网关成功后,移动办公用户会在虚拟网关中看到自己有权访问的Web资源列表,然后单击要访问的资源链接。FW在将内网资源(http://website/resource.html)呈现给移动办公用户时,会改写该资源的URL。移动办公用户点击资源链接后,发送给FW的HTTPS链接请求就是虚拟网关改写以后的URL,改写后的URL实质上是由https://gateway-domain和http://website/resource.html这两个URL拼接而成。
- FW收到上述URL后,会向web Server重新发起一个HTTP请求,这个HTTP请求就是Web资源实际的URL(http://website/resource.html)。
- Web Server以HTTP方式向FW返回资源页面。
- 虚拟网关将Web Server返回的资源页面,再经过HTTPS方式转发给移动办公用户。
从业务交互流程可以看出,Web代理功能的基本实现原理是将移动办公用户访问Web Server的过程被分成了两个阶段。首先是移动办公用户与FW虚拟网关之间建立HTTPS会话,然后FW虚拟网关再与Web Server建立HTTP会话。虚拟网关在移动办公用户访问企业内网Web Server中起到了改写、转发Web请求的作用。
Web代理按照实现方式的不同分为了Web改写和Web link两种。
- Web改写Web改写中的“改写”包含两层含义。第一层含义是加密,即移动办公用户在点击虚拟网关资源列表中的链接时,虚拟网关会将用户要访问的真实URL进行加密。例如,在图1的第2步中,用户要访问的真实URL是http://website/resource.html,而经过Web改写以后URL可能会显示为http://website/D%3A/0–2+resource.html。通过Web改写,起到隐藏内网Web资源真实URL的目的,从而保护内网Web服务器的地址安全。在Web改写中,这种加密不仅体现于此,包括用户要访问的Web资源页面链接对象(例如Flash、PDF、Java Applet等)的URL也会被一并加密。第二层含义是适配。不同的终端设备使用着不同的操作系统和的浏览器,这就使得它们在Web资源的支持上存在差异。为了解决终端类型差异对业务的影响,这就需要FW不仅能将内网Web资源转发给移动办公用户,而且还要对Web资源进行“改写”,使之能够适配这些不同的终端。启用Web代理功能以后,FW设备会自动对Web资源进行改写。对于个别HTML对象和ActiveX控件如果在启用Web代理以后,仍然出现显示异常的情况,则可以通过手动配置的方法进行精确改写,解决此问题。
- Web linkWeb Link不会进行加密和适配,只做单纯“转发”移动办公用户的Web资源请求。
由于Web Link少了加密和适配的环节,因此业务处理效率较之Web改写要高。而Web改写由于做了加密和适配,因此在安全性方面要比Web Link高。

- 图1所示是Web改写的业务流程,Web link的业务交互流程与Web改写的类似。所不同的是Web link不会对资源进行改写。
- 需要注意的是,Web link只适合在用户使用Window操作系统+IE浏览器的终端上使用。
报文封装原理
图2所示是移动办公用户访问内网Web资源时的报文封装过程,从图中可以看出移动办公用户的访问过程本质上是由HTTPS和HTTP这两个会话衔接而成。其中,移动办公用户与虚拟网关建立HTTPS会话时,使用的源端口为6293,这个源端口是一个随机端口;目的端口是443。虚拟网关与Web Server建立HTTP会话时,源端口是10091,这个源端口也是随机端口,目的端口为80。
安全策略
图3所示为FW设备上报文所经过的安全区域。
移动办公用户访问企业Web Server的过程中,经过FW的流量分为以下2类,对应流量的安全策略处理原则如下。
- 移动办公用户与FW间的SSL VPN加密报文。此处的SSL VPN加密报文会经过Untrust—>Local区域。
- 移动办公用户访问企业Web Server的业务报文。这些解密以后的业务报文经过的安全区域为Local->Trust。
了解文件共享
定义
文件共享业务是通过将文件共享协议(SMB、NFS)转换成基于SSL的超文本传输协议(HTTPS),实现对内网文件服务器的Web方式访问。移动办公用户通过文件共享业务可以在文件服务器的共享目录中上传/下载文件、删除文件/目录、重命名文件/目录以及新建目录,就像对本机文件系统进行操作一样方便安全。企业内网文件服务器可以是基于SMB(Server Message Block)协议的Windows系统或者基于NFS(Network File System)协议的Linux系统。
业务交互流程
在文件共享业务中FW起到了协议转换器的作用,以访问内网Windows文件服务器为例,具体实现过程如图1所示。
安全策略
图2所示为FW设备上报文所经过的安全域间。
移动办公用户访问企业文件服务器的过程中,经过FW的流量分为以下2类,对应流量的安全策略处理原则如下。
- 移动办公用户与FW间的SSL VPN加密报文。此处的SSL VPN加密报文会经过Untrust—>Local区域。
- 移动办公用户访问企业文件服务器的业务报文。这些解密以后的业务报文经过的安全区域为Local->Trust。
了解端口转发
定义
端口转发是通过在客户端上获取指定目的IP地址和端口的TCP报文,实现对内网指定资源的访问。
业务交互流程
移动办公用户使用端口转发业务可以访问企业内网的TCP资源。TCP资源是指以TCP传输协议为基础的上层应用,例如Telnet、远程桌面、FTP、Email等。以移动办公用户通过Telnet客户端访问企业内网Telnet服务器为例,介绍端口转发业务的工作过程。
图1 端口转发业务的工作过程
- 移动办公用户通过浏览器登录SSL VPN的虚拟网关。登录成功后,移动办公用户在虚拟网关页面启用端口转发业务。随后,虚拟网关向移动办公用户的浏览器下发监控Telnet服务的指令,浏览器的Active控件开始实时监控本地的Telnet访问请求。
- Telnet客户端发出访问Telnet服务器的连接请求。
- Telnet连接请求通过SSL VPN加密隧道发送到虚拟网关。为了能让Telnet请求通过端口转发业务发送到虚拟网关,浏览器的ActiveX控件就需要先捕获到Telnet连接请求。具体做法是ActiveX控件会一直监控Telnet服务,一旦发现Telnet客户端发起Telnet请求,它就会修改这个Telnet请求的目的地址和端口,将真实的目的地址修改为自身的环回地址。例如,Telnet客户端要访问的真实Telnet服务器IP地址是10.1.1.1,端口是23,ActiveX控件就会把真实的目的地址修改成环回地址127.0.0.1,目的端口修改为1047(1024+23),这样就达到了捕获Telnet连接请求的目的。捕获到Telnet请求以后,再将真实的Telnet请求经过SSL加密隧道传送到虚拟网关。
- FW解密Telnet连接请求,并将原始的连接请求转发到Telnet服务器。
- Telnet服务器向FW返回响应消息。
- FW将Telnet响应消息通过SSL VPN加密隧道返回给浏览器。浏览器的ActiveX控件会解密Telnet响应消息。
- 解密后的Telnet响应消息返回到Telnet客户端。
安全策略
图2所示为FW设备上报文所经过的安全域间。
移动办公用户访问企业Telnet服务器的过程中,经过FW的流量分为以下2类,对应流量的安全策略处理原则如下。
- 移动办公用户与FW间的SSL VPN加密报文。此处的SSL VPN加密报文会经过Untrust—>Local区域。
- 移动办公用户访问企业Telnet服务器的业务报文。这些解密以后的业务报文经过的安全区域为Local->Trust。







