ICEFLOW SSL VPN技术
    伴随企业信息化程度的加深,远程安全访问、协同工作的需求日益明显,SSL VPN由于其自身的技术优势,逐渐成为企业用户远程安全接入的首选方案,并且与IPSecVPN技术一同为企业提供一个安全的远程接入平台。为适应客户的需求,上海冰峰公司特推出接近市场应用的SSL VPN技术及产品(简称ICEFLOW SSL VPN或冰峰SSL VPN)。
一、ICEFLOW SSL VPN原理
    ICEFLOW SSL VPN采用当前广泛使用的工业级安全协议SSL/TLS,其加密处理过程包括:
   1. 密钥生成
    ICEFLOW SSL VPN在通信过程中所需要的密钥组共包括四个密钥:HMAC发送密钥,HMAC接收密钥,数据发送密钥,数据接收密钥。四个密钥是在每次隧道建立时生成,并进行安全的交换。
   2. 密钥交换
    在ICEFLOW SSL VPN中,通信的数据使用对称加密算法加密。对称加密算法要求通信的两端要有相同的对称密钥,因此必须要有个安全的密钥交换算法。我们采用RAS/DHE算法来完成密钥的交换,以下是通信握手和密钥交换的过程:
◇ Message 1
    VPN客户端发送握手请求给中心VPN路由器,在这个握手请求包里包含了客户端支持的对称加密算法、密钥长度和客户端密钥种子。
◇ Message 2
    路由器在客户端支持的加密算法中选择加密强度最强的一个,作为此后通信使用的加密算法。同时路由器向VPN客户端发送服务端数字证书和服务端密钥种子。服务端数字证书是冰峰CA中心签发的(也可以使用第三方CA中心签发的数字证书),客户端可以验证此证书的有效性,可以有效避免中间人冒认路由器进行攻击。服务端密钥种子和客户端密钥种子合起来构成完整的密钥生成所需的种子。
◇ Message 3
    客户端把接收到的服务端密钥种子和客户端密钥种子结合起来,构成完整的密钥种子,并根据此种子生成预置密钥,预置密钥按照冰峰的特制算法可以生成通信所需要的四个密钥。
    客户端向路由器发送客户端数字证书和预置密钥。路由器可以验证客户端数字证书的有效性。预置密钥是用服务端证书加密的,只能使用服务端私钥才能解开。服务端私钥只存在于路由器上,不会在网络上传播,因此只有路由器才能正确的解开预置密钥。
    客户端和路由器端都可以根据预置密钥计算出通信所需要的四个密钥。如果以上任何环节出现问题,都会导致客户端和路由器生成的密钥不一致,这样隧道将建立失败。
    在这个包中还会包含加密模式标志和以上通信包的HMAC摘要信息,加密模式标志是通知服务端此后的通信数据都将使用在Message 2中选定的加密算法加密。HMAC摘要信息是Message 1,Message 2和Message 3的HASH摘要信息,路由器可以根据HASH摘要信息判断这些数据包有没有在通信过程中被篡改过。
◇ Message 4
    路由器发送加密模式标志和HMAC摘要信息给客户端,通知客户端此后通信将都使用Message 2中选定的加密算法加密,并返回对Message 1,Message 2,Message 3进行HMAC处理后的HASH摘要信息,客户端可以根据HASH摘要信息判断这些数据包有没有在通信过程中被篡改过。
    至此,VPN隧道建立成功,通信数据可以安全的在隧道中传输了。
   3. 对称加密算法
    用户可以配置SSL VPN所使用的对称加密算法和HASH算法,可选的算法包括:DES、3DES、BLOWFISH、AES-128、AES-192、AES-256、MD5、SHA1等以上算法中,DES算法只能使用56位的密钥,安全性较差;3DES有效密钥长度可以达到112位,安全性还行,但是计算效率比较低。这两种算法尽量避免使用。
     冰峰SSL VPN默认使用Blowfish-CBC算法,密钥长度为128位。Blowfish是一种安全性很强的加密算法,且是目前最快的加密算法之一,128位的密钥长度也可满足绝大多数应用的需要。
   4. HMAC和HASH处理
    VPN隧道建立成功后,通信数据除了被高强度加密外,还有如下两个安全措施,来保证数据的完整性:
    ◇ 每个数据包最后都会附一个HASH摘要信息,这个摘要信息是通过用HASH算法对数据包进行计算而获得的,常用的HASH算法是128位的MD5和160位的SHA1。如果数据包中有任何一个数据被修改,计算出来的HASH摘要信息都会不一样。数据接收者会将收到的数据重新计算,如果HASH摘要信息不一致,说明数据被篡改过,此次接收到的数据将被丢弃,并会通知发送方。
    ◇ 同时,为防止HASH摘要信息和数据包被同时修改,我们将HMAC发送密钥插入到数据包中一起加密,然后再将整个加密数据进行HASH计算获得HASH摘要信息。接收者在收到数据后,会解密出HMAC发送密钥,通过检测HMAC发送密钥和HASH摘要信息的有效性,可以判断接收到的数据是否被篡改过。
二、SSL VPN技术特点
   1. 节约成本
    采用冰峰SSL VPN解决方案,只需在客户中心节点部署一台VPN硬件路由器设备,远程用户通过二次拨号形式拨入中心节点,实现与中心节点内部网络的双向访问,既可以实现用户大量远程用户访问中心节点信息资源的目的,又节省了客户大量的硬件设备购置费用,降低了VPN部署成本。
   2. 客户端维护使用简单
    使用冰峰SSL VPN,只需在客户端主机上运行冰峰公司为用户免费提供的一款绿色软件,便可与中心节点建立安全隧道,整个通道的建立过程无需用户干预,VPN隧道建立后用户就可以访问到企业内部的网络资源了。
   3. 提供增强的远程安全接入功能
    冰峰SSL VPN采用高强度加密验证算法全程加密来保证数据公网传输的安全性,相较PPTP协议使用的MPPE/CHAP加密验证算法,其加密强度更高。冰峰SSL VPN提供除了提供密码验证外,更有ISK验证、硬件特征码验证、CA认证及指纹认证等多种增强验证方式供用户选择,确保只有合法用户方可拨号。
   4. 能够穿越NAT和防火墙设备
    SSL VPN工作在传输层之上,因而能够遍历所有NAT设备和防火墙设备,可以根据客户端现有的网络状况动态调整SSL VPN验证端口和数据传送端口,这使得用户能够从任何地方远程接入到公司的内部网络,而无须对现有网络拓扑和配置大动干戈,大大节约了用户的维护成本,从而改善了客户端使用PPTP协议拨号穿透性差,易受客户端网络环境限制而无法正常拨入VPN网络的缺点。
   5. 使用灵活
    适用于通过无线GPRS、CDMA、MODEM拨号、FTTB+LAN、ADSL等多种上网方式下组建VPN网络,不受接入方式的限制,用户可任意时间、任意地点通过笔记本联到数据中心,查看当天的业务数据和其它信息,配置简单方便,易于操作。