SSL VPN应用

2024-06-08

SSL VPN应用(精选七篇)

SSL VPN应用 篇1

随着数字化校园网的发展,学校的各类信息资源逐步实现了数字化和网络化。一方面,为了保障这些资源的安全性,许多网络资源都被放在校园内网地址当中,校内的许多数据资源都是受保护的,只有学校内部用户才可以访问资源;另一方面,学校领导或者普通员工在异地也需要处理学校的事务或者查阅学校资料,而用户身份的识别往往是利用IP地址来识别的,这就导致了学校用户利用校外网络无法访问到内网资源。SSL VPN技术为这个难题提供了可行的解决方案。

1 VPN技术简介

VPN(Virtual Private Network,虚拟专用网络)指的是在公用通信网络上建立一条虚拟专用网络通道,利用公共通信网络来传输内部数据。其之所以称为虚拟专用网络通道,主要是因为整个VPN网络的任意两个节点之间的连接并没有传统专网所需的端到端的物理链路,而是架构在公用网络服务商所提供的网络平台之上的逻辑网络,用户数据在逻辑链路中传输。VPN主要采用了隧道技术、加解密技术、密钥管理技术和使用者与设备身份认证技术,从而保证构建在公共网络之上的虚拟内部网络的有效联通性和安全性。虽然VPN的通讯是建立在公共互联网络的基础上,但实际上用户在使用过程中感觉如同使用专用网络,具有与内部网络相同的安全性、易管理性和稳定性,可当专网使用。

2 SSL VPN特点及优势比较

SSL VPN就是采用SSL(Security Socket Layer,安全套接层协议)来实现远程接入的一种VPN技术。

SSL协议是基于WEB应用的安全协议,包括服务器认证、客户认证(可选)、SSL链路上的数据完整性和SSL链路上的数据保密性。对于内、外部应用来说,使用SSL可以保证信息的真实性、完整性和保密性。

SSL VPN使用SSL协议进行认证和加密,不需要安装其它客户端软件,只要有支持SSL的浏览器就可以。因此,SSL VPN远程资源访问方案更加容易配置与管理,网络配置成本比IPSec VPN要低很多。

SSL VPN为远程用户提供一种基于SSL协议的访问通道。SSL VPN服务器位于企业防火墙内部,防火墙开通标准的HTTPS服务(443)端口。SSL VPN网络应用拓扑图如图1所示。

SSL VPN使用安全套接层(SSL协议)提供数据加密,保证数据在公网上传输的安全。由于SSL协议属于高层安全机制,因而被广泛应用于WEB浏览器程序和WEB服务器程序。当前几乎所有的标准浏览器中都内置了SSL协议,因而用户可以通过任何的标准浏览器实现远程安全接入。

根据SSL VPN技术的特点,可以做到精细的权限控制。不同的用户可以授予不同级别的权限,比如对数字图书馆资源也可以针对不同用户进行权限细分,不同权限级别用户访问相应的资源,非授权用户则无法访问;再比如,人事管理人员可以访问人事管理系统、网络管理人员可远程调试网络设备等。SSL VPN可以建立基于分组的策略管理,例如设立教师组、学生组等,不同组赋予不同的访问权限;也可建立基于角色的策略管理,给每一个角色赋予不同的权限;还可设立临时账号,给那些需要临时访问学校内部资源的人员提供便利,在使用期限截止以后,该账号会自动注销。

身份认证手段有很多,主要有CA、USBKey、用户名/密码、LDAP/AD、Radius、短信猫/短信网关、动态令牌、硬件特征码等。

目前,SSL VPN可以支持多种用户认证方式,除了支持常规的Local DB、LDAP/AD、Radius、 Secur ID等认证方式外,还可以支持USBKEY的身份认证。通过将SSL加密隧道与USB Key认证相结合,结合客户端计算机安全检查功能,可以为用户提供完善的内部网络资源的安全远程接入服务。对于校园外的移动办公用户,只要通过任何标准Web浏览器,就可以在任何场所、通过任何终端,无需安装任何客户端软件就可以安全访问校园内部任何资源。

现在有更强的身份认证手段,就是通过把远程访问的应用系统账号和SSL VPN账号进行绑定来增强应用系统账号使用安全性。

目前,部分高校已经建立了统一身份认证系统,例如一卡通系统、Radius系统、Oracle/SQL Server数据库系统、AD/LDAP系统。SSL VPN可以和这些身份认证系统有机地结合在一起,以防止用户账号被盗用后,不良使用者进入学校内部网络窃取重要机密信息。高校SSL VPN的用户比较多,而且流动性较大,把SSL VPN认证与身份认证系统相结合,可大大减少网络管理员的工作量。用户可以用已有的身份认证账号进行登录, 管理员不需要重复建立账号,首次登录后账号信息将自动记录到SSL VPN服务器上,以后使用SSLVPN账号需要进行双重匹配。如果某一用户账号从认证系统注销, SSL VPN就会匹配失败无法登录。

3 SSL VPN在校园信息化建设中的应用

3.1 通过SSL VPN实现各办公应用系统的访问

使用SSL VPN 接入的师生,只需要登陆此SSL VPN 门户,经过认证和授权,就可以通过SSL VPN 隧道轻松访问校内各应用系统,如排课系统,即可进行查阅等操作,也可以完成信息发布、事务处理等校务工作。

3.2 通过SSL VPN实现远程网络管理

当校园网的软件或硬件设备出现意外故障时,网络管理人员可以马上通过SSL VPN接入到校园内部网络,通过SSL VPN隧道安全快捷地在任何时间、任何地点及时修复故障,完成网络管理工作,保障校园信息化系统的稳定工作。

3.3 通过SSL VPN实现数字图书馆的访问

用户在校外公网接入到校内时必需经过SSL VPN的认证和授权,只有通过认证和授权的用户才能使用接入SSL VPN,保障了学校授权人员的权限。客户登陆后SSL VPN网关会分配一个虚拟的IP地址给登陆用户,这个地址是学校内部统一地址,这些IP地址被允许访问校内的和园区的数字图书馆,这样通过SSL VPN在校外网也能顺利地访问到园区数字图书馆,解决了园区图书馆只对本校园IP地址开放的问题,保证了广大师生在校外也能随时使用大学园区图书馆。

3.4 通过SSL VPN完成WLAN接入用户的管理控制和计费

用户接入校内网时在SSL VPN的门户上进行认证、审计。其认证是和城市热点计费的Radius系统相结合的,即用户登录时,SSL VPN网关会将用户名、密码等信息通过Radius 协议提交给Radius 服务器进行认证,进而决定用户接入是否允许。SSL VPN还会将用户登录后分配的IP地址、以及登录和退出的时间提交给Radius 服务器来进行计费。同时,SSL VPN 还可以对WLAN 接入用户的访问权限进行控制,比如是否允许访问某些网段、公网是否可以访问等接入控制。

4 SSL VPN的实施

SSL VPN是基于应用层的VPN,也就是它的工作是基于Http协议和TCP层的。SSL VPN的部署非常简便,可串接也可旁路接入,一般可把它作为一台应用服务器部署于校园网络的任意位置。正常情况下,SSL VPN部署在防火墙之后,需要将防火墙上的一个固定的公网IP地址映射到SSL VPN上,或者只映射其IP地址的443端口即可。

在配置好SSL VPN服务器的应用、用户、权限后,使用人员可在任意能够接入Internet的地方通过浏览器,采用HTTPS(Secure Hypertext Transfer Protocol)方式访问该固定公网IP或者对应域名,即可轻松接入校园网访问OA系统、学工系统、数字图书馆等学校内部资源。

4.1 网络接口配置

这里以网关模式为例,需要配置内网接口相关信息(包括LAN口的IP地址、子网掩码)。

IP地址:172.18.0.17;子网掩码:255.255.255.0

外网线路类型有以太网和ADSL两种类型可供选择,这里选用的是以太网。

IP地址:60.190.19.108

子网掩码:255.255.255.224

首选DNS:202.96.104.16

备份DNS:202.96.104.17

默认网关:60.190.19.97

配置完成后,保存配置并重新启动所有服务,以使配置生效,接着完成其它设置。

除了网关工作模式,还有单臂模式。选择单臂模式时,只需要配置内网接口(LAN口)IP地址、子网掩码、默认网关、设置DNS。

在系统设置中,可以对网络接口的配置进行日常的维护。多IP绑定只有在外网接口为以太网模式下方可启用。

在设备外网接口能获取多个IP,需要把这些IP都映射到内网服务器时使用。通过多IP绑定,可以为WAN口绑定多个IP。WAN口绑定的多IP必须和WAN口配置的IP在同一个网段,使用相同的网关IP,否则无法在WAN口进行绑定。

4.2 资源管理

SSL VPN 设置主要分为三大部分,分别是资源管理、用户管理和角色管理。三者之间的关系是:通过角色把用户组或用户和资源联系起来,用户组内的用户获得相应的资源访问权限。

资源管理主要是用户定义SSL VPN内网的可用资源,包括WEB资源、APP资源和IP资源。为了更好地对资源进行管理、更符合用户使用习惯,以及VPN客户端可以更有条理地显示,可以把多个资源添加到资源组。在资源列表中,可以清楚显示对应资源。

WEB资源支持包括HTTP(S)、MAIL和FTP 3种类型的页面应用。WEB资源中定义的资源是通过修改访问地址来实现访问的,有一定的局限性,而APP资源几乎支持所有的C/S应用,包括Web、Mail和Ftp等。若通过WEB资源无法实现的,可以使用APP资源来添加。

APP资源主要用于定义、配置和管理各种类型的SSL VPN内网资源,以适应各种各样的C/S结构及基于TCP协议的应用程序对SSL VPN内网资源和内网服务器的访问。

IP资源主要用于定义、配置和管理各种基于IP协议的SSL VPN内网资源,以适应各种各样的C/S结构及不同协议(TCP/UDP/ICMP)的应用程序对SSL VPN内网资源和内网服务器的访问。

5 结语

SSL VPN 作为一种安全的接入技术,迎合了用户低成本、高性价比远程访问的需求,并已经广泛应用于各行各业。随着理论研究的进行,其功能将更加完善,安全性能也将越来越高。本文列举了SSL VPN实施中的一些基本配置,但在实际项目运用中要结合具体情况,比如要考虑环境、设备等因素。

参考文献

[1]马淑文.SSL VPN技术在校园网中的应用与研究[J].计算机工程与设计,2007(21).

[2]张世永.网络安全原理与应用[M].北京:科学出版社,2005.

PKI技术在SSLVPN中的应用 篇2

SSL VPN是近年来兴起的一种新的VPN技术,是一种解决远程用户安全访问本地网络中敏感数据的解决方法。SSL VPN技术[1]有着易于实现安装,不需要安装客户端,成本低廉,细粒度的访问控制等优势,适用于远程分散用户的链接。然而随着SSL VPN的广泛应用,SSL VPN技术也暴露出来一些问题,例如黑客会利用所控制的合法终端进行攻击或造成数据的泄漏。SSL VPN虽然能够抵御外部用户的终端的攻击,但是针对这些来自合法用户的攻击比较无力。

因此,本文将从SSL VPN存在的问题入手,针对这些安全保护上问题引入数字证书和数字签名技术,改进了SSL VPN的安全性能,从而使其满足达到应用到远程测控网络的构建的安全性的要求。

2 SSL VPN技术概述

SSL VPN技术是在现有的SSL协议的应用基础上发展而来的,它增加了客户端执行访问控制和安全的级别和能力。SSL协议一般位于TCP/IP协议与各种应用层协议之间,其可分为两层:SSL记录协议层,SSL握手协议层。SSL握手协议是建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。SSL记录协议是建立在SSL握手协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

3 基于PKI技术的SSL VPN设计

3.1 PKI技术概述

公钥基础设施Public Key Infrastructure(PKI)[2,3]是一个采用非对称密码算法原理和技术实现的、具有通用性的安全基础设施。该设施通过规范化地管理密钥,并利用数字证书上的数字签名来标识在密钥持有人的身份,为应用系统进行身份验证、数据的完整性和保密性、不可否认性等来进行安全保障的措施,从而提供一个安全可靠的系统环境。常见的PKI系统如下图所示:

PKI系统的基础是数字证书[2,4,5]。数字证书其主要用于在网络业务活动中对实体标识身份,方便通信双方对其身份的验证,也会对证书的有效期进行检查,保证了不可抵赖性,解决了双方信任问题。数字证书通常由证书认证中心签名并发布出来,包含了公钥持有者的信息以及公开的密钥的文件。

数字证书主要分为两大类,一类是签名证书,主要用于对用户信息进行签名,保证信息的不可否认性和不可抵赖性;另一类则是加密证书,主要用于传输过程中对用户传送的信息进行加密,以保证信息的真实性和完整性。

而数字证书的安全性则由加密算法的优劣来决定。目前常见的非对称加密算法主要有RSA,DSA和ECC。三种加密算法都有着很高的安全性,但以本文的角度上来考虑到用户访问的数据能够在最短的时间内进行加密或解密从而进行传输。所以本文会以加解密算法的复杂度作为首要条件进行考虑,综合考虑加密算法的安全性,最后选择了椭圆曲线加密算法—ECC。

3.2 EEC算法

椭圆曲线加密算法ECC是一种公钥加密算法,它具有计算量小,存储空间占用小,带宽要求低等优点。它的算法的核心思想是利用椭圆曲线上的有理点构成Abel加法群上椭圆离散对数计算的复杂性。

ECC是利用有限域上椭圆曲线方程:

其中,p是奇素数,且

在域x∈[0,p)π上,可以根据公式计算出y值,得到点(x,y),其中x,y<p,记为Ep(a,b)。在曲线Ep(a,b)上的取两个点K,G,对于等式K=k G来说,通过K,G两点来计算出k是非常困难的。根据这一特性,把点G称为基点,k作为私有密钥,K作为公开密钥,形成了一套非对称加密算法体系。

基于两个点的算法的伪代码描述如下:

3.3 实验结论

目前市面上的SSL大部分采用的是RSA非对称加密算法,因此本文选取了RSA与EEC加密算法的比较。在实验过程分别采用了依次递增加密密钥长度,来测试两个算法的耗时和效率。

根据图4和图5的结果,可以得到实验结论为:随着密钥长度越来越长,RSA性能大为降低。而ECC的算法则上升程度有限。总的来说,EEC算法比RSA更为适用与进行数字证书的加密。

3.4 PKI技术在SSL VPN中的应用

系统设计的目标是建立一个具有高安全性,能够适用基于互联网进行远程测控系统通信的SSL VPN安全系统。系统采用SSL协议为基础,引入PKI数字证书技术,来保证测控信息通道安全的安全通讯系统。系统主要完成的工作分为以下几个部分:

(1)建立SSL VPN服务器

(2)建立认证中心CA,实现对数字证书的发放、管理和作废等功能。

(3)建立LDAP目录服务器,用于查询用户信息等功能。

SSL VPN服务要能够接受用户的访问,提供给用户相应的功能权限,并能对访问的用户进行管理。用户从PKI数字证书系统中去申请用于建立SSL连接的所需求的数字证书,同时也会去申请角色的权限(通常内嵌在数字证书中)。管理员根据不同的需求分配不同的角色给用户,以便用户使用自己相应的资源。SSL VPN应用服务器根据用户的权限进行识别,然后建立起一个隧道连接,同时也会检测访问的权限范围,提供相应的操作结果值和安全范围内的资源给用户。

在用户的访问请求阶段,SSL握手协议层中采用了生成随机码和验证,保证建立过程的唯一性和随机性。利用了PKI数字证书技术对用户的身份进行验证。采用了用户角色的设计,对不同的用户提供了不同的访问权限等级,保障了应用服务器上的资源的安全使用。在SSL协议层采用了多种方法对数据的传输过程进行加密。同时,在传输数据过程中采用MAC算法对传输数据的完整性进行验证,保证了数据的完整性。

4 结论

通过引入了PKI数字证书系统,弥补了SSL VPN在安全性方面的不足,添加了用户权限分级控制,满足了不同层次的需求,可以更加灵活配置管理远程接入的访问,实现了资源的安全共享,极大提高了系统的数据的安全性,更能适应不同的数据操作环境。

摘要:文章首先介绍分析了SSL协议,探讨了SSL协议对VPN支持的方面可能存在缺陷,并提出了引入PKI数字证书系统,用于解决网络环境下身份认证、访问控制等存在的问题,以来增强SSL VPN系统的安全性,并对PKI的加密算法的安全性进行了分析比较。基于PKI技术的SSL VPN技术有效的弥补了SSL VPN在安全性的不足,添加了用户权限分级控制,满足了不同层次的需求,可以更加灵活配置管理远程接入的访问,实现了资源的安全共享。

关键词:SSL协议,PKI技术,数字证书,VPN,网络技术

参考文献

[1]Charlie Hosner.Open VPN and the SSL VPN Revolution.http://openvpn.net/index.php/open-source/articles.html.

[2]徐勇,袁丁.数字证书的研究与实现[J].通信技术,2009(1).

[3]虞歌.PKI体系的分析[J].现代计算机,2003(7).

[4]张仕斌,何大可,盛志伟.PKI安全认证模型的分析与研究[J].成都信息工程学院学报,2006(3).

[5]徐庆征.公开密钥基础设施PKI及其体系结构的研究[J].数据通信,2004(3).

[6]Ramy K.Khalil,Fayez W.Zaki,Mohamed M.Ashour,et al.AStudy of Network Security Systems[J].International Journal ofComputer Science and Network Security,2010.

[7]陈向荣,余胜生.IPSec-VPN中应用PKI的研究与实现方案[J].计算机与数字工程,2002(6).

[8]Eric Young.Open SSL project[EB/OL].http://www.openssl.org.

SSL VPN应用 篇3

国家电网公司在“十一五”信息发展规划中对信息化建设工作提出了明确的总体目标。其中核心应用系统中招投标系统的目标是:构建公司系统统一的网上招投标管理平台, 优化内部资源配置, 提高全公司系统的招投标工作效率和管理水平。“十一五”期间国家电网公司信息化建设的主要任务是构建SG186工程, 物资管理业务应用-招投标业务应用是八大业务应用中第1个进行开发并在国网系统内进行推广实施的项目。

如果采用传统的WWW方式直接访问招投标业务应用, 存在数据在公网上传输未加密、认证控制缺乏、服务器易遭攻击等安全隐患, 为了增强招投标业务应用访问的安全性, 引入了SSL VPN技术。

1 SSL VPN技术介绍

VPN的网络连接类型主要分为Site to Site和End to Site2种类型。Site to Site主要指的是网络和网络之间的VPN连接。而End to Site指的是移动终端到企业私有网络之间的VPN连接。其中, IPsec VPN属于Site to Site类型的VPN, 而SSL VPN就是End to Site类型的VPN。

1.1 SSL VPN定义

从概念角度来说, SSL VPN即指采用SSL (Security Socket Layer) 协议来实现远程接入的一种新型VPN技术。SSL协议是网景公司提出的基于Web应用的安全协议, 它包括服务器认证、客户认证 (可选) 、SSL链路上的数据完整性和SSL链路的保密性。

1.2 SSL VPN原理

SSL (安全套接层) 协议是一种在Internet上保证发送信息安全的通用协议, 它处于应用层。SSL用公钥加密通过SSL连接传输的数据来工作。SSL协议指定了在应用程序协议 (如HTTP、Telnet和FTP等) 和TCP/IP协议之间进行数据交换的安全机制, 为TCP/IP连接提供数据加密、服务器认证以及可选的客户机认证。SSL协议包括握手协议、记录协议以及警告协议3部分。握手协议负责确定用于客户机和服务器之间的会话加密参数。记录协议用于交换应用数据。警告协议用于在发生错误时终止两个主机之间的会话。

VPN (虚拟专用网) 则主要应用于虚拟连接网络, 它可以确保数据的机密性并且具有一定的访问控制功能。VPN是一项非常实用的技术, 它可以扩展企业的内部网络, 允许企业的员工、客户以及合作伙伴利用Internet访问企业网, 而成本远远低于传统的专线接入。

所谓的SSL VPN, 其实是VPN设备厂商为了与IPsec VPN区别所创造出来的名词, 指的是使用者利用浏览器内建的SecureSocket Layer封包处理功能, 用浏览器连回公司内部SSL VPN服务器, 然后透过网络封包转向的方式, 让使用者可以在远程计算机执行应用程序, 读取公司内部服务器数据。它采用标准的安全套接层 (SSL) 对传输中的数据包进行加密, 从而在应用层保护了数据的安全性。高质量的SSL VPN解决方案可保证企业进行安全的全局访问。在不断扩展的互联网Web站点之间、远程办公室、传统交易大厅和客户端间, SSL VPN克服了IPSec VPN的不足, 用户可以轻松实现安全易用, 无需客户端安装且配置简单的远程访问, 从而降低用户的总成本并增加远程用户的工作效率。通过SSL VPN远程访问企业内部网络的构架如图1所示。

1.3 SSL VPN技术特点

IPSec VPN和SSL VPN是2种不同的VPN架构, IPSec VPN是工作在网络层的, 提供所有在网络层上的数据保护和透明的安全通信, 而SSL VPN是工作在应用层 (基于HTTP协议) 和TCP层之间的, 从整体的安全等级来看, 两者都能够提供安全的远程接入。但是, IPSec VPN技术是被设计用于连接和保护在信任网络中的数据流, 因此更适合为不同的网络提供通信安全保障, 而SSL VPN因为以下的技术特点则更适合应用于远程分散移动用户的安全接入。

(1) 客户端支撑维护简单。对于大多数执行基于SSL协议的远程访问不需要在远程客户端设备上安装软件, 只需通过标准的Web浏览器连接因特网, 即可以通过网页访问到企业内部的网络资源。而IPSec VPN需要在远程终端用户一方安装特定软件以建立安全隧道。

(2) 提供增强的远程安全接入功能。IPSec VPN通过在2站点间创建安全隧道提供直接 (非代理方式) 接入, 实现对整个网络的透明访问;一旦隧道创建, 用户个人计算机就如同物理的处于企业内部局域网中, 会带来很多安全风险, 尤其是在接入用户权限过大的情况下。SSL VPN提供安全、可代理连接。通常SSL VPN的实现方式是在企业的防火墙后面放置一个SSL代理服务器。如果用户希望安全的连接到公司网络上, 那么当用户在浏览器上输入一个URL后, 连接将被SSL代理服务器取得, 并验证该用户的身份, 然后SSL代理服务器将连接映射到不同的应用服务器上。

(3) 提供更细粒度的访问控制。SSL VPN能对加密隧道进行细分, 使终端用户能够同时接入Internet和访问内部企业网资源。另外, SSL VPN还能细化接入控制功能, 提供用户级别的鉴权, 依据安全策略确保只有授权的用户才能够访问特定的内部网络资源, 这种精确的接入控制功能对远程接入IPSec VPN来说几乎是不可能实现的。

(4) 能够穿越NAT和防火墙设备。SSL VPN工作在传输层之上, 因而能够遍历所有NAT设备和防火墙设备, 使得用户能够从任何地方远程接入到公司的内部网络。而IPSec VPN工作在网络层上, 它很难实现防火墙和NAT设备的遍历, 并且无力解决IP地址冲突。

(5) 能够较好地抵御外部系统和病毒攻击。SSL是一个安全协议, 数据全程加密传输。另外, 由于SSL网关隔离了内网服务器和客户端, 只留下一个Web浏览接口, 客户端的大多数木马病毒感染不到内网服务器。而传统的IPSec VPN由于实现的是IP级别的访问, 一旦隧道创建, 用户终端就如同物理的处于企业内部局域网中, 内部网络所连接的应用系统都是可以侦测得到, 这就为黑客攻击提供了机会, 并且使得局域网能够传播的病毒, 通过VPN一样能够传播。

(6) 网络部署灵活方便。IPSec VPN在部署时一般放置在网络网关处, 因而需要考虑网络的拓扑结构, 如果增添新的设备, 往往要改变网络结构。而SSL VPN却有所不同, 它一般部署在内网中防火墙之后, 可以随时根据需要, 添加需要VPN保护的服务器, 因此, 无需影响原有网络结构。

2 SSL VPN技术在国家电网公司招投标业务中的应用

国家电网公司“十一五”发展规划纲要中提出:建设物资管理系统, 实现公司范围内招投标信息、专家信息和供应商信息的共享, 构建公司系统统一的物资招投标管理系统。实现物资采购、储运和结算过程的统一管理。这是国家电网公司为实施“集团化运作、集约化发展、精益化管理、标准化建设”提出的重要目标之一。招投标业务应用是物资管理系统的核心。

招投标业务应用包括项目申报、网上招投标、专家抽取、电子化评标4个子系统。网上招投标子系统结合了先进的电子商务、流媒体、网络技术和通讯技术, 将网络和传统招投标方式有效结合, 实现了招标、投标、开标、监督等网上操作。在网络平台上实现了招标单位自主自助招标;投标单位自主自助投标。SSL VPN技术主要应用于招投标业务应用网上招投标子系统 (见图2) 。

在网上招投标过程中, 招标代理机构发布招标公告后, 会发送短信给常用供应商。常用供应商收到短信后, 通过Internet访问网上招投标系统, 购买各自需要投的标包, 经过招标代理机构确认后, 下载相应的招标文件及投标报价表并在规定的时间内上传投标文件及填写完毕的投标报价表。

由此可以看出, 常用供应商频繁通过Internet访问网上招投标模块, 为此在招投标业务应用设计之初, 就决定采用SSL VPN技术增加系统的安全性。而Array Networks SPX产品不仅提供安全接入的功能, 它还能起到Web应用的访问加速的效果。Array Networks S P X产品采用了专利性的SPEEDSTACK技术, 同时通过独有的操作系统、反向代理引擎等技术让SSL VPN的应用速度大大提升。另外, 独具的SSL槽硬件加速器的应用和对操作系统内核的进一步优化, 更让Array Networks SPX产品在应用速度上脱颖而出。为此招投标业务应用系统在国家电网公司范围内统一采用了Array Networks SPX 3000产品并做了双机热备, 当一台SSL VPN设备发生故障时, 另一台会自动切换, 从而提高系统的可用性。

3 结语

SSL VPN应用 篇4

随着计算机网络技术的迅速发展, 企业的信息化程度得到了很大的提高, 企业公司分支机构、商业伙伴及供应商同公司位于不同的地方。如何在他们之间建立一条专用的安全的通信线路, 成为企业快速发展需解决的重要问题。虚拟专用网 (Virtual Private Network, VPN) 是通过一个公用网络 (通常是因特网) 建立一个临时的、安全的连接, 是一条穿过混乱的公用网络的安全、稳定的隧道。

目前, 比较流行的VPN技术有:IPSec VPN和SSL VPN[1]。IPSec VPN需要在通信双方安装特定的客户端软件, 在客户端和服务器端还需要大量的评价、部署、培训、升级和支持, 是一个成本高、复杂程度高的方案, 没有安装客户端的移动用户无法实现临时的远程VPN连接。与IPSec VPN不同的是, SSL VPN是采用SSL协议实现远程接入, SSL协议是基于Web应用的安全协议。远端的移动用户无需安装任何特殊的客户端软件, 也无需进行任何手动配置, 仅需一个Web浏览器就可以连接VPN。SSL VPN由于其部署简单, 无客户端, 维护成本低, 网络适应强等特点被企业广泛采用。

SSL VPN系统采用SSL协议建立安全可靠的隧道, 实现了服务器的认证、客户认证 (可选) 、数据的完整性和保密性等功能[2]。对系统中的敏感数据还需要对用户的访问进行细粒度的控制, 确保系统资源的安全性。

1 基于RBAC的动态授权模型

1.1 基于角色的访问控制 (RBAC)

基于角色的访问控制 (Role-Based Access Control, RBAC) 作为自主访问控制和强制访问控制的代替, 成为目前应用最广泛的访问控制技术之一。RBAC的基本思想是:在用户和权限之间引入角色, 将权限与角色相联系, 通过给每一个用户分配角色, 让用户间接地与权限相联系, 极大地降低了权限管理的复杂性, RBAC模型如图1所示。

在模型中每个会话与一个用户相关联, 而每个用户可以发起一个或多个会话。而“用户-角色”和“角色-权限”之间都是多对多的关系, 也就是说, 一个用户可以有多个角色, 同一个角色可分配给多个用户。同样地, 一个角色可以拥有多个权限, 一个权限可被多个角色所拥有。

1.2 SSL VPN系统中的授权问题

在SSL VPN系统中, 当客户端访问系统内的服务器 (如Webservers等) 时, 必须先与SSL VPN服务器建立SSL连接。SSL VPN服务器在端口443监听客户端的连接, 所以, 只要防火墙打开443端口, 客户端便可以通过SSL VPN服务器连接到内部的资源服务器[3], 根据系统给用户分配的角色获取相应的访问权限。在此过程中存在如下的问题:

(1) 用户可以在任一客户端进行登录, 只需下载一个浏览器 (如IE浏览器) 即可, 因为目前的浏览器都支持SSL协议[4]。而客户端的安全性无法保证, 如果客户端有病毒, 则可能会通过SSL VPN服务器感染到内部网络。

(2) SSL VPN服务器通过绑定443端口来监听客户端的连接, 一旦客户端有连接请求, SSL VPN服务器就建立一个SSL连接。使得恶意用户能够绕过防火墙, 达到攻击内部服务器的目的。

针对以上存在的安全问题, 本文在用户建立SSL连接时, 对用户的客户端进行安全状态检测, 并依据该安全状态值和用户的角色进行动态授权, 提高系统的访问控制能力。

2 动态授权模型在SSL VPN系统中的应用

在基于RBAC的动态授权模型中, 当客户端向SSL VPN服务器发出连接请求时, 在建立SSL连接的同时, 对客户端的安全状态进行检测[5,6], 检测内容包括防火墙的检测、反病毒的检测和操作系统补丁的检测。

防火墙的检测主要是对客户端安装的防火墙软件的版本号进行检查, 是否符合要求;而反病毒的检测, 除了要检测反病毒软件是否安装运行, 还要检测是否打开了实时保护服务和病毒库是否更新;操作系统补丁的检测是通过调用API函数获得操作系统的基本信息, 包括打过补丁的修补包。

这三个部分的检测结果与客户端的安全状态密切相关, 系统按照综合的检测结果对客户端的安全状态进行分级, 分别划分为等级A, B, C, 其中等级A安全级别最高, 等级C最低。同时对系统内部的资源也分别设置访问等级, 分别为1, 2, 3等级。在用户请求访问内部资源时, 只能访问级别相等或更低的资源。

在该动态授权模型中, 系统根据用户的安全等级和用户的角色以及资源的访问等级进行访问控制[7,8], 其授权模型图如图2所示。

该授权模型的工作过程如下:

(1) 对用户所使用的客户端进行安全状态检测, 检测客户端的防火墙、反病毒软件和操作系统的补丁, 根据这三部分的安全检测结果, 判定出客户端的安全级别。

(2) 对用户进行角色分配, 遍历角色所对应的资源列表。

(3) 遍历角色所映射的资源列表, 比较资源许可级别与客户端安全级别, 把其中资源许可级别大于等于客户端安全级别的资源作为用户最终可访问的资源。

3 结语

在SSL VPN系统中, 用户可以在客户端下载浏览器通过SSL协议连接到内部网络, 即外出办公的用户或合作伙伴可以使用公共网上的任一客户端进行登录。为了确保客户端的安全性, SSL VPN服务器对请求访问的客户端进行安全状态检测, 检测客户端所安装的防火墙、反病毒软件和系统补丁, 并根据检测结果对客户端的安全状态划分等级。在SSL VPN系统的授权模块中将用户的权限与具体使用的客户端安全状态绑定, 在系统运行期间动态调整用户的权限, 增加了系统的灵活性, 满足了SSL VPN系统中的访问控制需求。

注:本文通讯作者为袁超。

摘要:授权模块是SSL VPN系统的基础模块, 主要是对系统内的用户进行访问控制。动态授权模型是在RBAC的基础之上, 为了满足SSL VPN系统的访问控制需求, 引入了客户端的安全状态值, 根据用户的角色和安全状态值来判定用户的最终访问权限, 用于控制不同安全状态客户端的访问请求, 进一步提高了SSL VPN系统的安全性能。

关键词:SSL VPN系统,动态授权,RBAC,安全状态

参考文献

[1]徐家臻, 陈莘萌.基于IPSec与基于SSL的VPN的比较[J].计算机工程与设计, 2004, 25 (4) :586-588.

[2]FOROUZAN B A.密码学与网络安全[M].北京:清华大学出版社, 2009.

[3]周敬利, 曾海鹏.SSL VPN服务器关键技术研究[J].计算机工程与科学, 2005, 27 (6) :7-9.

[4]张学杰, 李大兴.SSL技术在构建VPN中的应用[J].计算机应用, 2006, 26 (8) :1827-1830.

[5]余胜生, 欧阳长春, 周敬利, 等.访问控制技术在SSL VPN系统中的应用[J].华中科技大学学报:自然科学版, 2006, 34 (7) :49-52.

[6]徐博, 郭淑琴, 陆敏飞.一种基于扩展RBAC的访问控制模型在SSL VPN系统中的应用[J].浙江工业大学学报, 2011, 39 (2) :177-181.

[7]段卓然.SSL VPN系统用户权限管理模块的设计与实现[D].北京:北京邮电大学, 2008.

[8]韩庆占.改进的RBAC模型及其在电子病历系统中的应用[D].沈阳:东北大学, 2008.

[9]李之棠, 贺济美, 雷杰.SSL VPN的安全漏洞及其解决方案[J].计算机工程与科学, 2006, 28 (8) :10-13.

SSLVPN安全特征分析 篇5

1 VPN的应用浅析

当前在VPN领域中, 主要关注远程安全接入的两种技术为SSL VPN以及IPSec VPN, 二者在应用中的表现各有千秋。SSL VPN相对而言不需要客户端软件, 因此特别适用于远程用户的链接, 用户无需安装任何软件或者搭建任何专用平台即可通过Web浏览器访问企业环境中的应用。但是SSL VPN也只能对通信双方的某一个引用通道展开加密保护, 而无法对整个通道实现加密, 因此这成为了SSL VPN无法避免的弊端。但是从总体应用特征的角度看, SSL VPN在经济性等方面都明显优于IPSec VPN, 因此在应用领域有着良好的认可度。

从SSL VPN的工作原理看, 是采用安全套接层 (SSL, Secure Socket s Layer) 协议来实现远程接入的VPN技术, 是实现SSL协议嵌入的VPN网络应用。这样一组基于Web的应用安全协议包括多个层面内容, 诸如服务器认证、客户身份认证、SSL链路数据完整性以及SSL链路数据保密性等方面都在其涵盖范畴之内。这样的一个安全协议体系, 对于切实保证VPN数据传输环境的安全性和保密性有着毋庸置疑的积极意义。SSL VPN通过以安全控制策略作为依据, 面向分散的移动用户展开服务, 确保其能够从外网实现对于企业内网资源的安全访问通道建设。

SSL VPN在实际数据传输环境中需要实现三个方面的基本职能, 用以对其应用需求加以有效支持。首先需要职能Web方式的应用, 这是最为基本的一个方面, 包括诸如通过SSL VPN建立的安全数据通路来访问基于Web的邮件系统等都包括在这样的需求层面之内。其次则是需要能够支持非Web方式应用, 即能够支持用户实现对于非Web页面的文件共享。这一方面需要SSL VPN网关能够有效将其与内网服务器的通信内容转化成为基于Web的格式和协议, 并且进一步实现面向客户端的数据发送。此种方式对用户透明, 即从用户角度看并无法区分这些应用是否基于Web特征。最后, SSL VPN还需要能够支持基于客户端/服务器的应用代理。对于此类应用实现支持的过程中, 通常会需要在终端建立起一个端口转发器, 通常表现为一个小型Java或者Active X程序, 其功能在于实现对于端口连接的有效监听。当数据包通过此端口传输的时候, 即会经由SSL连接隧道传送至SSL VPN网关, 并且由网关对数据包进行解封, 进一步转发给相应的应用服务器。

2 SSL VPN体系的安全特征分析

对于SSL VPN体系而言, 其在当前的数据传输环境安全体系中占据着重要的地位, 其意义不容忽视。但是此种协议方式并非无懈可击, 从应用层面看, 仍然存在两个方面的问题需要重点关注:

2.1 浏览器端的安全

在浏览器端, 可能会因为用户习惯或者计算机日常工作方式等多种因素造成SSL VPN的安全机制失效。例如用户在退出系统之后, 相应的个人数据仍然会保存, 而如果其他人继续使用同一台计算机, 则拥有权限阅读这些相关数据, 这是SSL VPN体系所无法杜绝的。类似的问题还有用户的登陆保持状态, 通常用户都会将关闭浏览器作为退出的代替动作, 但是关闭浏览器并不意味着关闭SSL VPN服务器端进程, 因此同样会造成安全漏洞。此外, 病毒也是浏览器端的安全问题之一, 蠕虫或其他病毒可能会通过使用SSL VPN建立的隧道感染内部网络。

面对此种情况, SSL VPN同样采取了相应的手段用以降低浏览器段的安全威胁。主要采取的方法包括引入残留信息清理机制以及进程超时机制, 并且在应用层网关技术以及内部网络信息加密等方面给予更多关注。

2.2 服务器端的安全

服务器端同样存在安全隐患, 重点体现在应用层安全威胁以及身份认证两个主要方面。对于应用层安全威胁而言, 由于SSL VPN体系大多采用Web服务器作为底层工作平台, 因此Web服务器的安全隐患会成为SSL VPN无法克服的障碍。并且在身份认证方面, SSL VPN允许所有的浏览器登录系统, 从而造成如果用户在公共场合登陆系统, 就会进一步增加用户资料的泄漏风险。这些安全问题都从客观上要求更为严谨的身份认证体系出台。

对于服务器端的安全问题, SSL VPN同样有相应的应对措施, 以实现对于安全水平的提升。具体而言, 常见的做法可以利用应用层过滤技术抵制黑客对服务器端应用层漏洞的攻击, 即只允许身份确定的应用层数据包通过, 此种方式对于加强黑客非法请求等方面的防范也有一定积极价值。另一个方面是可以采用强认证机制, 当前SSL VPN系统使用较多的认证方式有MS Act ive Directory、LDAP、令牌鉴别机制和短信息认证等都属于这一范畴。

3 结论

SSL VPN是数据传输领域中的重要技术之一, 其理论以及安全实践在当前环境中已经日趋成熟。虽然如此, 但是随着技术的进步, 更多安全隐患不断涌向, SSL VPN的安全防卫机制也必须同样与时俱进。唯有如此才能切实为数据传输用户提供安全可靠的网络环境, 并且实现其自身的成熟与发展。

摘要:本文首先从VPN的安全角度出发, 对于SSL VPN的基本属性展开必要的分析, 而后进一步就其体系中存在的不足与改善进行了讨论, 对于深入把握SSL VPN体系的安全特征有着一定的积极价值。

关键词:SSL,VPN,安全,缺陷

参考文献

[1]包丽红, 李立亚.基于SSL的VPN技术研究[J].网络安全技术与应用, 2004 (05) .

移动SSLVPN的设计与实现 篇6

随着移动通信的普及, 移动通信所承载的应用越来越多, 在开展移动应用的同时, 对移动应用的安全需求也在增强, 因此开发一个适合手机、PDA等移动终端的安全接入系统十分必要。在安全接入技术中, SSL VPN主要在应用层进行开发, 在通信时使用TCP协议, 有利于开发与部署, 所以, SSL VPN得到了广泛认可, 有替代IPSec VPN的趋势, 但在移动终端中实现SSL VPN系统, 需要受到各种因素的限制, 当前国内可在移动终端中使用的SSL VPN还非常少。

1 SSL VPN的实现技术

SSL VPN的实现有多种方式, 一般分为四种, 下面分别进行讨论:

(1) 代理

在远程访问中, 大部分为B/S模式的应用。客户端使用Web浏览器自带的SSL功能, 连接到SSL VPN网关, 该VPN网关验证用户的合法性, 双方建立安全通道, VPN网关转发Web浏览器与Web服务器间的通信。此时, SSL VPN网关是一个带安全功能的反向HTTP代理, 这也是市场上的主流SSL VPN。

(2) 应用转换

在实际应用中, 除普通Web应用外, 还需要使用邮箱、文件共享等, 这些应用本身不支持Web页浏览, 为了支持该类应用, SSL VPN网关加入特定模块, 该模块将邮箱、文件共享等应用转换成Web页方式, 用户就可以通过 (1) 中的方式使用这些应用。该方式有其弊端, 即当用户的应用有多种时, 不可能把所有的应用转换成Web页的方式呈现给用户, 只能对通用、方便转换的应用进行转换。

(3) 端口转发

很多无法通过上述方式使用的应用, 可通过该方式进行访问。其原理是:客户端安装一个SSL VPN客户端, 该客户端与SSL VPN网关协同工作, 转发应用客户端与应用服务器之间的通信。该方式能够支持利用TCP协议通信的应用, 客户端服务程序与SSL VPN网关起转发信息的作用。

(4) 网络扩展

能够支持所有的应用。其原理是:客户端与SSL VPN网关各产生一块虚拟网卡, 同时两端各有一个服务程序监听各自的网卡, 两个服务程序进行通信, 把两个虚拟网卡通过逻辑通道连接在一起, 构成一个局域网, 上层的应用数据通过虚拟的局域网进行通信。该方式支持所有的应用, 但在客户端部署时需要安装一个虚拟网卡与客户端软件。

上述四种方式在PC机上比较容易实现, 但在手机、PDA等移动终端中, 因很多内置Web (Wap) 浏览器不能进行SSL通信, 所以前两种方式不能采用, 又因第四种方式需虚拟网卡的支持, 必须进行驱动层的开发, 很多设备并不支持该层的开发, 所以系统实现选择第三种方式。

2 移动SSL VPN的设计

系统结构如图1所示。

图中阴影部分为与移动SSL VPN相关的应用系统, 包括应用客户端与应用服务器。其中应用客户端是安装在移动终端中的软件。

移动SSL VPN系统由三部分组成:SSL VPN客户端、SSL VPN网关、安全认证服务器。

SSL VPN客户端是安装运行在移动终端的软件, 其作用是:建立与SSL VPN网关的安全通道, 在本地监听并转发应用客户端的请求, 并将服务器的响应信息转发给应用客户端, 管理与应用客户端之间、与SSL VPN网关之间的连接。

SSL VPN网关作用是:接受SSL VPN客户端的请求, 通过安全认证服务器验证终端合法性, 与SSL VPN客户端建立安全通道, 转发处理应用服务器与移动终端间的通信, 管理与应用服务器、SSL VPN客户端、安全认证管理服务器之间的的连接。

安全认证服务器的作用是:根据SSL VPN网关提供的用户信息, 验证用户的合法性。当通过证书认证时, 验证用户证书的有效性, 当通过短信认证时, 负责向移动终端发送短信, 并验证客户端返回的短信内容的正确性。

系统原理如下:

SSL VPN客户端与SSL VPN网关通过标准的SSL协议建立安全通道, 建立通道时, 客户端对网关的认证采用公钥证书进行, 网关对客户端的验证根据需要分两种, 一种为公钥证书方式, 一种为短信方式。

SSL VPN网关与客户端建立安全通道后, SSL VPN客户端与SSL VPN网关协同工作, 转发应用客户端与应用服务器之间的通信信息。

对客户端的认证均由安全认证服务器进行。

3 移动SSL VPN的实现

以下分两部分描述移动SSL VPN的实现, 一安全通道的建立;二应用信息的转发。

3.1 安全通道的建立

SSL VPN客户端与SSL VPN网关之间采用标准的SSL协议进行密钥的协商与安全通道的建立。为了支持用户接入认证的多样性, 系统采用两种方式对客户端进行认证, 一种是证书认证, 一种是短信验证码认证。以下对两种情况分别描述。

(1) 证书认证

SSL VPN客户端中存放CA根公钥证书与自身的公钥证书和私钥。根公钥证书用来验证网关证书的有效性, 自身公钥证书与私钥用来向服务器证明客户端的合法身份。

通道建立过程如下:

因为通信双方均采用证书方式进行认证, SSL协议本身支持服务器与客户端的基于公钥证书的双向认证, 所以采用标准的SSL协议进行, 不需要对SSL协议进行扩展。与实现相关的是双方的相互认证部分。当进行双向验证时, 客户端对网关的认证过程是, 接收到网关证书后, 利用客户端中存放的CA根公钥证书验证网关证书的有效性, 如果有效继续进行正常的SSL密钥协商。网关对客户端证书的认证过程是, 网关接收到客户端证书后, 将证书发送到安全认证服务器, 认证服务器验证证书的有效性, 返回验证结果给网关, 网关根据结果做出不同的响应, 如果有效, 继续进行SSL密钥协商, 如果失败, 退出本次协商, 并记录日志。

(2) 短信验证码认证

SSL VPN客户端中存放根公钥证书与自身的手机号码。

根公钥证书用来验证网关证书的有效性, 自身的手机号码作为标识号, 当网关收到该标识后, 可以向安全认证服务器请求验证用户合法性。

通道建立过程如下:

在本方式中, 采用对服务器的单向认证来建立安全通道, 利用标准的SSL协议进行, 但是, 因为需要认证客户端, 所以在安全通道建立完成后对客户端进行认证。通道建立过程采用单向的对网关认证, 依照SSL协议进行, 不再详述。以下主要说明通道建立后对客户端的认证。通道建立后, 客户端将手机号通过安全通道发送到网关, 网关得到手机号码后, 将该号码发送到安全认证服务器, 安全认证服务器根据号码向手机发送一条数据短信, 短信内容为32字节的随机数字。SSL VPN客户端程序监听短信到达事件, 当短信到达手机后, 程序从短信中取出随机数字, 通过安全通道发送到网关。网关收到该随机数字后, 将其转发给安全认证服务器, 安全认证服务器验证该随机数与先前发送的短信内容的一致性, 如一致, 通过用户验证, 返回成功信息给网关, 网关设定安全通道为合法通道, 如不一致, 返回错误信息给网关, 网关中止已建立的安全通道, 用户接入为非法接入, 记录日志。

3.2 应用信息转发

在本系统中, SSL VPN客户端与SSL VPN网关转发应用客户端与应用服务器间的通信信息。

信息处理过程如图2所示, 具体过程如下:

(1) 应用客户端发送请求, 请求的目的方为本地的SSL VPN客户端, 端口号为SSL VPN的监听端口号。

(2) SSL VPN客户端收到请求信息后, 添加必要的信息头, 然后加密, 通过安全通道发送到SSL VPN网关。

(3) SSL VPN网关接到SSL VPN客户端的信息后, 解密、提取应用请求信息, 将信息发送到应用服务器。

(4) 应用服务器收到应用请求信息后, 根据信息做出不同的处理, 然后将响应信息发送给SSL VPN网关。

(5) SSL VPN网关接到应用服务器的响应信息后, 添加必要的信息头, 然后加密, 通过安全通道发送给SSL VPN客户端。

(6) SSL VPN客户端收到SSL VPN网关的信息后, 将信息解密、提取应用服务器的响应信息, 将其发送给应用客户端。

以上是应用信息的转发、加密、传输过程。

在具体实现中, 应用客户端程序可能为多个, 所以SSL VPN客户端需要监听多个端口, 响应应用客户端的连接请求。为了区分每个应用客户端程序, SSL VPN客户端建立与应用客户端程序的连接后, 为每个连接分配一个标识号, 在进行信息加密前, 将标识号添加到信息头中, 该标识号SSL VPN网关与SSL VPN客户端保持一致, 所以可以根据标识号区分每个安全数据包, 将解密后的信息发送给对应的应用服务器 (对SSL VPN网关而言) 或应用客户端程序 (对SSL VPN客户端而言) 。

4 总结

SSL VPN作为一种远程安全接入技术, 对网络配置不做特殊要求, 又因它的安全、易用性, 逐渐被人们所接受, 同时, 随着移动通信的迅速扩张, 移动终端 (手机、PDA等) 的大规模普及, 对移动SSL VPN的需求越来越大, 而当前国内的很多SSL VPN系统并不支持移动终端, 该系统是在移动终端中的一个尝试。系统已经在公安信息系统中得到应用, 并受到了用户的好评, 起到了预期的作用。

参考文献

[1]W.RICHARD STEVENS等著.杨继张译.UNIX网络编程第一卷:套接口API (第三版) .清华大学出版.2006.1.

基于隧道技术的SSLVPN实现 篇7

SSL VPN是基于SSL协议的虚拟专用网, 它能够有效增加企业对数据的访问控制能力和提升数据与网络的安全级别, 是基于Internet的外网接入企业内网和远程访问公司敏感数据的最便捷和安全的解决方案。传统的SSL VPN存在着网络应用支持单一、功能扩展困难和系统性能低下等缺点, 本文有针对性地提出基于隧道技术的改良SSL VPN企业解决方案, 可以有效地解决相关技术难题。

1 SSL VPN技术

VPN[1] (Virtual Private Network) 技术是指依靠ISP或NSP, 在公用网络Internet中建立专用的数据通信网络的技术。实际应用中, 根据ISP或NSP提供的传输介质与设施进行网络虚拟逻辑划分, 并以这些通信设施为基础为用户提供定制的网络连接服务, 连接使得用户可以具有相同的安全优先级服务, 可采用隧道技术和特殊配置技术措施实现仿真的点到点的连接等。VPN的出现可帮助企业构建基于Internet规划的最安全和经济的企业网扩展, 真正实现企业内与企业外的无缝对接。

SSL[2]是网景公司推出的基于Web应用的安全通信协议, 现已成为互联网上保密通信的工业标准, 应用于包括Web应用的诸多方面。将SSL的独特性与VPN的安全远程访问控制相结合, 就是SSL VPN。SSL VPN是指采用SSL协议来实现远程接入的一种新型VPN技术。因为SSL内嵌在浏览器中了, 所以客户端只要安装有浏览器就可以使用SSL VPN, 相比于传统的IPSec VPN需要安装客户端软件来说显得更加的方便、快捷, 是新生代的远程安全访问方式。

2 隧道技术

隧道技术是指利用一种网络协议来传输另一种网络协议的技术, 主要由网络隧道协议实现相关功能。传统的网络隧道协议有用于构建远程访问虚拟专网的二层隧道协议和用于构建与扩展企业内部虚网的三层隧道协议等, 本文提出的VPN网络架构是基于SSL的四层隧道协议, 即SSL VPN, 主要在应用层构建VPN隧道, 相比传统的架构更加安全可靠。

VPN网络中建立连接的两个终端间的隧道结构主要有以下几种:

1) 点到点隧道:该类隧道需要由两个终端协商各自在网络中的角色是服务器还是客户端, 两个终端间需要具有相同数量的隧道资源。此隧道技术速度快、保密性好, 但不利于多用户交流, 访问对象动态切换较困难。

2) 改进的点到点隧道:为终端协商配置专门服务器, 需要建立隧道时, 先到服务器上检索登记信息并自主登录, 服务器根据规则完成协商, 检测两终端状态若均为活动状态, 则反馈协商结果给两客户端, 完成隧道构建。此方法较好的解决多用户问题, 应用广泛。

3) 网关型隧道:隧道中的每个终端都作为客户端连接到VPN网关, 与VPN网关建立隧道, 由网关完成终端间隧道的构建。这种方法较为安全, 但速度较慢且比较耗资源。

4) 综合型隧道:这种隧道将改进的点到点隧道与网关型隧道相结合, 现在应用非常广泛, 方便进行大中型网络和多级VPN网络的构建。本文涉及的系统就采用这种方法, 但构建的是一个企业级的中小型VPN网络。

本系统中的SSL VPN主要采用四层隧道协议完成OSI的二层和三层的连接工作, 构建点到点的VPN数据连接。用路由网络连接数据地址, 不同用户共享一条线路完成数据传输, 通过浏览器建立较安全的HTTPS连接, 构建安全、易操作的远程数据访问平台。出于安全考虑, 隧道技术可以根据不同的用户权限控制规则, 拒绝未经授权用户的登录请求。

3 虚拟网卡驱动工作原理

本系统中的隧道技术主要是基于虚拟网卡实现。虚拟网卡在本系统中作用非常重要, 它存在于服务端和客户端的机器中, 对传输的数据包进行编码与解码。客户端虚拟网卡的任务是对数据进行编码, 并向服务器发送信息;服务端虚拟网卡的作用是将客户端传送的数据解码还原, 并将数据传输到物理网络中。

SSL VPN通过TUN/TAP虚拟网卡驱动程序将IP数据包封装到一个UDP或TCP数据包中构建隧道。SSL VPN隧道有两种工作模式:TUN驱动模式和TAP驱动模式, 分别用来构建IP路由形式的VPN隧道和以太网模型隧道。TUN和TAP分别表示虚拟的点对点设备和以太网设备, 它们实现不同形式的封装, 但最终都是将整个IP包封装成一个UDP或TCP包。

TUN/TAP虚拟网卡驱动接收与发送数据都不直接与物理网卡交流, 由用户态转交, 驱动程序只是为用户态与核心态交流提供接口, 通过设备文件来实现数据交互。虚拟网卡驱动程序的工作原理[3]如图1所示。

TUN/TAP驱动包含虚拟网卡驱动和字符设备驱动两部分。虚拟网卡驱动与TCP/IP协议栈交互网络分包;字符设备驱动则模拟物理链路在用户态和核心态之间传递网络分包。TUN/TAP驱动将这两种驱动进行了有效整合。

4 虚拟网卡工作流程

SSL VPN系统包括调度中心、相关规则库、SSL相关处理、用户相关应用程序、字符设备驱动、虚拟网卡和物理网卡等若干模块, 其中调度中心、相关规则库、SSL相关处理和用户应用程序体现等用户态功能。

下面以基于虚拟网卡的SSL VPN网络中某一用户向某受保护的子网中的终端发送数据包为例, 对虚拟网卡的工作流程进行说明。在为虚拟网卡设置相关参数, 并添加虚拟路由信息后, 执行如图2所示的步骤[4]:

1) 用户终端应用程序向TCP/IP协议栈发出一个包含有远程终端目的地址的IP数据包;

2) TCP/IP协议栈进行虚拟路由匹配, 在IP数据包源地址段附加上虚拟网卡的虚拟IP地址, 并发送给虚拟网卡进行处理;

3) 虚拟网卡因为没有对应的物理网卡, 所以不需要实现与物理网卡进行交互, 直接将数据包转发给字符驱动模块;

4) 字符驱动模块模拟物理链路将数据包发送给调度中心;

5) 调度中心根据规则库中相关规则进行检测, 如检测通过, 则将其交由SSL进行加密处理, 并将处理结果报文传递给TCP/IP协议栈;

6) TCP/IP协议栈进行相应路由匹配, 并在IP数据包的源地址段附加上实际物理网卡的IP地址, 目的地址附加上远程接收端的SSL VPN网关的外口地址, 并传递给物理网卡处理;

7) 物理网卡根据IP数据包的相关信息, 将信息传递出去。

上述过程是发送终端基于虚拟网卡的数据包发送流程, 数据包经过物理网卡传递给SSL VPN网关后, 网关将其交给接收端的TCP/IP协议栈, 协议栈查看数据包目的地址与端口后交给接收端调度中心, 调度中心结合SSL相关处理模块解密还原, 根据解密出的IP数据报中的目的地址将信息送给接收端主机。上述是发送数据包的全过程, 接收数据包的流程与上述流程相反, 就不赘述了。

5 结束语

基于隧道技术的SSL VPN是一种非常好的企业构建内联网与互联网以及构建远程安全接入网络的解决方案, 本文提出的隧道技术主要基于虚拟网卡实现, 从技术上来看, 较好的解决了网络驱动程序接口规范框架中的软件冲突、传输层的过滤驱动不够安全、Win Sock2动态链接库重载等问题, 能够较好地解决安全性的问题, 并且已经在实际应用中得到了验证, 所以这是一个较成功的企业组网方案。

参考文献

[1]戴宗坤, 唐三平.VPN与网络安全[M].北京:电子工业出版社, 2002.

[2]百度知道.SSL VPN[EB/OL].http://baike.baidu.com/view/708397.htm.

[3]菅永超.基于隧道技术的SSL VPN的改进与设计[D].武汉:华中科技大学, 2007.

上一篇:渗漏检测下一篇:空气源热泵式孵化机