CentOS 7.2 系统下搭建 IPsec/L2TP VPN 服务的完整指南
在企业网络和远程办公场景中,虚拟私人网络(VPN)是保障数据传输安全的重要手段,对于运行 CentOS 7.2 的服务器,我们可以利用 openswan(IPsec)与 xl2tpd(L2TP)结合的方式搭建一个稳定、兼容性良好的 IPsec/L2TP 虚拟专用网络服务,本文将详细介绍如何在 CentOS 7.2 上配置并部署这一组合,实现多平台客户端(如 Windows、iOS、Android)的安全接入。
第一步:准备工作
确保你的 CentOS 7.2 服务器具备公网 IP 地址,并已安装基础工具包,登录系统后执行以下命令更新系统并安装必要组件:
sudo yum update -y sudo yum install -y openswan xl2tpd iptables-services
第二步:配置 IPsec(openswan)
编辑 /etc/ipsec.conf 文件,定义主配置段和连接规则:
protostack=netkey
plutodebug=all
nat_traversal=yes
virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12
conn L2TP-PSK-NAT
right=%any
left=YOUR_PUBLIC_IP
leftid=@your.domain.com
rightsubnet=vhost:%priv
also=L2TP-PSK-noNAT
conn L2TP-PSK-noNAT
authby=secret
pfs=yes
type=transport
keylife=1h
rekey=no
dpddelay=30
dpdtimeout=120
dpdaction=clear
auto=add
leftprotoport=17/1701
rightprotoport=17/1701
接着配置预共享密钥(PSK),编辑 /etc/ipsec.secrets:
YOUR_PUBLIC_IP %any : PSK "your_strong_pre_shared_key"
第三步:配置 L2TP(xl2tpd)
创建 /etc/xl2tpd/xl2tpd.conf:
[global] listen-addr = YOUR_PUBLIC_IP ip range = 192.168.100.100-192.168.100.200 local ip = 192.168.100.1 require chap = yes refuse pap = yes debug tunnel = yes debug avp = yes debug network = yes [lns default] ip range = 192.168.100.100-192.168.100.200 local ip = 192.168.100.1 require chap = yes refuse pap = yes require authentication = yes name = l2tp-server ppp debug = yes pppoptfile = /etc/ppp/options.xl2tpd length bit = yes
第四步:设置 PPP 用户认证
创建 /etc/ppp/options.xl2tpd:
noauth
require-mschap-v2
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
lock
ncomp
lcp-echo-interval 30
lcp-echo-failure 4
添加用户账号到 /etc/ppp/chap-secrets:
username * password *
第五步:启用服务与防火墙规则
启动并启用服务:
sudo systemctl enable ipsec xl2tpd sudo systemctl start ipsec xl2tpd sudo systemctl restart ipsec
配置防火墙(iptables)开放关键端口:
sudo iptables -A INPUT -p udp --dport 500 -j ACCEPT sudo iptables -A INPUT -p udp --dport 4500 -j ACCEPT sudo iptables -A INPUT -p udp --dport 1701 -j ACCEPT sudo iptables -A FORWARD -p tcp -m state --state NEW -j ACCEPT sudo service iptables save
开启内核转发:
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
完成上述步骤后,客户端可通过 L2TP/IPsec 连接,输入服务器公网 IP 和用户名密码即可建立安全隧道,此方案支持多种操作系统,适合中小型企业或个人用户构建私有网络通道,建议定期更新密钥、监控日志、设置访问控制列表以增强安全性。

VPN加速器|半仙VPN加速器-免费VPN梯子首选半仙VPN






