用的是linode,基于Unbuntu 14.04LTS 64位,32位的没试过,装好系统后设置
\nPPTP:
\n一键脚本,亲测有效: https://github.com/viljoviitanen/setup-simple-pptp-vpn
\n安装pptpd
\napt-get update\napt-get install pptpd\n
编辑pptpd-options
\nvi /etc/ppp/pptpd-options\n
底部添加
\nnopcomp\nnoaccomp\n\nms-dns 8.8.8.8\nms-dns 8.8.4.4\n
编辑pptd.conf
\nvi /etc/pptpd.conf\n
底部添加
\nlocalip 192.168.17.1\nremoteip 192.168.17.2-200\n
编辑options
\nvi /etc/ppp/options\n
底部添加
\nms-dns 8.8.8.8\nms-dns 8.8.4.4\n
编辑
\nvi /etc/ppp/chap-secrets\n
添加用户
\ntest * test *\n
编辑
\nvi /etc/sysctl.conf\n
底部添加
\nnet.ipv4.ip_forward=1\nnet.ipv4.conf.all.accept_redirects = 0\nnet.ipv4.conf.all.send_redirects = 0\nnet.ipv4.tcp_syncookies = 1\n
执行
\nsysctl -p\n
编辑
\nvi /etc/rc.local\n
在exit 0前添加,$ip 替换为你的vps ip地址
\niptables -t nat -A POSTROUTING -j SNAT --to $ip\niptables -t nat -A POSTROUTING -s 192.168.17.0/24 -o eth0 -j MASQUERADE\nsysctl -p\n
命令行执行,$ip 替换为你的vps ip地址
\niptables -t nat -A POSTROUTING -j SNAT --to $ip\niptables -t nat -A POSTROUTING -s 192.168.17.0/24 -o eth0 -j MASQUERADE\niptables-save\n
执行
\nservice pptpd restart\n
L2TP:
\n安装相应软件
\napt-get install openswan xl2tpd ppp lsof\n
安装openswan时可能会弹出问题让你确认,一直回车就是.
\n编辑ipsec
\nvi /etc/ipsec.conf\n
注释掉oe=off
\n#oe=off\n
protostack设置为netkey
\nprotostack=netkey\n
底部添加,$ip 替换为你的vps ip地址
\nconn %default\n\tforceencaps=yes\n\nconn L2TP-PSK-NAT\n\trightsubnet=vhost:%no,%priv\n\talso=L2TP-PSK-noNAT\n\nconn L2TP-PSK-noNAT\n\tauthby=secret\n\tpfs=no\n\tauto=add\n\tkeyingtries=3\n\trekey=no\n\tikelifetime=8h\n\tkeylife=1h\n\ttype=transport\n\tleft=$ip\n\tleftprotoport=17/1701\n\tright=%any\n\trightprotoport=17/%any\n
编辑ipsec.secrets
\n\tvi /etc/ipsec.secrets\n
写入, $ip 替换为你的vps ip地址,test替换为你想设的密钥
\n$ip %any: PSK \"test\"\n
编辑xl2tpd.conf
\nvi /etc/xl2tpd/xl2tpd.conf\n
写入
\n[global]\n\t; listen-addr = 192.168.1.98\n\n[lns default]\n\tip range = 192.168.15.2-192.168.15.200\n\tlocal ip = 192.168.15.1\n\trequire chap = yes\n\trefuse pap = yes\n\trequire authentication = yes\n\tname = LinuxVPNserver\n\tppp debug = yes\n\tpppoptfile = /etc/ppp/options.xl2tpd\n\tlength bit = yes\n
执行
\ncp /usr/share/doc/xl2tpd/examples/ppp-options.xl2tpd \\\n\t/etc/ppp/options.xl2tpd\n
编辑
\nvi /etc/ppp/options.xl2tpd\n
把ms-dns替换为
\nms-dns 8.8.8.8\nms-dns 8.8.4.4\n
编辑rc.local
\nvi /etc/rc.local\n
在exit 0前添加
\nfor vpn in /proc/sys/net/ipv4/conf/*; do echo 0 > $vpn/accept_redirects; echo 0 > $vpn/send_redirects; done\n\tiptables -t nat -A POSTROUTING -s 192.168.15.0/24 -o eth0 -j MASQUERADE\n\tiptables --table nat --append POSTROUTING --jump MASQUERADE\n
执行
\nfor vpn in /proc/sys/net/ipv4/conf/*; do echo 0 > $vpn/accept_redirects; echo 0 > $vpn/send_redirects; done\niptables -t nat -A POSTROUTING -s 192.168.15.0/24 -o eth0 -j MASQUERADE\niptables --table nat --append POSTROUTING --jump MASQUERADE\n\niptables-save\n
执行
\nipsec verify\nservice xl2tpd restart\nservice ipsec restart\n