检查系统是否支持 PPP
1、检查/dev/ppp
:
cat /dev/ppp
如果提示“No such file or address”或“Permission denied”等其他提示,则说明 PPP 服务已开启,可以继续进行后续配置。
安装必要的软件包
1、更新 Yum 源:
sudo yum update y
2、安装 PPP 和 PPTP 组件:
sudo yum install ppp pptpd iptables y
配置内核参数以支持转发
编辑/etc/sysctl.conf
文件,添加或修改以下内容:
net.ipv4.ip_forward = 1
然后执行以下命令使配置生效:
sudo sysctl p
编辑 PPTP 配置文件
1、编辑/etc/pptpd.conf
文件:
sudo vi /etc/pptpd.conf
添加或修改以下内容:
localip 172.100.127.1 remoteip 172.100.127.100120,172.100.127.245254
2、编辑/etc/ppp/options.pptpd
文件:
sudo vi /etc/ppp/options.pptpd
将msdns
设置为你的 DNS 服务器地址,
msdns 114.114.114.114 msdns 8.8.8.4
3、编辑/etc/ppp/chapsecrets
文件:
sudo vi /etc/ppp/chapsecrets
设置 VPN 用户和密码,
# Secrets for authentication using CHAP # client server secret IP addresses root * * <client_ip>
请根据实际需求替换<client_ip>
为客户端的实际 IP 地址。
防火墙配置及 NAT 转发设置
1、启动防火墙:
sudo systemctl start firewalld
2、启用 NAT 转发(必须启用此功能):
sudo firewallcmd permanent addmasquerade
3、开启 47 和 1723 端口:
sudo firewallcmd permanent zone=public addport=47/tcp sudo firewallcmd permanent zone=public addport=1723/tcp
4、设置防火墙规则:
sudo firewallcmd permanent direct passthrough ipv4 t filter I FORWARD i ppp+ o eth0 j ACCEPT sudo firewallcmd permanent direct passthrough ipv4 t filter I FORWARD i eth0 o ppp+ j ACCEPT sudo firewallcmd permanent direct passthrough ipv4 t filter I FORWARD i FORWARD o ppp+ j ACCEPT sudo firewallcmd permanent direct passthrough ipv4 t nat o POSTROUTE j MASQUERADE todestination <client_ip> sudo firewallcmd reload
请将<client_ip>
替换为你的实际客户端 IP 地址或网段。
启动并验证 PPTP 服务
1、启动 PPTP 服务:
sudo systemctl start pptpd
2、设置开机自启:
sudo systemctl enable pptpd
3、查看服务状态:
sudo systemctl status pptpd
至此,基于 CentOS 的 PPTP VPN 服务器已经搭建完成,你可以通过 Windows 或 Mac 等客户端连接到该 VPN 服务器进行测试。