在装有Ubuntu的VPS上搭建VPN服务

以Ubuntu 14.04 LTS为例

安装pptpd

apt-get install pptpd

修改配置文件

vi /etc/pptpd.conf
# 找到最下面,修改ip:
localip [server ip]
remoteip 10.100.0.2-10

指定DNS服务器

vi /etc/ppp/pptpd-options
# 修改以下部分为google的dns:
ms-dns 8.8.8.8
ms-dns 8.8.4.4

添加用户名和密码

vi /etc/ppp/chap-secrets
# 添加一行,依次为:    用户名        服务        密码        限制ip
                user-name    pptpd    user-pwd    *
# 这里服务要默认固定填写pptpd,ip无限制的话填写 *
# 重启服务:
/etc/init.d/pptpd restart

设置转发规则

vi /etc/sysctl.conf
# 去掉文件中这一行的注释:
net.ipv4.ip_forward=1
# 使其立刻生效:
sysctl -p
# 安装iptables:
apt-get install iptables
# 建立一个NAT穿透项:
iptables -t nat -A POSTROUTING -s 10.100.0.0/24 -o eth0 -j MASQUERADE
# 将规则保存,使重启后规则不失效:
iptables-save > /etc/iptables-rules
# 编辑网卡文件,加载网卡时自动加载规则
vi /etc/network/interfaces
# 末尾加入:
pre-up iptables-restore < /etc/iptables-rules

至此,VPN已经搭建完毕了。