Ubuntu 18.04 安装 PPTPD

首先要安装pptpd:

apt install pptpd

安装完之后再对pptpd进行一些设置,先对/etc/pptpd.conf进行设置主机IP和IP池

nano /etc/pptpd.conf

然后删除掉下面配置信息的注释并改成相应值:

#bcrelay eth1

#localip 192.168.0.1
#remoteip 192.168.0.234-238,192.168.0.245

如:

bcrelay eth0
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

第一个参数是VPN主机的IP,第二个参数是连入者的IP池。(建议修改)
更改完IP相关之后在修改DNS信息,在/etc/ppp/pptpd-options。

nano /etc/ppp/pptpd-options

国内的话一般选择114.114.114.114,国外的主机的话当然是8.8.8.8和8.8.4.4。
找到ms-dns配置项目,删除他的注释,并重写DNS,比如:

ms-dns 8.8.8.8
ms-dns 8.8.4.4
#OR
#223.5.5.5
#223.6.6.6.6

DNS根据自己的情况填写,我的第一个DNS服务器是校内网的DNS服务器。
最后就是添加、修改用户的信息了,用户的配置文件在/etc/ppp/chap-secrets,我们再修改这个文件:

nano /etc/ppp/chap-secrets

然后就看到了client(用户名)、server(服务器名 一般写)、secret(密码)、IP addresses(IP限制 一般写),根据情况写就好,如果没有要求的话就只写用户名和密码,其他全用*号代替,但要注意这几项之间需要用TAB分隔。

user pptpd paswd *

然后就可以重启pptd服务了。

/etc/init.d/pptpd restart

打开ipv4 forward,它在配置文件/etc/sysctl.conf中:

nano /etc/sysctl.conf

在其中找到下面配置信息,并删掉它的注释使其生效:

net.ipv4.ip_forward=1

然后使配置生效:

sysctl -p
/etc/init.d/procps restart

网上说这样就一般可以正常上网了,但是经过我的测试,这种“一般”然而并没有发生,但是VPN服务器的确是可以连接外网的,所以就有需要加一个NAT路由规则。
向 nat 表中加入一条规则:(2选1)

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 你的服务器的公网IP地址
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o 服务器的公网接口比如[eth0] -j MASQUERADE

其中有两个地方需要注意,一个是192.168.0.1那个部分,那个IP即是配置/etc/pptpd.conf信息的时候本机IP(配置文件localip后面带的ip)。第二个就是eth0:0,这个是VPN能连接外网的那个网卡,可以用ifconfig来查看连接外网的到底是哪个网卡。
查看服务是否启动:

netstat -anp | grep 'pptpd'

使pptpd服务自动启动

systemctl enable pptpd.service

ufw防火墙添加端口

ufw allow 1723/tcp

到此,一个VPN服务器配置到此完成。

参考:https://blog.csdn.net/suz_cheney/article/details/50513532