谁说SSL不如IPSec强 实战体验SSL-VPN

发布时间:2024-02-12 08:02:08

VPN早已不是什么新鲜事物,被讲的最多的是IPSec VPN与SSL VPN。其中IPSec VPN颇有几分“当朝元老”的意味,老而弥坚,相信很多企业中部署的VPN还是姓IPSec的,无论是集成商、企业用户、还是产品制造商首先考虑的一定是技术的成熟程度与成本,从这一角度看,IPSec VPN可谓占尽了优势。欲详细了解IPSec VPN请点击:实例演示部署IPSec-VPN网络。简而言之,IPSec VPN的强大之处再于它工作在OSI模型的第3层,它可以在两个端点之间建立起一条“隧道”,所有基于IP的应用数据都可以通过这条隧道进行传输。

技术总是在向前发展的,当开发人员将IPSec VPN变得日臻完善,越来越好用的时候,其本身所固有的一个些问题也越来越成为人们所抱怨的对象——远程拨入IPSec VPN用户需要安装客户端才可使用,客户端无法做到真正的“零配置”。在人们越来越关心易用性的今天,使用电脑最好像冲速溶咖啡一样,作为一名网管,千万不要沉浸在向老板们介绍如何使用咖啡研磨机的喜悦中。

要是饭盒不说,您一定无法确定这就是一款SSL VPN设备(点击上图查看更多同类设备)

有人说,世界上最大的网络设备厂商是买铁盒的,因此习惯性的将它们归类于硬件厂商,这一看法其实是错误的。曾经有位做“铁盒”生意的人对饭盒说过:“我们是卖软件的,我们将软件内置在铁盒中,以方案的形式打包出售,所以我们有天下最好的反盗版措施,我们的利润可观。”世界上最大的铁盒贩名叫钱伯斯,他就立志将自己的铁盒工厂发展成为一家软件工厂。

终于,SSL VPN横空出世,并且刚一出世就被装进了铁盒中。“我们的SSL VPN产品可以实现IPSec VPN一样的功能,而且不需要安装任何客户端软件!”您可能听到过有人这样介绍自家的SSL VPN产品。在这里,饭盒要说的是,如果您是喝速溶咖啡的,您就信了这句话吧,当然,如果您是玩咖啡研磨机的,那我们就给这句话挑挑毛病。首先,SSL VPN是需要客户端的,IPSec VPN使用订制软件,而SSL VPN使用浏览器,基本是IE;再者,如果希望实现类似IPSec VPN一样的“隧道”功能,还需要为IE安装Activex控件。接下来,我们简单讲一下,SSL VPN的实现原理。

SSL VPN以HTTPS(Secure HTTP,即支持SSL的HTTP协议)为基础。SSL VPN广泛应用在基于Web的远程安全接入,为用户远程访问公司内部网络提供了安全保证。SSL VPN的典型组网架构如下图所示。管理员在SSL VPN网关上创建企业网内服务器对应的资源;远程接入用户访问企业网内的服务器时,首先与SSL VPN网关建立HTTPS连接,选择需要访问的资源,由SSL VPN网关将请求转发给企业网内的服务器,从而达到保护企业网内服务器的目的。

SSL VPN拓扑图

在网上经常可以见到真假SSL VPN之争,在饭盒看来,并不存在什么真假SSL VPN,这不过是一些商家不负责任的宣传手段罢了。在SSL VPN发展之初,其可用性是被人们打了个问号的,那时,其主要用于承载一些基于WEB的应用上,但纯WEB应用能有多少呢?此时落差就出来了,IPSec VPN再一次得到人们的赞许,在今天看来,那时的SSL VPN就成了“假货”。随着技术的发展,终于通过为浏览器安装Activex控件,SSL VPN也可以实现类似IPSec VPN一样的“隧道”功能,此时SSL VPN可支持的应用就不仅限于WEB应用了,这也就是我们常听到的“真”SSL VPN。

IPSec VPN的“隧道”连接是其优势之处也是其劣势之处,因为“隧道”就像一扇敞开的大门,所有流量都可以通过,但同时也无法在“隧道”中基于应用订制安全策略。SSL VPN正好相反,特定SSL VPN会话可以仅对应某一应用,这样就实现了细粒度访问控制(Fine Grained),但这类基本是基于WEB的应用。这种SSL VPN应用环境是我们比较熟悉的,不是我们今天要讲的话题,今天我们要向大家介绍的是“增强型”的SSL VPN,这种VPN与IPSec VPN已经非常近,它也可以建立起“隧道”,让非WEB数据流在其上传输。

配置SSL VPN

本文所使用的产品是一款由美国网件公司出品的UTM设备,型号为UTM25,这是一款内容安全网关及全功能VPN设备,支持IPSec VPN与SSL VPN。产品评测请点击:精悍民用安全网关 美国网件UTM25首测。

看图说话,首先我们来看一下“隧道”SSL VPN的设置过程:

SSL VPN配置向导

实现SSL VPN接入,我们首先需要在UTM25上创建一个新的门户(Portal Layout),本例中我们使用的是“netgear800”。如果从公网访问,地址将是。

Portal Site Tite、Banner Title、Banner Message用来设置一些登录信息,很好理解。

HTTP meta tags for cache control,中该选项,在用户退出时会清除HTTP的缓存,这样可以保证用户信息的安全,建议选中该项。

ActiveX web cache cleaner,用户退出时清除web网页上ActiveX的缓存。

VPN Tunnel page,表示在稍后的配置中配置“隧道”型VPN。

Domain Name,输入域的名字,本例中我们使用的是NETGEAR。

除了本地认证,也可以用其它的认证方式进行认证,如AD域,Radius等。

User name、Password、IDLE Timeout都很好理解,不再赘述。

配置SSL VPN客户端IP地址

VPN用户访问内网资源还需为拔入到UTM25的用户分配一个虚拟的私有IP,使SSL VPN客户端的用户可以像局域网用户一样能正常访问局域网内的资源。一般情况下,我们只需配置和UTM25相同子网的IP给SSL VPN 客户端用户即可,在本例中局域网IP是192.168.2.0/24,于是我们分配192.168.2.100~150即可。

设置了SSL VPN 客户端的子网后,还需添加本地的子网路由,如本例,需在页面下面选项“Add routers for vpn tunnel Clients”添加192.168.2.0/255.255.255.0的网段即可,添加路由的作用是当用户发出目的地址为192.168.2.0/255.255.255.0的请求时,这部分数据包被转发至正确的路径。

至此,“隧道”型SSL VPN基本就设置OK了。下面我们来看一下怎么连接这个SSL VPN门户(Portal Layout)。

验证SSL VPN

建立SSL VPN连接是需要登录的,只不过是在浏览器中进行

在IE中,使用登录,可以看到域名是之前我们建立的NETGEAR,当然您可以建立多个域,输入用户名与密码后打开如下界面。

建立VPN连接

在打开的页面中只需点击“Connect using VPN Tunnel”即可开始建立SSL VPN连接。在这个界面中给出了一个重要的提示——在VPN连接过程中,当前WEB页面不能关闭,否则SSL VPN连接将中断。

开始安装IE Activex控件。SSL VPN是不需要安装客户端软件的,这话显然是在打擦边球。

安装software

SSL VPN控制工具

控件安装好之后在任务栏出现了程序图标,控件提供的功能及信息十分简单,包括被指派的IP地址,连接时间及断开连接等。

同时我们可以看到,在网络连接中出现了一个虚拟报号连接。

使用SSL VPN

本机IP地址与VPN虚拟IP地址

PING内网网关

PING工具使用的是ICMP协议,而非HTTPS协议,但我们可以看到,远程局域网中的默认网关是可以PING通的,这证明,SSL VPN“隧道”已经成功建立。

客户端路由信息

使用route print命令可以输出当前电脑中的路由信息,其中一些条目在不进行SSL VPN拨号时是不存在的,比如第4、5、6、7条记录,这些记录的作用是将目的地址为192.168.2.0/24子网的数据包经由192.168.2.101进行转发(这里暂不考虑第6条记录)。

非WEB应用测试

为了测试多种应用,我们使用了IxChariot,这一工具内置了许多测试脚本,用来模拟各种类型的网络应用,饭盒挑选了几种,包括DNS请求、数据库(SQL)查询、Exchange服务、邮件收发等,结果表明这些应用在SSL VPN“隧道”中传输正常。

VNC远程登录

VNC是一款远程控制软件,其使用的协议亦非HTTPS,我们用VNC连接远程局域网中的另一台主机,如上图所示,与目标主机间的连接已经建立。默认端口号5900。

WINDOWS文件共享操作

SSL VPN的速度如何呢?这是个比较难以回答的问题,我们可以参考官方给出的数据。网件UTM25的标称吞吐量是70Mbps,远远高于我们测试所使用的网络带宽。在测试环境中UTM25的接入带宽是4Mbps,远程客户端是1M ADSL,在COPY数据时,可以达到100KB左右,这已是ADSL的最大速度。在中小型企业中,一个节点的用户一般不会超过50人,再考虑到出口带宽(基本不会大于10Mbps),所以SSL VPN产品应该不会出现性能上的瓶颈。

为何必须使用VPN?

  • 服务百万用户

  • 24小时技术运维

  • 一账号多端通用

  • 一对一专属客服