前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Centos7.2下部署L2TP/IPsec类型的VPN环境记录

Centos7.2下部署L2TP/IPsec类型的VPN环境记录

作者头像
洗尽了浮华
发布2022-03-28 15:28:48
7.3K0
发布2022-03-28 15:28:48
举报
文章被收录于专栏:散尽浮华散尽浮华

之前在机房部署了PPTP的V**环境,后面发现有的同事使用的mac本不能连接PPTP,原因是IOS10.0系统以后就不支持PPTP的V**了,于是打算将V**更换L2TP类型的。 L2TP是一种工业标准的Internet隧道协议,功能大致和PPTP协议类似,比如同样可以对网络数据流进行加密。不过也有不同之处: 1)PPTP要求网络为IP网络,L2TP要求面向数据包的点对点连接; 2)PPTP使用单一隧道,L2TP使用多隧道; 3)L2TP提供包头压缩、隧道验证,而PPTP不支持。 4)L2TP的可应用性更为广泛,很多路由不支持PPTP穿透

废话不多说了,以下是在Centos7.2下部署L2TP环境的操作记录: 下载安装脚本https://files.cnblogs.com/files/think8848/StackScript.zip(百度云盘下载地址https://pan.baidu.com/s/1bA0FjK 提取密码:x7nn)

脚本执行中报错: ...... + sh /tmp/vpn.sh Error: Network interface 'eth0' is not available.

原因:我这里的L2TP部署机的外网网卡是em1,而不是脚本中指定的eth0,因此需要将/tmp/vpn.sh脚本文件中的eth0替换成em1 具体解决操作如下: 先查看下StackScript脚本内容

由于/tmp/vpn.sh脚本(可以预览下脚本里的配置内容)中定义的一些信息跟我的部署机上的信息不一致,所以需要做一些修改:eth0替换成em1;eth替换成em;192.168.42替换成192.168.1;将192.168.43替换成192.168.1;192.168.42.1替换成本机的内网ip:192.168.1.17(这里包含了防火墙规则设置)

接着将StackScript脚本中剩余的操作单独放在一个新脚本里执行:

上面的PSK、用户名和密码都是从Linode上拔下来的,这些信息可以自己修改: a)修改PSK为huanqiuwangshibo

b)修改用户名和密码为wangshibo和wangshibo@123

然后重启IPsec和xl2tpd服务

最后可以检查下ipsec状态,如下没有FAILED就说明状态正常

按照上面操作完成后,基本即ok了,就可以在客户端连接L2TP类型的V**了 也可以查看下/etc/ipsec.conf、/etc/ipsec.secrets、/etc/ppp/chap-secrets、/etc/xl2tpd/xl2tpd.conf这几个文件配置,确保配置信息无误。

客户端连接L2TP/IPsec的操作记录 (1)先说下windows客户机连接L2TP/IPsec的操作记录,这里温馨提示下,请按照此教程配置客户端

这里以win8/win10为例: 1)右键单击系桌面右下角的无线/网络图标。 2)选择打开网络与共享中心。 3)单击设置新的连接或网络。 4) 选择连接到工作区,然后单击 下一步。 5)单击使用我的Internet连接 (V**)。 6)在Internet地址字段中输入你的 V** 服务器 IP。 7)在目标名称 字段中输入任意内容。单击创建。 8)返回网络与共享中心。单击左侧的更改适配器设置。 9)右键单击新创建的V**连接,并选择属性。 10)单击安全 选项卡,从 V** 类型下拉菜单中选择 "使用 IPsec 的第 2 层隧道协议 (L2TP/IPSec)"。 11)单击允许使用这些协议。确保选中 "质询握手身份验证协议 (CHAP)" 复选框。 12)单击高级设置 按钮。 13)单击使用预共享密钥作身份验证并在密钥字段中输入你的 V** IPsec PSK。 14)单击确定 关闭 高级设置。 15)单击确定 保存 V** 连接的详细信息。

特别注意的是: 在首次连接之前一定要修改一次注册表(否则会报错:无法建立计算机与 V**服务器之间的网络连接,因为远程服务器未响应.....)。具体操作如下: 1)确保win10客户机的"控制面板"->"管理工具"->"组件服务"->"服务"->"IPsec Policy Agent"是正在运行的状态. 2)修改注册表。按键ctrl+r,在"运行"里输入"regedit"打开注册表 a)依次打开:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Rasman\Parameters,然后在右边栏里确认有AllowL2TPWeakCrypto,并且右键AllowL2TPWeakCrypto->"修改"->"数值数据"为1(如果不存在AllowL2TPWeakCrypto,就新建它) b)依次打开:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent ,然后在右边栏里新建QWORD(64位),并命名为"AssumeUDPEncapsulationContextOnSendRule",并且修改它的"数值数据"为2 3)依次打开客户机的"C盘"->"Windows"->"System32"-"cmd.exe",右击cmd.exe,以管理员身份运行。然后在命令窗口里输入:

4)最后,一定要重启客户机 5)然后再次点击新建的L2TL的V**,就能成功连接了。如下:

连接成功后能正常上网,并且查看本机外网ip已经变成L2TP服务器的外网ip了

如果客户端后续连接失败(报错:L2TP连接尝试失败,因为安全层在初始化与远程计算机协商时遇到一个处理错误) 可以重启服务端的ipsec和xl2tpd服务,然后再尝试在客户端连接 [root@linux-node2 ~]# systemctl restart ipsec xl2tpd

(2)接着说下linux客户机连接L2TP/IPsec的操作记录(这里以centos6为例)

安装基本工具

安装L2TP和IPsec客户端(其实也可以用于服务端,只不过本例中,服务器端使用的是libreswan,而客户端使用的是strongswan)

配置文件

启动客户端

打开连接通道,successfully表示通道顺畅

创建xl2tpd控制文件

连接L2TP/IPsec的命令(L2TP服务端的ipsec和xl2tpd重启后,客户端的V**连接就会断开,需要重新连接)

稍等片刻,大概3-5秒钟就可以看到已经连上去了(ifconfig查看发现有了ppp0的ip信息,这是连接V**后分配过来的ip)

设置路由

验证,如果顺利返回了服务器端的IP,说明已经成功了!

客户机连上V**后,ping www.baidu.com,发现夜里速度比白天慢一些,和DNS解析有关~

关闭L2TP/IPsec的命令

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-02-24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
VPN 连接
VPN 连接(VPN Connections)是一种基于网络隧道技术,实现本地数据中心与腾讯云上资源连通的传输服务,它能帮您在 Internet 上快速构建一条安全、可靠的加密通道。VPN 连接具有配置简单,云端配置实时生效、可靠性高等特点,其网关可用性达到 99.95%,保证稳定、持续的业务连接,帮您轻松实现异地容灾、混合云部署等复杂业务场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档