【隧道篇 / PPTP&L2TP】(5.2) ❀ 01. PPTP & L2TP 连接 ❀ FortiGate 防火墙

  【简介】虽然有SSL,但是因为要安装 FortiClient 客户端软件,很多人还是喜欢用PPTP或L2TP,理由很简单,那就是只要是Windows就可以连,不用安装其它软件。


  PPTP 与 L2TP 协议的联系与区别

        PPTP:Point to Point Protocol Tunnel Protocol

        L2TP: Layer 2 Tunnel Protocol

        如果非要说他们有什么联系,那就是他们都能把PPP协议作为自己的Payload,封装PPP协议,这是他们之间唯一的联系。我们用比较容易理解的方法来描述PPP、PPTP、L2TP之间的关系。

        PPP协议点对点协议,相当于你乘飞机的廊桥,把飞机和登机大厅物理连接起来,然后把旅客(IP Packet)送到飞机(Internet)上。

        而如果没有廊桥,需要摆渡车,PPTPL2TP就相当于这个摆渡车

        PPTP是两辆车,一辆负责开道(控制通道,TCP Port 1723,用于建立安全通道),一辆运送旅客(IP/GRE)安全通道,运送旅客的车配备了一些安全人员,只负责保卫VIP旅客(IP Packet,end user traffic)的安全,其它旅客(IP Packet,control traffic)就没有人保卫,最终也到达目的地,登机(Internet)

        L2TP是一辆敞篷车,没有安全,为了全车旅客的安全,配备了安全人员(IP security),保护所有乘客(IP Packet),安全到达目的地,然后再登机(Internet)。

        你可以看出,它们是殊途同归,最终的目的都是为了把旅客(IP Packet)送上飞机(Internet),只是途径不一样,安全级别也不一样。

        从设计的角度来看主要差别在于:

        1、PPTP协议是点对点隧道协议,其将控制包与数据包分开,控制包采用TCP控制,用于严格的状态查询及信令信息;数据包部分先封装在PPP协议中,然后封装到GRE V2协议中。

        2、L2TP是国际标准隧道协议,它结合了PPTP协议以及第二层转发L2F协议的优点,能以隧道方式使PPP包通过各种网络协议,包括ATM、SONET和帧中继。但是L2TP没有任何加密措施,更多是和IPSec协议结合使用,提供隧道验证。

        3、L2TP是IETF标准协议,意味着各种设备厂商的设备之间用L2TP一般不会有问题;而PPTP是微软出的,有些非微软的设备不一定支持。

        4、L2TP使用AES或者3DES加密(256位密钥),用IPSec协商加密方式,并且有电脑/用户双重认证机制,而PPTP只支持MPPE(最多128位密钥),只用PPP协商加密方式,并只有用户一层认证机制,相对来说L2TP更安全。

        5、L2TP使用的IPSec,绝大多数防火墙都支持,而PPTP使用GRE,有些防火墙可能有问题。

        6、L2TP由于封装了更多安全隧道的信息,所以开销更高,而PPTP开销低,所以相对而言PPTP速度更快。

  用户

        在建立PPTP之前,我们必须先建立用来登录验证的用户。

        ① 选择菜单【用户&设备】-【用户】-【设置用户】,点击 “Create New”。

        ② 默认为 “本地用户”, 点击 “下一个”。

        ③ 输入自定义的用户名和密码,在PPTP登录的时候要用上。

        ④ 邮件地址可以不输入,直接点击 “下一个”。

        ⑤ 默认用户为“启用”,点击 “完成”。

        ⑥ 用户建立完成,可以根据实际情况建立多个用户。

  用户组

        建立完用户后需要再建立用户组,用户组包含新建的用户。

        ① 选择菜单【用户&设备】-【用户】-【用户组】,点击 “Create New”。

        ② 输入自定义的用户组名,点击 “成员” 右边的下拉箭头,选择新建立的用户名。

        ③ 如果有多个用户,可以再点击右边的绿色加号,继续添加成员。

        ④ 用户组建立完成。

  地址对象

        用户和用户组设置完成后,我们还需要把访问的IP地址设置为地址对象。

        ① 选择菜单【策略&对象】-【对象】-【地址】,点击 “Create New”。

        ② 首先建立PPTP与L2TP拨号成功后生成的IP地址对象,因为用户数有可能会比较多,这里选用IP范围。

        ③ 建立连接成功后允许访问的地址对象,这里设置的是一台服务器的IP地址,也可以根据实际情况作修改。

          【提示】 PPTP或L2TP拨号产生的IP地址段,不要与本地地址相同,也尽量不要与需要访问的防火墙的内网地址相同,以引起冲突。

  设置

        L2TP与 PPTP配置方法相同,需要用命令行进行配置。

        

        ① PPTP 设置完整命令,包括状态、用户组、开始IP地址、结束IP地址等。

        

        ② L2TP 设置比PPTP少几个,其它主要命令一样。

        ③ 在状态窗口下有CLI控制台,可以输入命令行。

        ④ PPTP与L2TP配置方法相同,这里都将状态设为可用, SIP为开始IP地址,EIP为结束IP地址,usrgrp为验证用户组。

  访问策略

        拨号连到防火墙后,需要通过策略设置允许访问那些IP。

        ① 选择菜单【策略&对象】-【策略】-【IPv4】,点击 “Create New”。

        ② 策略设置允许从Wan1拨号进来,拨号生产的IP地址允许访问Port15端口的指定服务器地址。

  客户端连接

        因为PPTP是微软推出的,所有Windows系统都默认带有PPTP客户端,这也是很多人为什么喜欢用PPTP的一个原因。

        ① 这里以Windows 10为例,鼠标右击右下角网络图标,弹出菜单里选择 “打开网络和共享中心”。

        ② 点击 “设置新的连接或网络”。

        ③ 选择 “连接到工作区”。

        ④ 由于这里是拨远端防火墙,选择 “使用我的Internet连接”。

        ⑤ 输入防火墙Wan1口的外网IP地址,标明目标名称,连接就建好了。

        ⑥ 点击左下角视窗图标,点击设置图标。

        ⑦ 选择 “网络和Internet”。

        ⑧ 点击,可以看到前面建立的连接,点击 “连接”。

        ⑨ 输入用户名和密码,也就是在防火墙建立用户时输入的内容。

        ⑩ 第一次连接的时候会花点时间,有时还需要多试几次。

  验证与检测

        拨号连接成功后,我们需要检测PPTP是否可以正常使用。

        ① 本机会出现一块PPP虚拟网卡,IP地址就是设置的起始地址。注意这里没有网关,上互联网仍然是走本地。

        ② 可以访问防火墙策略指定的服务器IP地址,说明PPTP连接成功。

        ③ 运气好的话,PPTP一连就成功了,可要是运气不好怎么都连不上那怎么办呢?在防火墙的CLI控制台里,我们可以用命令检测PPP状况,一输完第二条命令,就会不停有信息弹出。

        ④ 客户端拨号,这里就会显示出对应信息,例如输入密码不对,这里就会显示验证无效。CLI控制台的提示不会自动回行,需要弹出并打开最大窗口,而且翻开已经显示示的信息内容有限,所以建议用终端工具连接防火墙查看。

        ⑤ PPP信息会不停的弹出,如果要关闭诊断话,可以先在其它地方输入关闭命令,然后复制,再到CLI窗口按回车,快速粘贴,再按回车。就可以停止诊断了。

  通过PPTP上网

        和SSL一样,PPTP拨通后,也可通对方上互联网。

        ① 在网络连接里鼠标右击连接,弹出菜单里选择 “属性”。

        ② 选择子菜单 “网络”。

        ③ 选择 “Internet协议版本4”,点击“属性”。

        ④ 选择 “高级”。

        ⑤ 将 “在远程网络上使用默认网关” 打上钩,就设置好了。

        ⑥ 再次拨通PPTP,这次获得的IP地址,就会多了一个默认网关0.0.0.0。

        ⑦ 上网流量将不通过本地互联网,而是走对方的互联网,但是如果对方互联网有多条线路的话,也经常会造成上网失败。

飞塔技术-老梅子   QQ:57389522


  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
可以按照以下步骤在 CentOS 上快速部署 L2TP 服务: 1. 安装 L2TPPPTP 服务 ``` yum install xl2tpd ppp pptpd ``` 2. 配置 xl2tpd 编辑 `/etc/xl2tpd/xl2tpd.conf` 文件,将以下内容添加到文件末尾: ``` [global] ipsec saref = no [lns default] ip range = 192.168.42.10-192.168.42.20 local ip = 192.168.42.1 require chap = yes refuse pap = yes require authentication = yes name = l2tpd ppp debug = yes pppoptfile = /etc/ppp/options.xl2tpd length bit = yes ``` 3. 配置 ppp 创建 `/etc/ppp/options.xl2tpd` 文件,并将以下内容添加到文件中: ``` require-mschap-v2 ms-dns 8.8.8.8 ms-dns 8.8.4.4 proxyarp mtu 1400 mru 1400 auth name l2tpd password l2tpdpassword ``` 注意将 `l2tpdpassword` 改为你自己的密码。 4. 配置 pptpd 编辑 `/etc/pptpd.conf` 文件,将以下内容添加到文件末尾: ``` localip 192.168.42.1 remoteip 192.168.42.100-200 ``` 5. 配置 chap-secrets 编辑 `/etc/ppp/chap-secrets` 文件,将以下内容添加到文件末尾: ``` username l2tpd password * ``` 注意将 `l2tpd` 和 `password` 改为你自己的用户名和密码。 6. 启动服务 ``` systemctl start pptpd systemctl start xl2tpd ``` 7. 配置防火墙规则 ``` iptables -A INPUT -p udp --dport 1701 -j ACCEPT iptables -A INPUT -p udp --dport 500 -j ACCEPT iptables -A INPUT -p udp --dport 4500 -j ACCEPT iptables -A INPUT -p gre -j ACCEPT iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu ``` 完成以上步骤后,即可在 CentOS 上快速部署 L2TP 服务。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

飞塔老梅子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值