CentOS 7 L2TP/IPSec VPN 部署文档
环境准备
操作系统:CentOS 7
目标:部署 L2TP/IPSec VPN,支持加密连接
需求:
分配 VPN 客户端 IP 段:
192.168.10.0/24
使用共享密钥(PSK)进行 IPSec 加密
DNS 服务器:
114.114.114.114
和114.114.115.115
1. 安装必要的软件包
首先安装 L2TP 和 IPSec 所需的软件包:
yum install -y epel-release yum install -y xl2tpd strongswan
2. 配置 IPSec
编辑 IPSec 配置文件:
vim /etc/strongswan/ipsec.conf
添加以下内容:
config setup charondebug="ike 2, knl 2, net 2, dmn 2, mgr 2" conn L2TP-IKEV2 keyexchange=ikev1 authby=secret pfs=no dpdaction=clear dpddelay=30s rekey=no left=%any leftprotoport=17/1701 right=%any rightprotoport=17/%any rightdns=114.114.114.114,114.114.115.115 rightsourceip=192.168.10.2-192.168.10.254 auto=add OR: config setup charondebug="ike 2, knl 2, net 2, dmn 2, mgr 2" conn L2TP-IKEV2 keyexchange=ikev1 authby=secret pfs=no left=YOUR_SERVER_IP leftprotoport=17/1701 right=%any rightprotoport=17/%any auto=add
配置共享密钥:
编辑 /etc/strongswan/ipsec.secrets
文件:
vim /etc/strongswan/ipsec.secrets
添加以下内容:
: PSK "your_pre_shared_key"
将
your_pre_shared_key
替换为你的共享密钥。
3. 配置 L2TP
编辑 L2TP 配置文件:
vim /etc/xl2tpd/xl2tpd.conf
添加以下内容:
[global] ipsec saref = yes [lns default] ip range = 192.168.10.2-192.168.10.254 local ip = 192.168.10.1 pppoptfile = /etc/ppp/options.xl2tpd length bit = yes
配置 PPP 选项:
编辑 /etc/ppp/options.xl2tpd
文件:
vim /etc/ppp/options.xl2tpd
确保文件包含以下内容:
require-mschap-v2 refuse-eap refuse-pap refuse-chap refuse-mschap ms-dns 114.114.114.114 ms-dns 114.114.115.115 asyncmap 0 auth crtscts lock hide-password modem debug name xl2tpd proxyarp lcp-echo-failure 4 lcp-echo-interval 30
添加用户账号:
编辑 /etc/ppp/chap-secrets
文件:
vim /etc/ppp/chap-secrets
格式如下:
# client server secret IP addresses username * password *
4. 启用 IP 转发
编辑 /etc/sysctl.conf
文件:
vim /etc/sysctl.conf
添加以下内容:
net.ipv4.ip_forward = 1
然后应用更改:
sysctl -p
5. 配置防火墙
如果使用 FirewallD:
firewall-cmd --permanent --add-port=500/udp firewall-cmd --permanent --add-port=4500/udp firewall-cmd --permanent --add-port=1701/udp firewall-cmd --permanent --add-masquerade firewall-cmd --reload
如果使用 iptables:
iptables -A INPUT -p udp --dport 500 -j ACCEPT iptables -A INPUT -p udp --dport 4500 -j ACCEPT iptables -A INPUT -p udp --dport 1701 -j ACCEPT iptables -A FORWARD -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables-save > /etc/sysconfig/iptables
注意:将
eth0
替换为你的实际网络接口名称。
6. 启动服务
启动并设置服务为开机自启:
systemctl start strongswan systemctl enable strongswan systemctl start xl2tpd systemctl enable xl2tpd
7. 验证连接
在客户端设备上,配置 L2TP/IPSec VPN。
使用配置的用户名、密码和共享密钥进行连接。
如果连接失败,请查看以下日志文件以排查问题:
IPSec 日志:
/var/log/secure
L2TP 日志:
/var/log/messages
8. 常见问题
连接失败,显示 "连接被终止"
确保 IP 转发已启用。
检查防火墙是否正确配置。
验证
chap-secrets
文件中的用户名和密码是否正确。
DNS 解析失败
确保在
/etc/ppp/options.xl2tpd
中配置了有效的 DNS 服务器(如114.114.114.114
)。
附录
配置文件路径参考
IPSec 配置文件:
/etc/strongswan/ipsec.conf
IPSec 共享密钥:
/etc/strongswan/ipsec.secrets
L2TP 配置文件:
/etc/xl2tpd/xl2tpd.conf
PPP 选项:
/etc/ppp/options.xl2tpd
用户认证:
/etc/ppp/chap-secrets
通过这份文档,你可以完成 L2TP/IPSec VPN 的部署和基本调试。如果有进一步需求或问题,请随时联系我!
已有10位网友发表了看法:
发表评论