Ubuntu安装pptpd的VPN服务器
以ubuntu14.04为例
安装pptpd
apt-get install pptpd
修改pptpd配置
修改/etc/pptpd.conf文件,找到
#localip 192.168.0.1
#remoteip 192.168.0.234-238,192.168.0.245
这两行,去掉注释(前面的#),保存
修改/etc/ppp/pptpd-options,找到ms-dns选项,设置为google的dns
ms-dns 8.8.8.8
ms-dns 8.8.4.4
设置账号
修改/etc/ppp/chap-secrets文件,添加账号和密码,每一行的形式为:
theusername pptpd thepassword *
theusername为账号,thepassword为密码,pptpd是协议,*位置为远端IP*为任意的ip。可以添加多行
允许ipv4 forward
修改/etc/sysctl.conf文件,找到:
#net.ipv4.ip_forward=1
去掉注释(#号),保存
然后运行
sysctl -p
重启pptpd
service pptpd restart
此时pptpd已经可以通过账户密码连接,连接设备能够分配到一个192.168.0.234-238间的vpn-ip,但其网络请求还需要通过iptables转发到外网,vpn才有意义和效果。
添加iptables
先确定转发端口,通过ifconfig查看服务器的ip和对应的网络口名称,一般为eth0,不同的vps也有自定义的名称,如venet0等。
以eth0为例,设置iptable
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
即将192.168.0.*的请求通过nat的方式转发给eth0,并返回的结果送回192.168.0.*,从而实现vpn的效果。
重启计算机
注意,服务器重启后,iptables的设置也会清空,需要重新设置iptables转发。
或者通过别的方式自动在重启时恢复相应的iptables设置