VPN技术概述

来源: 时间:2019-09-09

虚拟专用网(VPN)被定义为通过一个公用网络(通常是因特网)建立一个临时的、安全的连接,是一条穿过混乱的公用网络的安全、稳定的隧道。虚拟专用网是对企业内部网的扩展。 虚拟专用网可以帮助远程用户、公司分支机构、商业伙伴及供应商同公司的内部网建立可信的安全连接,并保证数据的安全传输。通过将数据流转移到低成本的压网络上,一个企业的虚拟专用网解决方案将大幅度地减少用户花费在城域网和远程网络连接上的费用。同时,这将简化网络的设计和管理,加速连接新的用户和网站。另外,虚拟专用网还可以保护现有的网络投资。随着用户的商业服务不断发展,企业的虚拟专用网解决方案可以使用户将精力集中到自己的生意上,而不是网络上。虚拟专用网可用于不断增长的移动用户的全球因特网接入,以实现安全连接;可用于实现企业网站之间安全通信的虚拟专用线路,用于经济有效地连接到商业伙伴和用户的安全外联网虚拟专用网。 虚拟专用网至少应能提供如下功能: 加密数据,以保证通过公网传输的信息即使被他人截获也不会泄露。 信息认证和身份认证,保证信息的完整性、合法性,并能鉴别用户的身份。 提供访问控制,不同的用户有不同的访问权限。 VPN的分类 根据VPN所起的作用,可以将VPN分为三类:VPDN、Intranet VPN和Extranet VPN。 1. VPDN(Virtual Private Dial Network) 在远程用户或移动雇员和公司内部网之间的VPN,称为VPDN。实现过程如下:用户拨号NSP(网络服务提供商)的网络访问服务器NAS(Network Access Server),发出PPP连接请求,NAS收到呼叫后,在用户和NAS之间建立PPP链路,然后,NAS对用户进行身份验证,确定是合法用户,就启动VPDN功能,与公司总部内部连接,访问其内部资源。 2. Intranet VPN 在公司远程分支机构的LAN和公司总部LAN之间的VPN。通过Internet这一公共网络将公司在各地分支机构的LAN连到公司总部的LAN,以便公司内部的资源共享、文件传递等,可节省DDN等专线所带来的高额费用。 3. Extranet VPN 在供应商、商业合作伙伴的LAN和公司的LAN之间的VPN。由于不同公司网络环境的差异性,该产品必须能兼容不同的操作平台和协议。由于用户的多样性,公司的网络管理员还应该设置特定的访问控制表ACL(Access Control List),根据访问者的身份、网络地址等参数来确定他所相应的访问权限,开放部分资源而非全部资源给外联网的用户。 VPN的隧道协议 VPN区别于一般网络互联的关键于隧道的建立,然后数据包经过加密后,按隧道协议进行封装、传送以保安全性。一般,在数据链路层实现数据封装的协议叫第二层隧道协议,常用的有PPTP、L2TP等;在网络层实现数据封装的协议叫第三层隧道协议,如IPSec;另外,SOCKS v5协议则在TCP层实现数据安全。 1. PPTP(Point-to-Point Tunneling Protocol)/ L2TP(Layer 2 Tunneling Protocol) 1996年,Microsoft和Ascend等在PPP协议的基础上开发了PPTP,它集成于Windows NT Server4.0中,Windows NT Workstation和Windows 9.X也提供相应的客户端软件。PPP支持多种网络协议,可把IP、IPX、AppleTalk或NetBEUI的数据包封装在PPP包中,再将整个报文封装在PPTP隧道协议包中,最后,再嵌入IP报文或帧中继或ATM中进行传输。PPTP提供流量控制,减少拥塞的可能性,避免由包丢弃而引发包重传的数量。PPTP的加密方法采用Microsoft点对点加密(MPPE:Microsoft Point-to-Point Encryption)算法,可以选用较弱的40位密钥或强度较大的128位密钥。 1996年,Cisco提出L2F(Layer 2 Forwarding)隧道协议,它也支持多协议,但其主要用于Cisco的路由器和拨号访问服务器。1997年底,Micorosoft和Cisco公司把PPTP协议和L2F协议的优点结合在一起,形成了L2TP协议。L2TP支持多协议,利用公共网络封装PPP帧,可以实现和企业原有非IP网的兼容。还继承了PPTP的流量控制,支持MP(Multilink Protocol),把多个物理通道捆绑为单一逻辑信道。L2TP使用PPP可靠性发送(RFC1663)实现数据包的可靠发送。L2TP隧道在两端的VPN服务器之间采用口令握手协议CHAP来验证对方的身份。L2TP受到了许多大公司的支持。 ●优点:PPTP/L2TP对用微软操作系统的用户来说很方便,因为微软已把它作为路由软件的一部分。PPTP/L2TP支持其他网络协议,如Novell的IPX,NetBEUI和Apple Talk协议,还支持流量控制。它通过减少丢弃包来改善网络性能,这样可减少重传。 ●缺点:PPTP和L2TP将不安全的IP包封装在安全的IP包内,它们用IP帧在两台计算机之间创建和打开数据通道,一旦通道打开,源和目的用户身份就不再需要,这样可能带来问题。它不对两个节点间的信息传输进行监视或控制。PPTP和L2TP限制同时最多只能连接255个用户。端点用户需要在连接前手工建立加密信道。认证和加密受到限制,没有强加密和认证支持。 PPTP和L2TP最适合用于远程访问虚拟专用网。 2. IPSec(Internet Protocol Security) IPSec是IETF(Internet Engineer Task Force)正在完善的安全标准,它把几种安全技术结合在一起形成一个较为完整的体系,受到了众多厂商的关注和支持。通过对数据加密、认证、完整性检查来保证数据传输的可靠性、私有性和保密性。IPSec由IP认证头AH(Authentication Header)、IP安全载荷封载ESP(Encapsulated Security Payload)和密钥管理协议组成。 IPSec协议是一个范围广泛、开放的虚拟专用网安全协议。IPSec适应向IP v6迁移,它提供所有在网络层上的数据保护,提供透明的安全通信。IPSec用密码技术从三个方面来保证数据的安全。即: ?认证。用于对主机和端点进行身份鉴别。 ?完整性检查。用于保证数据在通过网络传输时没有被修改。 ?加密。加密IP地址和数据以保证私有性。 IPSec协议可以设置成在两种模式下运行:一种是隧道模式,一种是传输模式。在隧道模式下,IPSec把IP v4数据包封装在安全的IP帧中,这样保护从一个防火墙到另一个防火墙时的安全性。在隧道模式下,信息封装是为了保护端到端的安全性,即在这种模式下不会隐藏路由信息。隧道模式是最安全的,但会带来较大的系统开销。IPSec现在还不完全成熟,但它得到了一些路由器厂商和硬件厂商的大力支持。预计它今后将成为虚拟专用网的主要标准。IPSec有扩展能力以适应未来商业的需要。在1997年底,IETF安全工作组完成了IPSec的扩展,在IPSec协议中加上ISAKMP(Internet Security Association and Key Management Protocol)协议,其中还包括一个密钥分配协议Oakley。ISAKMP/Oakley支持自动建立加密信道,密钥的自动安全分发和更新。IPSec也可用于连接其他层已存在的通信协议,如支持安全电子交易(SET:Secure Electronic Transaction)协议和SSL(Secure Socket layer)协议。即使不用SET或SSL,IPSec都能提供认证和加密手段以保证信息的传输。 ●优点:它定义了一套用于认证、保护私有性和完整性的标准协议。 IPSec支持一系列加密算法如DES、三重DES、IDEA。它检查传输的数据包的完整性,以确保数据没有被修改。IPSec用来在多个防火墙和服务器之间提供安全性。IPSec可确保运行在TCP/IP协议上的VPNs之间的互操作性。 ●缺点:IPSec在客户机/服务器模式下实现有一些问题,在实际应用中,需要公钥来完成。IPSec需要已知范围的IP地址或固定范围的IP地址,因此在动态分配IP地址时不太适合于IPSec。除了TCP/IP协议外,IPSec不支持其他协议。除了包过滤之外,它没有指定其他访问控制方法。可能它的最大缺点是微软公司对IPSec的支持不够。 IPSec最适合可信的LAN到LAN之间的虚拟专用网,即内部网虚拟专用网。 3. SOCKs v5 SOCKs v5由NEC公司开发,是建立在TCP层上安全协议,更容易为与特定TCP端口相连的应用建立特定的隧道,可协同IPSec、L2TP、PPTP等一起使用。SOCKs v5能对连接请求进行认证和授权。 SOCKS v5是一个需要认证的防火墙协议。当SOCKS同SSL协议配合使用时,可作为建立高度安全的虚拟专用网的基础。SOCKS协议的优势在访问控制,因此适合用于安全性较高的虚拟专用网。SOCKS现在被IETF建议作为建立虚拟专用网的标准,尽管还有一些其他协议,但SOCKS协议得到了一些著名的公司如 Microsoft,Netscape,IBM的支持。 SOCKS v5的优点:SOCKS v5在OSI模型的会话层控制数据流,它定义了非常详细的访问控制。在网络层只能根据源和目的IP地址允许或拒绝数据包通过,在会话层控制手段要更多一些。SOCKS v5在客户机和主机之间建立了一条虚电路,可根据对用户的认证进行监视和访问控制。SOCKS v5和SSL工作在会话层,因此能向低层协议如IP v4,IPSec,PPTP,L2TP一起使用。它能提供非常复杂的方法来保证信息安全传输。用SOCKS v5的代理服务器可隐藏网络地址结构。如果SOCKS V5同防火墙结合起来使用,数据包经一个唯一的防火墙端口(缺省的是1080)到代理服务器,再经代理服务器过滤发往目的计算机的数据,这样可以防止防火墙上存在的漏洞。SOCKS v5能为认证、加密和密钥管理提供“插件”模块,可让用户很自由地采用他们所需要的技术。SOCKS v5可根据规则过滤数据流,包括Java Applet和ActiveX控件。 ●SOCKS v5的缺点:因为SOCKS v5通过代理服务器来增加一层安全性,因此其性能往往比低层协议差。尽管比网络层和传输层的方案要更安全,但要制定比低层协议更为复杂的安全管理策略。 基于SOCKSv5的虚拟专用网最适合用于客户机到服务器的连接模式,适合用于外联网虚拟专用网。