如何为L2TP VPN开放安全策略
L2TP VPN有三种典型的场景,下面分别介绍。
Client-Initiated场景(移动办公用户访问企业内网)
在Client-Initiated场景中,移动办公用户要访问内网资源,需要首先跟防火墙(LNS设备)建立L2TP隧道、L2TP会话和PPP连接。在建立PPP连接的过程中,LNS为移动办公设备分配私网地址。在这三个阶段,移动办公设备与LNS之间交互的是L2TP报文。在数据传输阶段,移动办公设备访问内网资源的业务报文先后经过PPP封装和L2TP封装,发送给防火墙。防火墙使用VT接口拆除报文的L2TP头和PPP头,查找私网路由,转发报文给服务器。详细的报文交互过程如图9-6所示。
在整个报文交互过程中,防火墙作为LNS设备,需要处理两类报文:
- 移动办公设备发起的L2TP协商报文,以及经过L2TP封装的业务报文,其使用公网地址通信,目的端口为UDP 1701,由Untrust区域进入Local区域。
- 防火墙在VT接口解封装业务报文,发送给内网服务器,使用私网地址通信,由VT接口所在安全区域进入服务器所在区域。
相应的安全策略如表9-5所示。
序号 |
名称 |
源安全区域 |
目的安全区域 |
源地址/地区 |
目的地址/地区 |
服务 |
动作 |
---|---|---|---|---|---|---|---|
101 |
Allow L2TP packet from remote uses |
untrust |
local |
any |
203.0.113.1/32 |
l2tp (UDP: 1701) |
permit |
102 |
Allow original packet from remote user |
dmz |
trust |
10.1.3.1-10.1.3.100 |
10.1.2.10/32 |
any1 |
permit |
1:请根据业务指定具体的服务。如果服务器端需要主动访问移动端,还需要镜像配置反向安全策略。为了简化配置,可以将VT接口加入到服务器所在的安全区域。 |
NAS-Initiated场景(拨号用户访问企业内网)
在NAS-Initiatied场景中,拨号用户首先发出PPPoE广播报文,跟运营商NAS设备建立PPPoE连接。随后,NAS设备与LNS设备协商L2TP隧道,建立L2TP会话。拨号用户向LNS请求私网地址,建立PPP连接。在数据传输阶段,拨号用户访问内网资源的业务报文先后经过PPP封装和PPPoE封装,发送给NAS设备。NAS设备使用VT接口拆除报文的PPPoE头,再封装L2TP头,查找公网路由,发送给LNS设备。LNS设备收到报文以后,使用VT接口拆除L2TP头和PPP头,查找私网路由,转发报文给服务器。
其中:
- 拨号用户与NAS设备之间交互的PPPoE报文是广播报文,不需要安全策略。
- 对于NAS设备来说,其向LNS设备发出的L2TP协商报文和L2TP封装报文,由Local区域进入LNS设备所在安全区域。
- 对于LNS设备来说,其接收NAS设备发出的L2TP协商报文和经过L2TP封装的拨号用户访问内网资源的业务报文。这些L2TP报文都由Untrust区域进入Local区域。
- 此外,LNS设备收到封装后的业务报文以后,还要用VT接口解封装,并转发给内网服务器,即由VT接口所在安全区域进入服务器所在区域。
相应的安全策略如表9-6所示。
序号 |
名称 |
源安全区域 |
目的安全区域 |
源地址/地区 |
目的地址/地区 |
服务 |
动作 |
---|---|---|---|---|---|---|---|
运营商侧NAS设备 |
|||||||
101 |
Allow L2TP packet to LNS |
local |
untrust |
192.0.2.1/32 |
203.0.113.1/32 |
l2tp (UDP: 1701) |
permit |
企业侧LNS设备 |
|||||||
201 |
Allow L2TP packet from NAS |
untrust |
local |
192.0.2.1/32 |
203.0.113.1/32 |
l2tp (UDP: 1701) |
permit |
202 |
Allow original packet from remote user |
dmz |
trust |
10.1.3.1-10.1.3.100 |
10.1.2.10/32 |
any1 |
permit |
1:请根据业务指定具体的服务。为了简化配置,可以将VT接口加入到服务器所在的安全区域。 |
Call-LNS场景(通过LAC自主拨号实现企业内网互连)
在Call-LNS场景中,LAC设备主动与LNS设备协商L2TP隧道,建立L2TP会话,建立PPP连接。在PPP连接建立过程中,LNS设备分配私网IP地址给LAC设备的VT接口。当有数据传输时,LAC首先通过源NAT把原始报文的源地址转换为VT接口地址,再使用VT接口完成PPP封装和L2TP封装,通过公网路由发送给LNS设备。LNS设备收到报文以后,使用VT接口拆除报文的PPPoE头和PPP头,查找私网路由,转发报文给服务器。
对于LAC设备来说:
- LAC设备主动向LNS设备发送L2TP协商报文和L2TP封装报文,由Local区域进入LNS设备所在安全区域(Untrust)。
- 内网终端发起的业务报文,需要送到VT接口封装,因此其目的安全区域为VT接口所在安全区域。
对于LNS设备来说:
- LNS设备接收LAC设备发送过来的L2TP协商报文和L2TP封装报文,由LAC设备所在安全区域进入Local区域。
- LNS设备使用VT接口解封装报文,送到内网服务器,其源安全区域为VT接口所在安全区域,目的安全区域为内网服务器所在安全区域。需要注意的是,解封装后的报文源IP地址是LAC侧VT接口获得的私网地址。
如果LNS侧内网终端需要主动访问LAC侧业务,还需要分别在两侧完成此类业务报文的封装和解封装,因此需要为反向业务镜像配置安全策略。相应的安全策略如表9-7所示。
序号 |
名称 |
源安全区域 |
目的安全区域 |
源地址/地区 |
目的地址/地区 |
服务 |
动作 |
---|---|---|---|---|---|---|---|
LAC设备 |
|||||||
101 |
Allow L2TP packet to LNS |
local |
untrust |
192.0.2.1/32 |
203.0.113.1/32 |
l2tp (UDP: 1701) |
permit |
102 |
Allow original packet from local user |
trust |
dmz |
10.3.3.0/24 |
10.1.2.0/24 |
any1 |
permit |
103 |
Allow original packt from remote user |
dmz |
trust |
10.1.2.0/24 |
10.3.3.0/24 |
any1 |
permit |
LNS设备 |
|||||||
201 |
Allow L2TP packet from LAC |
untrust |
local |
192.0.2.1/32 |
203.0.113.1/32 |
l2tp (UDP: 1701) |
permit |
202 |
Allow original packet from remote user |
dmz |
trust |
10.1.3.1-10.1.3.1002 |
10.1.2.0/24 |
any1 |
permit |
203 |
Allow original packet from local user |
trust |
dmz |
10.1.2.0/24 |
10.1.3.1-10.1.3.1002 |
any1 |
permit |
1:请根据业务指定具体的服务。如果服务器端需要主动访问移动端,还需要镜像配置反向安全策略。为了简化配置,可以将VT接口加入到服务器所在的安全区域。 2:LNS侧解封装之后的业务报文的源IP地址是其分配给LAC侧的VT接口的IP地址,而不是远端内网PC的IP地址。 |