在现代网络环境中,虚拟私人网络(VPN)已成为企业远程办公、个人隐私保护和跨地域访问资源的重要工具,对于Linux爱好者或运维人员而言,Ubuntu作为开源生态的代表操作系统,提供了强大的网络配置能力,本文将详细介绍如何在Ubuntu系统中搭建PPTP(点对点隧道协议)VPN服务,适用于中小型网络环境部署。
确保你的Ubuntu服务器已安装并更新至最新版本(推荐使用Ubuntu 20.04 LTS或22.04 LTS),登录服务器后,打开终端执行以下命令更新系统包列表:
sudo apt update
安装PPTP服务器所需的软件包——pptpd,该服务是Ubuntu官方仓库中的标准组件,可通过如下命令安装:
sudo apt install pptpd -y
安装完成后,需要编辑/etc/pptpd.conf配置文件来设置PPTP服务的基本参数,使用你喜欢的文本编辑器(如nano或vim)打开该文件:
sudo nano /etc/pptpd.conf
在此文件中添加以下内容(可根据实际需求调整):
localip 192.168.100.1
remoteip 192.168.100.100-200
localip指定服务器端IP地址(即PPTP服务器的内网IP),而remoteip定义客户端连接时分配的IP地址池范围(建议为私有网段且不与现有网络冲突)。
配置用户认证信息,编辑/etc/ppp/chap-secrets文件:
sudo nano /etc/ppp/chap-secrets
添加一行格式为:用户名 密码 协议 IP地址(可选)
testuser password123 * *
这表示允许用户testuser使用密码password123通过任意IP连接,注意:此方式仅适合测试环境;生产环境中应结合LDAP或RADIUS进行身份验证。
完成上述配置后,重启PPTP服务以使更改生效:
sudo systemctl restart pptpd sudo systemctl enable pptpd
为了使系统支持IP转发,需修改/etc/sysctl.conf:
sudo nano /etc/sysctl.conf
取消注释以下行:
net.ipv4.ip_forward=1
保存后执行:
sudo sysctl -p
配置iptables规则以允许PPTP流量通过(UDP端口1723 + GRE协议):
sudo iptables -A INPUT -p tcp --dport 1723 -j ACCEPT sudo iptables -A INPUT -p gre -j ACCEPT sudo iptables -A FORWARD -i ppp+ -o eth0 -j ACCEPT sudo iptables -A FORWARD -i eth0 -o ppp+ -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j MASQUERADE
若你使用的是UFW防火墙,则需额外启用相应规则。
至此,PPTP服务已在Ubuntu上成功部署,客户端(Windows、Android、iOS等)可使用PPTP协议连接到该服务器,并输入之前设置的用户名和密码即可建立安全隧道。
需要注意的是,PPTP因加密强度较弱(使用MPPE加密但易受攻击),现已不推荐用于高安全性场景,如需更安全的选择,请考虑OpenVPN或WireGuard替代方案,但在局域网内快速部署临时通道或教学演示中,PPTP依然是一个简单有效的选择。

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

