保密安全与密码技术第四讲虚拟专用网VPN技术VPN的定义和发展概况VPN的需求和设计原则VPN的相关技术几种常见的VPN课程目标VirtualPrivateNetwork虚拟“virtual”指没有物理的连接存在于2个网络间;事实上,连接是通过Internet的路由完成的;专用“private”指传输的数据是保密的(通过加密和安全隧道);网络“network”指利用各种网络(私有、公用、有线无线等等)构成的通信手段。VPN定义VPN定义虚拟专用网络可以实现不同网络的组件和资源之间的相互连接。虚拟专用网络能够利用Internet或其它公共互联网络的基础设施为用户创建隧道,并提供与专用网络一样的安全和功能保障。在虚拟专网中,任意两个节点之间的连接并没有传统专网所需的端到端的物理链路,而是利用某种公众网的资源动态组成的。是通过隧道技术在公共数据网络上虚拟出一条点到点的专线技术。TunnelingthroughtheInternet为什么要VPN资源访问限制于某些IP地址通过防火墙不能访问资源内部人员需要在外面访问内部网络雇员可能在外地,需要访问内部网络专有网太贵外地的雇员也可能不是定点的VPN的发展业务需求的变化导致了此业务的产生和发展1970年PNL1-1990年FR(帧中继)的出现是VPN的首次出现(L2)-IPVPN的提出外包模式促进了CPE-basedVPN-NetworkbasedVPN的转化VPN的定义和发展概况VPN的需求和设计原则VPN的相关技术几种常见的VPN课程目标对VPN的需求安全保障VPN应保证通过公用网络平台传输数据的专用性和安全性,这是目前公共Internet所无法提供的功能服务质量(QoS)保证对不同的用户提供不同的服务质量,如带宽、延时等保证,这取决于广域网上是否提供QoS保证可扩充性和灵活性便于增加新的节点,支持多种类型的传输媒体可管理性易于维护和管理VPN设计原则-安全性原则隧道与加密数据验证用户识别与设备验证入侵检测,网络接入控制隧道与加密应用和业务服务器总部网络中心分支机构合作伙伴secpointAAA服务器出差员工L2TP隧道协议最适合移动用户的VPN接入GRE隧道协议最适合站点到站点的VPN接入,支持动态路由协议IPSEC提供数据加密和数据完整性数据验证IPSEC协议提供特定的通信双方之间在IP层通过加密与数据源验证,以保证数据包在Internet网上传输时的私有性、完整性和真实性。用在VPN上IPSEC协议族与其他隧道协议相配合完成VPN数据报文的加密和验证。IPSEC用户识别与设备验证VPN可使合法用户访问他们所需的企业资源,同时还要禁止未授权用户的非法访问。这一点对于AccessVPN和ExtranetVPN具有尤为重要的意义。建立VPN连接的设备之间进行验证可以确保VPN隧道的安全可靠。设备验证SecurID数字证书SecKey认证服务器用户识别入侵检测,网络接入控制网络入侵检测系统需要同VPN设备进行配合,通过分析源自或送至VPN设备的信息流,避免通过VPN连接使内部网络受到攻击。一般来讲VPN接入的用户可以访问内部网络中大部分资源,可以考虑对VPN接入用户进行分级和控制,确保内部网络的运行安全。VPN设计原则-QoS保障构建VPN的另一重要需求是充分有效地利用有限的广域网资源,为重要数据提供可靠的带宽。VPN网络中的QoS需要考虑如下问题:QoS需要在数据通过的整个路径包含的各个设备上进行部署VPN隧道技术对原始数据进行了再次封装,QoS策略中的特征值需要进行额外映射QoS中的流分类动作必须在数据进行VPN封装前完成VPN的定义和发展概况VPN的需求和设计原则VPN的相关技术几种常见的VPN课程目标建立VPN所需的安全技术VPN主要采用四项技术来保证安全,这四项技术分别为隧道技术(Tunneling)加解密技术(Encryption&Decryption)密钥管理技术(KeyManagement)认证技术(Authentication)隧道技术隧道技术就是利用隧道协议对隧道两端的数据进行封装的技术,隧道协议通常分别是第2层或第3层隧道协议第3层隧道协议IPSEC:本身不是隧道协议,但由于其提供的认证、加密功能适用于建立VPN环境,它既能提供LAN间VPN,也能提供远程访问型VPN隧道技术第2层隧道协议第二层隧道协议是先把各种网络协议封装到PPP中,再把整个数据包装入隧道协议中。这种双层封装方法形成的数据包靠第二层协议进行传输。第二层隧道协议有L2F、PPTP、L2TP等。L2F(Layer2Forwarding)/PPTP(Point-to-PointTunnelingProtocol)/L2TP(Layer2TunnelingProtocol)都是远程访问VPN的协议,L2TP协议是目前IETF的标准,是在L2F和PPTP基础上进行综合,其格式是基于L2F,信令是基于PPTP。隧道技术不同隧道实现技术比较协议名称RFC编号封装化协议号码L2/L3加密与否LAN间连接型VPN远程访问型VPNL2F2341L2FUDP(17)第2层否-○PPTP草案GREGRE(47)第2层否○○L2TP草案L2TPUDP(17)第2层否○○ATMP2107GREGRE(47)第3层否―○BayDVS无GREGRE(47)第3层否-○GRE1701GREGRE(47)第3层否○-IPsecESP2406ESPESP(50)第3层是○○IPsecAH2402AHAH(51)第3层否○○第2层隧道协议L2F(Layer2Forwarding):1998年标准化的远程访问VPN的协议。它是基于ISP的由若干远程接入服务器(remoteaccessserver)提供VPN功能的协议。PPTP(PointtoPointTunnelingProtocol)也是为实现基于ISP的远程访问VPN而制订的协议。在分组和封装化头标中采用了扩展GRE(GenericRoutingEncapsulation:通用寻路封装)。在Windows微机中将GRE作为标准功能提供,是当前最易于使用的VPN协议。L2TP(Layer2TunnelingProtocol)是远程访问型VPN今后的标准协议。它将PPTP和L2F综合,以便扩展功能。其格式基于L2F,信令(signaling)基于PPTP。L2FCisco在1998年5月发表标题为“Cisco的2层发送(协议)L2F”的RFC2341。L2F主要强调的是将物理层协议移到链路层,并允许通过Internet光缆的链路层和较高层协议的传输。物理层协议仍然保持在对该ISP的拨号连接中。L2F还解决IP写地址和记帐的问题;初始连接:使用标准PPP。验证:使用标准CHAP或者做某些修改。封装:在L2F数据报中封装整个PPP或SLIP包所需要的协议。点到点隧道协议(PPTP)PPTP协议基础:点到点协议(PPP,Point-to-PointProtocol),RFC1171;口令验证协议(PAP,PasswordAuthenticationProtocol),RFC1172;通用路由选择封装协议(GRE,GenericRoutingEncapsulation),RFC1701;PPP挑战握手验证协议(CHAP,ChallengeHandshakeAuthenticationProtocol),RFC1994;PPTP体系结构使用三个过程:PPP连接和通信。PPTP控制连接,它建立到Internet的PPTP服务器上的连接,并建立一个虚拟隧道。PPTP数据隧道,在隧道中PPTP协议建立包含加密的PPP包的IP数据报,这些数据报通过PPTP隧道进行发送。L2TP尽管技术上是相同的,但厂商和用户都会察觉PPTP和L2F有明显的不同。PPTP受到Microsoft的关爱,它拥有世界上绝大多数的桌面电脑,而L2F受到Cisco的关注,它主要用于Internet。尽管PPTP和L2F都使用封装和加密,但它们互相不兼容。IETF建议将PPTP和L2F的最优秀的部分组成一个工业标准,并称为第2层隧道协议(L2TP)。L2TPL2TP是连接型的隧道封装协议,适用于通过Internet接纳远程用户的远程访问型VPN。特点:接纳移动用户(指拔号上网),每次连接都进行用户认证支持多协议(因为L2TP协议封装在PPP之外,PPP具有支持多种网络协议的功能)组成:LAC:L2TP接入集中器(L2TPAccessConcentrator),是接在公网上的用户拔号设备,通常配置在ISP接入点的接入服务器具有LAC功能LNS:L2TP网络服务器(L2TPNetworkServer),管理隧道,通常安装在企业网内基于服务器的认证方式-RADIUSRADIUS(RemoteAuthenticationDialInUserService)由朗讯开发,1997年1月公布在RFC2058,用于AAA(Authentication、AuthorizationandAccounting)认证,基于客户/服务器方式VPN的定义和发展概况VPN的需求和设计原则VPN的相关技术几种常见的VPN课程目标VPN类型按技术分类基于第二层隧道技术的VPNIPSecVPNMPLSVPNSSLVPN按应用分类远程访问型LAN间互连层2发送协议(L2F)层2隧道协议(L2TP)点到点隧道协议(PPTP)L2TPVPN的设计IPSecVPN的设计MPLSVPN的设计几种常见VPN的比较几种常见的VPNL2TP连接方式选择L2TPVPN适用于移动办公用户的VPN接入,可以提供严格的用户验证功能,确保VPN接入用户的合法性。L2TPVPN的连接方式分为两种:PC直接发起连接和LAC设备发起连接。两种方式适用于不同企业对于VPN接入控制和管理的不同要求。L2TP安全性考虑L2TPVPN本身虽然提供较为严格的接入用户的认证功能,但不提供VPN数据的加密功能,如果需要对数据进行安全加密可以同IPSEC协议进行配合。LACClientLNSHOSTHomeLANInternetL2TPOVERIPSECL2TP客户端功能扩展了标准的L2TP功能,支持LAC客户端功能,不仅可以为PPP用户提供接入,而且也可以为其他连接方式的用户提供接入,例如以太网接入。并且可以适用动态路由协议进行路由选路,增强了可扩展性。ClientLNSHOSTHomeLANInternetL2TPTUNNELPUB:1.1.1.1PUB:1.1.1.2LACVT:192.168.0.1VT:192.168.0.2L2TP中的NAT问题LACClientLNSHOSTHomeLANInternetNATPUB:202.38.1.1PUB:202.38.1.2Pri:1.1.1.1Pri:1.1.1.2L2TPOVERIPSECLAC在同位于NAT之后的LNS建立连接时可能会出现问题L2TP多实例L2TP协议上加入多实例技术,让L2TP支持在一台设备将不同的用户划分在不同的VPN,各个VPN之内的数据可以互通,且在LNS两个不同VPN之间的数据不能互相访问,即使L2TP接入是同一个设备。VPN1总部ClientLNSHOSTInternetL2TPTUNNELClientVPN2总部VPN1HOSTVPN210.1.1.*10.1.1.*10.1.2.*10.1.2.*L2TPVPN的设计IPSecVPN的设计MPLSVPN的设计几种常见VPN的比较几种常见的VPNIPSecVPNIPSec不是一个单独的协议,而是一套协议包,包括三个基本协议AH协议提供信息源验证和完整性保证;ESP协议提供信息源验证、机密性和完整性保证;密钥管理协议(I