防火墙L2TP VPN技术

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 客户端通过NAS与VPDN网关建立隧道的方式。

这种方式将客户的PPP连
接直接连到企业的网关上,目前可使用的协议有L2F与L2TP等。

其好处在于:
对用户是透明的,用户只需要登录一次就可以接入企业网络,由企业网进行用户
认证和地址分配,而不占用公共地址,用户可使用各种平台上网。

这种方式需要
NAS 支持VPDN 协议,需要认证系统支持VPDN 属性,网关一般使用防火墙
或VPN 专用服务器。

2. 客户端与VPDN 网关直接建立隧道的方式。

这种方式由客户机先建立与
Internet的连接,再通过专用的客户软件(如Windows系统支持的L2TP客户端)
与网关建立通道连接。

其好处在于:用户上网的方式和地点没有限制,不需ISP
介入。

缺点是:用户需要安装专用的软件,受用户使用平台的限制,而且VPN
维护难度较大。

PDF 文件使用 "pdfFactory Pro" 试用版本创建w
络自身的不足。

另外,L2TP协议还结合了L2F协议和PPTP协议的各自优点,
成为IETF有关二层隧道协议的工业标准。

PDF 文件使用 "pdfFactory Pro" 试用版本创建w
幻灯片 8
作为L2TP隧道的另一侧端点,是LAC的对端设备,是LAC进行隧道传输的PPP会话的逻辑终止端点。

远程拨号用户发起。

用户通过PSTN/ISDN接入NAS,获得访问Internet权限然后直接向远端LNS 服务器发起L2TP连接。

此时客户可直接向LNS发起通道连接请求,无需再经过一个单独的LAC设备。

LAC客户地址的分配由LNS来完成。

这种方式的L2TP协议允许移动用户直接发起L2TP隧道连接,要求移动用户安装VPDN的客户端软件,需要知道LNS的IP地址。

客户端软件可以是windows 自带的L2TP VPN拨号软件,也可以是华赛的secoway VPNClient。

此类组网适用于单人上网访问企业网。

各组件的工作如下:
VPN Client: 首先获得公网地址,与LNS之间保持连通,向LNS发起建立隧道请求;
LNS: 为用户分配私网地址,准许用户接入内部网络。

幻灯片 9
当在LAC设备上对用户的用户名、密码进行验证的时候,根据用户名就可以知道是L2TP隧道用户,然后自动向LNS设备发起连接,用户自然就接入到了自己的企业VPN中了。

此方案适用于小型局域网访问公司总部网络。

各组件的工作如下:
VPN Client: 向LAC设备发起PPP连接;
LAC: 判断用户是否是L2TP用户,如果是,判断用户向哪个LNS发起隧道请求;
LNS:为用户分配私网地址,准许用户接入内部网络。

对于这种方式的VPDN接入,主要有如下几个特点:
用户必须采用PPP的方式接入到Internet,比如PPPOE或者是传统的PPP拨号方式等。

在运营商的接入设备上(主要是BAS设备)需要开通相应的VPN服务。

用户需要到运营商出申请这个业务。

对客户端没有任何要求,用户自己也感知不到已经接入到了企业网,完全是运营商来提供L2TP隧道服务。

一个隧道承载多个会话。

幻灯片 10
3. 封装公网IP头:用于该报文在IP网(Internet)转发,注意LAC使用L2TP 隧道的起点和终点地址来封装公网IP头.
LNS收到L2TP报文以后,解封装过程如下:
1. 检查公网IP头和UDP头信息:LNS首先通过UDP端口标识该报文为L2TP 报文,然后检查公网IP头的源目的地址是否和本地已经建立成功的L2TP隧道源目的地址相同,如果相同则解封装公网IP头和UDP头,否则丢弃报文。

2. 检查L2TP头信息:LNS读取L2TP头中的Tunnel ID和Session ID信息,检查其是否和本地已经建立成功的L2TP Tunnel ID和L2TP Session ID相同,如果相同则解封装,否则丢弃报文。

3. 检查PPP头信息:LNS检查PPP头中的相关信息是否正确,然后解封装PPP 头。

4. 得到私网IP报文:此时LNS处理报文的过程就和收到一个普通的IP报文处理过程一致,将私网IP报文送入上层模块或者进行路由处理。

LNS发往LAC的报文封装和解封装过程和上面类似,主要区别是LAC解封装过程中将公网IP头、UDP头和L2TP头解封装以后,不再解封装PPP头,而是直接将PPP报文通过PPP Session发往Client。

幻灯片 11
T:标识了消息类型,0为数据消息,1为控制消息。

L:对于控制消息必须为1,如果L为1,则Length字段必须存在。

X:保留用于以后扩展。

S:对于控制消息必须为1,如果S为1,则Ns和Nr字段必须存在。

O:对于控制消息必须为0,如果O为1,则Offset字段必须存在。

P:对于控制消息必须为1,之用于数据消息,表明该报文应该优先处理,对于某些时延或者丢包敏感的应用必须将其设为1,例如PPP的LCP Echo Requests 等消息。

Version:必须为2,标识版本号。

Length:表明报文的整个长度。

Tunnel ID:标识一个控制连接。

L2TP的Tunnel是在本地用ID消息标识的,并且是本地有效的。

对于同一个Tunnel,本地ID和远端的ID完全可能不同。

注意Tunnel ID是由接收者收到报文以后来定义的,而不是由发送者定义的。

Tunnel ID的选择和交换是在Tunnel建立时通过Tunnel ID AVP完成的。

Session ID:标识在一个Tunnel内部不同Session,和Tunnel ID一样,Session ID也是本地定义本地有效的。

Session ID的选择和交换是在Session建立时通过Session ID AVP完成的。

Ns:标识了数据或者控制消息的序列号,第一个消息Ns应该为0,然后每次增加1。

Nr:控制消息使用,标识希望收到的下一个控制消息的序列号,Nr为上一次收到的Ns号码加1。

对于数据消息,Nr保留,如果数据消息收到了Nr则必须将其忽略。

Offset Size:标识Payload相对于L2TP报文头偏移量。

Offset pad:偏移填充项,填充内容无具体定义。

该字段仅仅是为了格式需要。

幻灯片 12
6. LAC端向指定LNS发起Tunnel连接请求。

7. LAC端向指定LNS发送CHAP challenge 信息,LNS回送该challenge响应消息CHAPresponse,并发送LNS 侧的CHAP challenge,LAC返回该challenge 的响应消息CHAPresponse。

8. 隧道验证通过。

9. LAC端将用户CHAP response、response identifier和PPP协商参数传送给LNS。

10. LNS将接入请求信息发送给RADIUS服务器进行认证。

11. RADIUS服务器认证该请求信息,如果认证通过则返回响应信息。

12. 若用户在LNS侧配置强制本端CHAP认证,则LNS对用户进行认证,发送CHAPchallenge,用户侧回应CHAP response。

幻灯片 13
通过使用扩展验证协议(EAP),第2层隧道协议能够支持多种验证方法,包括一次性口令(One-Time Password),加密计算器(Cryptographic Calculator)和智能卡等。

第3层隧道协议也支持使用类似的方法,例如,IPSec协议通过ISAKMP/Oakley协商确定公共密钥证书验证。

动态地址分配
第2层隧道协议支持在网络控制协议(NCP)协商机制的基础上动态分配客户地址。

第3层隧道协议通常假定隧道建立之前已经进行了地址分配。

目前IPSec 隧道模式下的地址分配
数据压缩
第2层隧道协议支持基于PPP的数据压缩方式。

例如,微软的PPTP和L2TP 方案使用微软点对点加密协议(MPPE)。

IETP正在开发应用于第3层隧道协议的类似数据压缩机制。

数据加密
第2层隧道协议支持基于PPP的数据加密机制。

微软的PPTP方案支持在RSA/RC4算法的基础上选择使用MPPE。

第3层隧道协议可以使用类似方法,例如,IPSec通过ISAKMP/Oakley协商确定几种可选的数据加密方法。

微软的L2TP协议使用IPSec加密保障隧道客户端和服务器之间数据流的安全。

密钥管理
作为第2层协议的MPPE依靠验证用户时生成的密钥,定期对其更新。

IPSec 在ISAKMP交换过程中公开协商公用密钥,同样对其进行定期更新。

多协议支持
第2层隧道协议支持多种负载数据协议,从而使隧道客户能够访问使用IP, IPX 或NetBEUI等多种协议企业网络。

相反,第3层隧道协议,如IPSec隧道模式只能支持使用IP协议的目标网络。

相关文档
最新文档