CentOS7部署L2TP

l2tp是一种工业标准的Internet隧道协议,功能大致和PPTP协议类似,比如同样可以对网络数据流进行加密。为众多公司所接受,已经成为IETF有关2层通道协议的工业标准,此协议基于微软的点对点隧道协议(PPTP)和思科2层转发协议(L2F)之上,这种虚拟私有网络可以被因特网服务提供商和公司通过因特网使用。

1.先看看你的主机是否支持pptp,返回结果为yes就表示通过

modprobe ppp-compress-18 && echo yes

2.是否开启了TUN

有的虚拟机主机需要开启,返回结果为cat: /dev/net/tun: File descriptor in bad state。就表示通过。

cat /dev/net/tun

3.更新一下再安装

yum install update
yum update -y

4.安装EPEL源

yum install -y epel-release

5.安装xl2tpd和libreswan

yum install -y xl2tpd libreswan lsof

6.编辑xl2tpd配置文件

vim /etc/xl2tpd/xl2tpd.conf

修改内容如下:

[global]
[lns default]
ip range = 172.100.1.100-172.100.1.150   #分配给客户端的地址池local ip = 172.100.1.1
require chap = yes
refuse pap = yes
require authentication = yes
name = Linux科学server
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes

7.编辑pppoptfile文件

vim /etc/ppp/options.xl2tpd

修改内容如下:

ipcp-accept-local
ipcp-accept-remote
ms-dns  8.8.8.8
ms-dns 209.244.0.3
ms-dns 208.67.222.222
name xl2tpd
#noccp
auth
crtscts
idle 1800
mtu 1410         #第一次配置不建议设置mtu,mru,否则可能789错误
mru 1410
nodefaultroute
debug
lock
proxyarp
connect-delay 5000
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
persist
logfile /var/log/xl2tpd.log

8.编辑ipsec配置文件

vim /etc/ipsec.conf
config setup
       protostack=netkey
       dumpdir=/var/run/pluto/
       virtual_private=%v4:10.0.0.0/8,%v4:172.100.0.0/12,%v4:25.0.0.0/8,%v4:100.64.0.0/10,%v6:fd00::/8,%v6:fe80::/10
       include /etc/ipsec.d/*.conf

9.编辑include的conn文件

vim /etc/ipsec.d/l2tp-ipsec.conf

修改内容如下:

conn L2TP-PSK-NAT
   rightsubnet=0.0.0.0/0
   dpddelay=10
   dpdtimeout=20
   dpdaction=clear
   forceencaps=yes
   also=L2TP-PSK-noNAT
conn L2TP-PSK-noNAT
   authby=secret
   pfs=no
   auto=add
   keyingtries=3
   rekey=no
   ikelifetime=8h
   keylife=1h
   type=transport
   left=192.168.0.17   #service/VPS的外网地址,某些vps只有eth0一块网卡的,
                       #就填内网地址,内核开启nat转发就可以了,
                       #CentOS7以下的用iptables定义转发规则
   leftprotoport=17/1701
   right=%any
   rightprotoport=17/%any

10.设置用户名密码

vim /etc/ppp/chap-secrets

修改内容:

科学user * pass *
说明:用户名[空格]service[空格]密码[空格]指定IP

11.设置PSK

vim /etc/ipsec.d/default.secrets
: PSK "test科学"

12.CentOS7防火墙设置

firewall-cmd --permanent --add-service=ipsec
firewall-cmd --permanent --add-port=1701/udp
firewall-cmd --permanent --add-port=4500/udp
firewall-cmd --permanent --add-masquerade
firewall-cmd --reload

13.IP_FORWARD 设置

vim /etc/sysctl.d/60-sysctl_ipsec.conf
net.ipv4.ip_forward = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.eth0.accept_redirects = 0
net.ipv4.conf.eth0.rp_filter = 0
net.ipv4.conf.eth0.send_redirects = 0
net.ipv4.conf.eth1.accept_redirects = 0
net.ipv4.conf.eth1.rp_filter = 0
net.ipv4.conf.eth1.send_redirects = 0
net.ipv4.conf.eth2.accept_redirects = 0
net.ipv4.conf.eth2.rp_filter = 0
net.ipv4.conf.eth2.send_redirects = 0
net.ipv4.conf.ip_vti0.accept_redirects = 0
net.ipv4.conf.ip_vti0.rp_filter = 0
net.ipv4.conf.ip_vti0.send_redirects = 0
net.ipv4.conf.lo.accept_redirects = 0
net.ipv4.conf.lo.rp_filter = 0
net.ipv4.conf.lo.send_redirects = 0
net.ipv4.conf.ppp0.accept_redirects = 0
net.ipv4.conf.ppp0.rp_filter = 0
net.ipv4.conf.ppp0.send_redirects = 0

重启生效

systemctl restart network

13.ipsec启动&检查

systemctl enable ipsec
systemctl restart ipsec

检查:ipsec verify

正常输出:

Verifying installed system and configuration files

Version check and ipsec on-path                         [OK]
Libreswan 3.15 (netkey) on 3.10.0-123.13.2.el7.x86_64
Checking for IPsec support in kernel                    [OK]
NETKEY: Testing XFRM related proc values
        ICMP default/send_redirects                    [OK]
        ICMP default/accept_redirects                  [OK]
        XFRM larval drop                               [OK]
Pluto ipsec.conf syntax                                 [OK]
Hardware random device                                  [N/A]
Two or more interfaces found, checking IP forwarding    [OK]
Checking rp_filter                                      [OK]
Checking that pluto is running                          [OK]
Pluto listening for IKE on udp 500                     [OK]
Pluto listening for IKE/NAT-T on udp 4500              [OK]
Pluto ipsec.secret syntax                              [OK]
Checking 'ip' command                                   [OK]
Checking 'iptables' command                             [OK]
Checking 'prelink' command does not interfere with FIPSChecking for obsolete ipsec.conf options             [OK]
Opportunistic Encryption                                [DISABLED]

14.xl2tpd启动

systemctl enable xl2tpd
systemctl restart xl2tpd

15.Windows连接

Windows连接,需要修改注册表键值(据说可以不用修改,但是我的不修改的话,一直789,log无显示)

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/221170.html<

(0)
管理的头像管理
上一篇2025-04-14 22:03
下一篇 2025-04-14 22:04

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注