计算机网络工程王晓燕第八章虚拟专用网技术与应用实验1、概述2、VPN的应用和特点3、隧道技术4、VPN的具体应用8.1概述VPN的基本思路:充分利用已有的公用网络(通常是Internet)来建立一个私有的、安全的连接,即建立一条穿过混乱的公用网络的安全、稳定的隧道,同时免除了昂贵的专线租用费用。定义:VPN(VirtualPrivateNetwork,VPN)是企业网在因特网等公共网络上的延伸。远程访问Internet内部网合作伙伴分支机构虚拟专用网图8-1VPN的典型应用VPN特点:VPN(VirtualPrivateNetwork)是一种在公共网络或者共享网络上通过一系列技术建立的逻辑网络,用户可以通过它获得专用的远程访问链路。VPN从专用网发展而来,是用以替代专用网的一种广域网技术。VPN业务对网络类型没有要求。VPN与传统接入网的比较1、传统企业网远程接入的缺点(1)成本高昂(2)使用专线和长途电话线路(3)系统缺乏灵活性(4)系统封闭,与外部网络隔绝2、VPN接入的优点(1)成本低(2)安全保障(3)服务质量保证(4)可扩充性和灵活性(5)管理方便远程访问Internet内部网分支机构安全网关安全网关ISP接入设备图8-2端到端数据通路的典型构成拨入段外部段(公共因特网)内部段公司的内部网络8.2VPN的安全性端到端数据通路中存在的安全风险拨入段数据泄漏风险因特网上数据泄漏的风险安全网关中数据泄漏的风险内部网中数据泄漏的风险8.2.1拨入段数据泄漏风险拨入段用户数据以明文方式直接传递到ISP:远程访问ISP接入设备拨入段Internet1.攻击者可以很容易的在拨入链路上实施监听2.ISP很容易检查用户的数据3.可以通过链路加密来防止被动的监听,但无法防范恶意窃取数据的ISP。PSTN搭线监听攻击者ISPISP窃听到了ISP处已解密成明文明文传输8.2.2因特网上数据泄漏的风险Internet内部网恶意修改通道终点到:假冒网关外部段(公共因特网)ISP接入设备原始终点为:安全网关1.数据在到达终点之前要经过许多路由器,明文传输的报文很容易在路由器上被查看和修改2.监听者可以在其中任一段链路上监听数据3.逐段加密不能防范在路由器上查看报文,因为路由器需要解密报文选择路由信息,然后再重新加密发送4.恶意的ISP可以修改通道的终点到一台假冒的网关远程访问搭线监听攻击者ISPISP窃听正确通道8.2.3安全网关中数据泄漏的风险Internet内部网ISP接入设备远程访问安全网关1.数据在安全网关中是明文的,因而网关管理员可以直接查看机密数据2.网关本身可能会受到攻击,一旦被攻破,流经安全网关的数据将面临风险8.2.4内部网中数据泄漏的风险内部网Internet远程访问安全网关ISP接入设备内部段公司的内部网络1.内部网中可能存在不信任的主机、路由器等2.内部员工可以监听、篡改、重定向企业内部网的数据报文3.来自企业网内部员工的其他攻击方式问题:在端到端的数据通路上随处都有可能发生数据的泄漏,包括:1.拨入段链路上2.ISP接入设备上3.在因特网上4.在安全网关上5.在企业内部网上能否提供一个综合一致的解决方案,它不仅能提供端到端的数据保护,同时也能提供逐段的数据保护呢?8.2.5VPN的基本要求一般来说,企业在选用一种远程网络互联方案时都希望能够对访问企业资源和信息的要求加以控制,所选用的方案应当既能够实现授权用户与企业局域网资源的自由连接,不同分支机构之间的资源共享;又能够确保企业数据在公共互联网络或企业内部网络上传输时安全性不受破坏。因此,一个成功的VPN方案应当能够满足以下所有方面的要求:(1)用户验证VPN方案必须能够验证用户身份并严格控制只有授权用户才能访问VPN。另外,方案还必须能够提供审计和记费功能,显示何人在何时访问了何种信息。(2)地址管理VPN方案必须能够为用户分配专用网络上的地址并确保地址的安全性。(3)数据加密对通过公共互联网络传递的数据必须经过加密,确保网络其他未授权的用户无法读取该信息。(4)密钥管理VPN方案必须能够生成并更新客户端和服务器的加密密钥。(5)多协议支持VPN方案必须支持公共互联网络上普遍使用的基本协议,包括IP,IPX等。8.2.6VPN网关VPN网关是实现局域网(LAN)到局域网连接的设备。它可以实现两大功能:VPN和网关。广义上讲,支持VPN(虚拟专用网)的路由器和防火墙等设备都可以算作VPN网关。目前常见的VPN网关产品可以包括单纯的VPN网关、VPN路由器、VPN防火墙、VPN服务器等产品。(1)它应集成包过滤防火墙和应用代理防火墙的功能。企业级VPN产品是从防火墙产品发展而来,防火墙的功能特性己经成为它的基本功能集中的一部分。如果是一个独立的产品,VPN与防火墙的协同工作会遇到很多难以解决的问题,有可能不同厂家的防火墙和VPN不能协同工作,防火墙的安全策略无法制定(这是由于VPN把IP数据包加密封装的缘故)或者带来性能的损失,如防火墙无法使用NAT功能等等。而如果采用功能整合的产品,则上述问题不存在或很容易解决。(2)VPN应有一个开放的架构。VPN部署在企业接入因特网的路由器之后,或者它本身就具有路由器的功能,因此,它己经成为保护企业内部资产安全最重要的门户。阻止黑客入侵、检查病毒、身份认证与权限检查等很多安全功能需要VPN完成或在同VPN与相关产品协同完成。因此,VPN必须按照一个开放的标准,提供与第三方安全产品协同工作的能力。(3)有完善的认证管理。一个VPN系统应支持标准的认证方式,如RADIUS(RemoteAuthenticationDialInUserService,远程认证拨号用户服务)认证、基于PKI(PublicKeyInfrastructure,公钥基础设施)的证书认证以及逐渐兴起的生物识别技术等等。对于一个大规模的VPN系统,PKI/KMI的密钥管理中心,提供实体(人员、设备、应用)信息的LDAP目录服务及采用标准的强认证技术(令牌、IC卡)是一个VPN系统成功实施和正常运行必不可少的条件。8.3现有的VPN解决方案基于IPSec的VPN解决方案基于第二层的VPN解决方案非IPSec的网络层VPN解决方案非IPSec的应用层解决方案8.3.1基于IPSec的VPN解决方案在通信协议分层中,网络层是可能实现端到端安全通信的最低层,它为所有应用层数据提供透明的安全保护,用户无需修改应用层协议。该方案能解决的问题:1.数据源身份认证:证实数据报文是所声称的发送者发出的。2.数据完整性:证实数据报文的内容在传输过程中没被修改过,无论是被故意改动或是由于发生了随机的传输错误。3.数据保密:隐藏明文的消息,通常靠加密来实现。4.重放攻击保护:保证攻击者不能截获数据报文,且稍后某个时间再发放数据报文,而不会被检测到。5.自动的密钥管理和安全关联管理:保证只需少量或根本不需要手工配置,就可以在扩展的网络上方便精确地实现公司的虚拟使用网络方针8.3.2基于第二层的VPN解决方案公司内部网拨号连接因特网L2TP通道用于该层的协议主要有:L2TP:Lay2TunnelingProtocolPPTP:Point-to-PointTunnelingProtocolL2F:Lay2ForwardingL2TP的缺陷:1.仅对通道的终端实体进行身份认证,而不认证通道中流过的每一个数据报文,无法抵抗插入攻击、地址欺骗攻击。2.没有针对每个数据报文的完整性校验,就有可能进行拒绝服务攻击:发送假冒的控制信息,导致L2TP通道或者底层PPP连接的关闭。3.虽然PPP报文的数据可以加密,但PPP协议不支持密钥的自动产生和自动刷新,因而监听的攻击者就可能最终破解密钥,从而得到所传输的数据。L2TP通道8.3.3非IPSec的网络层VPN解决方案网络地址转换由于AH协议需要对整个数据包做认证,因此使用AH协议后不能使用NAT包过滤由于使用ESP协议将对数据包的全部或部分信息加密,因此基于报头或者数据区内容进行控制过滤的设备将不能使用服务质量由于AH协议将IP协议中的TOS位当作可变字段来处理,因此,可以使用TOS位来控制服务质量8.3.4非IPSec的应用层VPN解决方案SOCKS位于OSI模型的会话层,在SOCKS协议中,客户程序通常先连接到防火墙1080端口,然后由Firewall建立到目的主机的单独会话,效率低,但会话控制灵活性大SSL属于高层安全机制,广泛用于WebBrowseandWebServer,提供对等的身份认证和应用数据的加密。在SSL中,身份认证是基于证书的,属于端到端协议,不需要中间设备如:路由器、防火墙的支持S-HTTP提供身份认证、数据加密,比SSL灵活,但应用很少,因SSL易于管理S-MIME一个特殊的类似于SSL的协议,属于应用层安全体系,但应用仅限于保护电子邮件系统,通过加密和数字签名来保障邮件的安全,这些安全都是基于公钥技术的,双方身份靠X.509证书来标识,不需要FirewallandRouter的支持TCP/IP协议栈与对应的VPN协议NetworkInterface(DataLink)IP(Internetwork)TCP/UDP(Transport)S—MIMEKerberosProxiesSETIPSec(ISAKMP)SOCKSSSL,TLSIPSec(AH,ESP)PacketFilteringTunnelingProtocolsCHAP,PAP,MS-CHAPApplication8.4隧道技术VPN区别于一般网络互联的关键在于隧道的建立,数据包经过加密,按隧道协议进行封装、传送以保证安全性。被封装的数据包在公共互联网络上传递时所经过的逻辑路径称为隧道。隧道技术是指包括数据封装,传输和解包在内的全过程。隧道技术是一种通过使用互联网络的基础设施在网络之间传递数据的方式。使用隧道传递的数据(或负载)可以是不同协议的数据帧或包。隧道协议将这些其它协议的数据帧或包重新封装在新的包头中发送。新的包头提供了路由信息,从而使封装的负载数据能够通过互联网络传递。隧道技术在VPN中的作用1.一个IP隧道可以封装任何形式的有效负载,用户可以透明的拨号上网来访问他们公司的IP、IPX和AppleTalk网络2.隧道能够同时封装多个用户的和多个不同形式的有效负载3.使用隧道技术访问内部网时,内部网不会向Internet报告他的内部网络地址4.隧道技术允许接收者过滤掉和报告隧道连接隧道的建立实现功能1.将数据流量强制传输到特定的目的地2.隐藏私有的网络地址3.在IP网络上传输非IP协议数据包4.提供数据安全支持8.4典型的隧道协议在数据链路层实现数据封装的协议叫第二层隧道协议,目前常用的第二层隧道协议有L2T、PPTP、L2TP等在网络层实现数据封装的协议叫第三层隧道协议。目前广泛应用的IPSec协议属于第三层隧道协议,它将IP包封装在附加的IP包头中通过IP网络传送。8.4.1PPP协议PPP(Point-to-PointProtocol点到点协议)是为在同等单元之间传输数据包这样的简单链路设计的链路层协议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种通用的解决方案。PPP协议包含如下部分:链路控制协议(LinkControlProtocol,LCP)、网络控制协议(NetworkControlProtocol,NCP)以及认证协议LCP负责创建、维护或终止一次物理连接。NCP由一族协议组成,负责解决物理连接上运行什么网络协议,以及解决上层网络协议发生的问题。常用的认证协议包括口令认证协议(PAP)、挑战-握手认证协议(CHAP)、微软CHAP等。PPP链路状态机图死亡建立认证UpOpened终止网络DownFailClosingFailSuccess/None一个典型的链路建立过程分为三个阶段:创