介绍

PPTP,全称 Point-to-Point Tunneling Protocol(点对点隧道协议)是一种用于创建 虚拟专用网络(VPN) 的隧道协议。该协议主要用于在远程用户和企业专用网络之间通过公共互联网提供安全的加密连接。PPTP VPN 在传输数据前对其进行加密,以保护隐私。与其他加密 VPN 协议一样,它也可用于解除地理限制进行互联网审查。本文章适用于Ubuntu 24.04以下的版本(不包含Ubuntu 24.04)。

安装PPTP

apt install -y pptpd

编辑配置文件

编辑文件/etc/pptpd.conf ,添加以下内容

vim /etc/pptpd.conf

  • localip: VPN连通后服务器的IP

  • remoteip: 分给客户端的IP

编辑文件/etc/ppp/pptpd-options ,找到ms-dns配置项,修改DNS

vim /etc/ppp/pptpd-options

添加用户

编辑配置文件/etc/ppp/chap-secrets ,添加用户和密码

vim /etc/ppp/chap-secrets

  • client: 客户端登录用户名

  • server: 填写pptpd或者* 就行了

  • secret: 客户端登录的密码,明文形式

  • IP addresses: 客户端连接的IP,*代表所有都能连接

设置IP转发

编辑文件 /etc/sysctl.conf ,添加以下内容

net.ipv4.ip_forward=1

使设置生效

sysctl -p 

设置NAT转换

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

注意:

  • eth0改为自己的网卡

启动PPTP

将pptpd启动,并设置成开机自动开启

systemctl start pptpd
systemctl enable pptpd
systemctl status pptpd

连接PPTP

打开客户端的系统设置->网络和Internet->VPN->添加VPN

  • 连接名称:随便填写

  • 服务器名称或地址:服务器IP或域名

  • VPN类型:点对点隧道协议(PPTP)

  • 用户:配置文件中添加的

  • 密码:配置文件中添加的

可能遇到的问题

  1. 如果使用的是Ubuntu 24.04或是更高版本的Ubuntu将无法通过apt来安装了,因为pptpd软件包已经被从官方源中移除了。

  1. 如果日志中出现了: Cannot determine ethernet address for proxy ARP ,可能是网段设置或者是NAT转换设置出错,重新设置重启后即可。

  2. 如果日志中出现了: createHostSocket: Address already in use,说明端口被占用了,可以停止当前1723端口的进程,再重启即可。