强叔拍案惊奇 出差员工使用手机通过L2TP over IPSec接入总部

强叔最近开始在“侃墙”系列连载VPN了,许多小伙伴们看后大呼不过瘾,希望强叔能加快更新速度。但强叔也不是三头六臂,也需要一笔一笔来写啊。为了满足小伙伴们对VPN的浓厚学习兴趣,强叔就先给大家带来一篇很实用的L2TP over IPSec的案例,算是让大家先预热下L2TPIPSec的综合使用。而且本案例还可以指导各位小伙伴在出差时使用安卓或苹果手机通过VPN接入总部,进行安全、高效的移动办公。

 

——————————————————下面大家就一起来赏析此案例吧~  ——————————————————————

 

【组网需求】

如图下所示,公司通过USG5500V3R1版本)连接Internet。公司希望出差员工能够使用手机(3G/4G)接入公司内部网络,实现安全、高效的移动办公。

【强叔规划】

USG5500 V3R1版本支持三种安全的远程接入方式:SSL VPNEAP认证方式的IPSec VPNL2TP over IPSec(仅仅L2TP是不安全的,加上IPSec就安全了)。由于一般手机不能很好地支持SSL VPNEAP认证,所以本案例选择的是手机普遍支持的L2TP over IPSec

L2TP over IPSec的主要配置思路如下:

1、  USG上配置L2TP功能。这里的L2TP配置与普通的L2TP配置并无差别。

2、  USG上配置IPSec功能。这里需要注意两点:一是在定义要保护的数据流时只需匹配1701端口(L2TP协议报文的端口)即可;二是由于手机是通过3G/4G方式接入InternetIP地址不固定,所以需要在USG上配置模板方式的IPSec

3、  在手机上配置L2TP over IPSec。需要注意的是手机上的VPN参数需要与USG上的保持一致。这点会在后面详细说明。

由于本案例L2TP over IPSec参数众多,而且要求服务器端(USG)与客户端(手机)的参数保持一致,因此我们在开始配置前很有必要将这些参数都规划好并列举出来。需要注意的是iPhoneAndroid的界面参数略有不同。

PS:以下参数均经过强叔实测,小伙伴们可以直接使用。

项目

数据

说明

USG

L2TP

  • PPP认证方式:CHAP
  • iPhone帐户(用户名iphone 密码abcd1234!)
  • Android帐户(用户名androidabcd3456!)
  • 用户认证方式:本地认证(缺省)

USGiPhone帐户的用户名密码需要与iPhone帐户密码保持一致。

USGAndroid帐户的用户名密码需要与Android手机连接VPN时的用户名密码保持一致。

IKE安全提议

  • 认证方式:预共享密钥(缺省)
  • 认证算法:SHA-1(缺省)
  • 加密算法:AES-CBC
  • DH groupgroup2

-

IKE对等体

  • 版本:IKEv1
  • 协商模式:主模式(缺省)
  • 预共享密钥:abc123

USG预共享密钥认证字需要与iPhone密钥 Android手机的“IPsec预共享密钥保持一致。

IPSec安全提议

  • 安全协议:ESP(缺省)
  • 认证算法:SHA-1
  • 加密算法:AES
  • 封装模式:传输模式

-

iPhone手机

VPN

  • 描述:L2TP over IPSec
  • 服务器:218.17.167.149
  • 帐户:iphone
  • 密码:abcd1234
  • 密钥:abc123
  • 发送所有流量:是

服务器的地址是USG的建立IPSec隧道的接口IP地址。

Android手机

VPN

编辑VPN网络

  • 名称:l2tp over ipsec
  • 类型:L2TP/IPSec PSK
  • 服务器地址:218.17.167.149  
  • IPsec预共享密钥:abc123

连接到l2tp over ipsec

  • 用户名:android
  • 密码:abcd2345

服务器的地址是USG的建立IPSec隧道的接口IP地址。

 

【配置步骤】

1、  配置USGL2TP功能。

1)开启L2TP功能。

     [USG] l2tp enable

2)配置本地用户名和密码,用于手机VPN拨号时认证。配置IP地址池,为手机分配内网IP地址。

     [USG] aaa

     [USG-aaa] local-user iphone password cipher abcd1234

     [USG-aaa] local-user android password cipher abcd2345

     [USG-aaa] ip pool 1 10.0.0.1 10.0.0.50

     [USG-aaa] quit

【强叔点评】本案例中只举例创建了两个帐号,如果有多个用户则需要创建多个帐号。

本案例的地址池中的IP地址与现有公司内网IP地址不在同一网段。如果希望在同一网段,则需要配置L2TP虚拟转发功能和ARP代理功能。

3)配置虚拟接口模板,并将虚拟接口模板加入trust区域。

     [USG] interface Virtual-Template 1

     [USG-Virtual-Template1] ip address 1.1.1.1 24

     [USG-Virtual-Template1] ppp authentication-mode chap

     [USG-Virtual-Template1] remote address pool 1

     [USG-Virtual-Template1] quit

     [USG] firewall zone trust

     [USG-zone-trust] add interface Virtual-Template 1

     [USG-zone-trust] quit

【强叔点评】 虚拟接口模板的IP地址可以任意配置,只要不与已存在的IP地址冲突即可。

此处指定的地址池号必须是AAA视图下已有的地址池,否则USG无法为客户端分配IP地址。

4)创建并配置L2TP组。

[USG] l2tp-group 1

[USG-l2tp1] undo tunnel authentication

[USG-l2tp1] allow l2tp virtual-template 1

[USG-l2tp1] quit

    【强叔点评】这里建议使用L2TP1l2tp-group 1),因为L2TP1可以不指定隧道对端名称,即不需要知道手机的设备名称。

2、  配置USGIPSec功能。

 1)定义要保护的数据流。

      [USG] acl 3100

      [USG-acl-adv-3100] rule 5 permit udp source-port eq 1701

      [USG-acl-adv-3100] quit

【强叔点评】IPSec需要保护L2TP封装后的报文,L2TP报文的端口号为1701

2配置IKE安全提议。

[USG] ike proposal 1

[USG-ike-proposal-1] encryption-algorithm aes-cbc

[USG-ike-proposal-1] dh group2

[USG-ike-proposal-1] quit

3)配置IKE对等体,预共享密钥为abc123

             [USG] ike peer b1

[USG-ike-peer-b1] ike-proposal 1

[USG-ike-peer-b1] pre-shared-key abc123

[USG-ike-peer-b1] quit

4)配置IPSec安全提议。

  [USG] ipsec proposal a1

  [USG-ipsec-proposal-a1] encapsulation-mode transport

  [USG-ipsec-proposal-a1] esp authentication-algorithm sha1

  [USG-ipsec-proposal-a1] esp encryption-algorithm aes

  [USG-ipsec-proposal-a1] quit

5)配置IPSec安全策略模板。

  [USG] ipsec policy-template temp 1

  [USG-ipsec-policy-templet-temp-1] security acl 3100

  [USG-ipsec-policy-templet-temp-1] proposal a1

  [USG-ipsec-policy-templet-temp-1] ike-peer b1

  [USG-ipsec-policy-templet-temp-1] quit

6)创建IPSec安全策略并引用安全策略模板。

  [USG] ipsec policy d1 1 isakmp template temp

7)在接口上应用IPSec安全策略。

  [USG] interface GigabitEthernet 0/0/1

  [USG-GigabitEthernet0/0/1] ipsec policy d1

3、  iPhone上配置VPN(本文以iPhone 4SiOS 5.1版本为例)。

配置iPhone前,请确认iPhone能够正常访问Internet(通过3G或通过无线局域网)。

1)在iPhone上选择“设置 > 通用 > 网络 > VPN”。

2)单击“添加VPN配置”。

3)按照下图输入参数。


【强叔点评】

l  iPhone的“服务器”需要与USG的公网IP地址保持一致。本例中即为USGGigabitEthernet0/0/1接口的IP地址。

l  iPhone的“帐户”和“密码”需要与USGAAA视图下配置的本地用户的“用户名”和“密码”保持一致。

l  iPhone的“密钥”需要与USG的“预共享密钥”保持一致。

   4)单击“存储”。

   5)选中配置的VPN后,启用VPN,如下图所示。

   

4、  Android上配置VPN(本文以Android4.0版本为例)。

配置Android手机前,请确认Android手机能够正常访问Internet(通过3G或通过无线局域网)。

1)在Android手机上选择“设定 > 无线和网络 > 更多设定 > VPN”。

2)在弹出的对话框中单击“确定”。

3)选择“密码”,在文本框中输入密码后,单击“继续”。

【强叔点评】此密码为手机的屏幕锁定密码。如果您之前设定了屏幕锁定密码,则不会弹出对话框。

4)重新输入密码后,单击“继续”。

5)单击“添加VPN网络”。

6)参考下图输入参数。

【强叔点评】

l  “服务器地址”需要与USG的公网接口IP地址保持一致。本例中即为USGGigabitEthernet0/0/1接口的IP地址。

l  IPsec预密钥”需要与USG的“预共享密钥”保持一致。

   7)单击“储存”。

   8)单击以上配置的“l2tp over ipsec”。

   9)参考下图输入参数。

   

   【强叔点评】“用户名”和“密码”需要与USGAAA视图下配置的L2TP的“用户名”和“密码”保持一致。

   10)单击“连接”。

 

【强叔验证】

1、在USG上查看结果。

   1)执行命令display l2tp tunnel,可看到隧道建立成功。

[USG] display l2tp tunnel

Total tunnel = 1

 LocalTID RemoteTID RemoteAddress    Port   Sessions RemoteName

 1        2         219.141.159.58   52032  1        LHW

   2)执行命令display l2tp session,可看到会话连接建立成功。

   [USG] display l2tp session

Total session = 1

    LocalSID  RemoteSID  LocalTID 

     1         330        1     

   3)执行命令display ike sa,可看到IKE SA建立成功。  

[USG] display ike sa

current ike sa number: 2

-----------------------------------------------------------------------------

conn-id    peer                    flag          phase vpn

-----------------------------------------------------------------------------

40004      219.141.159.58          RD            v1:2  public

40003      219.141.159.58          RD            v1:1  public

 

  flag meaning

  RD--READY    ST--STAYALIVE  RL--REPLACED      FD--FADING

  TO--TIMEOUT  TD--DELETING   NEG--NEGOTIATING  D—DPD

   4)执行命令display ipsec sa,可看到IPSec SA建立成功。

[USG] display ipsec sa

===============================

Interface: GigabitEthernet0/0/1

    path MTU: 1500

===============================

 

  -----------------------------

  IPsec policy name: "d1"

  sequence number: 1

  mode: template

  vpn: public

  -----------------------------

    connection id: 40004

    rule number: 4294967295

    encapsulation mode: transport

    holding time: 0d 0h 1m 30s

    tunnel local : 218.17.167.149    tunnel remote: 219.141.159.58

    flow      source: 218.17.167.149/255.255.255.255 17/1701

    flow destination: 219.141.159.58/255.255.255.255 17/64528

 

    [inbound ESP SAs]

      spi: 2168422603 (0x813f80cb)

      vpn: public  said: 2  cpuid: 0x0000

      proposal: ESP-ENCRYPT-AES ESP-AUTH-SHA1

      sa remaining key duration (bytes/sec): 1887432278/3510

      max received sequence-number: 51

      udp encapsulation used for nat traversal: Y

 

    [outbound ESP SAs]

      spi: 73673897 (0x4642ca9)

      vpn: public  said: 3  cpuid: 0x0000

      proposal: ESP-ENCRYPT-AES ESP-AUTH-SHA1

      sa remaining key duration (bytes/sec): 1887435335/3510

      max sent sequence-number: 29

      udp encapsulation used for nat traversal: Y

 

2、在手机上查看结果。

l  iPhone手机上查看结果

1)在iPhone上选择“设置 > 通用 > 网络 > VPN”,可以看到VPN的“状态”显示为“已连接”。

2)在iPhone上能够访问公司的内部网络。

l  Android手机上查看结果

1)在Android手机上选择“设定 > 无线和网络 > 更多设定 > VPN”,可以看到“l2tp over ipsec”下显示“已连接”。

2)在Android手机上能够访问公司的内部网络。

【拍案惊奇】

1此案例的惊奇之处在于既介绍了L2TPIPSec的配置方法,又介绍了L2TPIPSec如何配合使用。

2此案例的另一惊奇之处在于介绍了 iPhone 和安卓两种手机的 L2TP over IPSec 配置方法。
  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值