如何在AWS EC2上设置VPN(PPTP)

如果你已经运行了一个AWS EC2实例,并且会使用SSH进行远程连接,那么请继续往下阅读。


我在EC2上安装的是Ubuntu 11.04版本,如果你使用的是Amazon Linux AMI,可以直接使用本文后面引用的“一键安装脚本”。

安装pptpd:

sudo apt-get -y install pptpd

添加用户名、密码:

sudo vi /etc/ppp/chap-secrets

接着编辑sysctl.conf,去掉net.ipv4.ip_forward=1这行的注释,以允许IPv4的转发:

sudo vi /etc/sysctl.conf

重新加载我们刚才修改过的配置:

sudo sysctl -p

修改pptpd.conf文件:

sudo vi /etc/pptpd.conf

添加local/remote的ip范围,在末尾处添加下面两行配置:

localip 192.168.240.1
remoteip 192.168.240.2-100

修改pptpd-options文件:

sudo vi /etc/ppp/pptpd-options

添加两条dns记录,防止被GFW污染:

ms-dns 8.8.8.8
ms-dns 8.8.8.4

接着添加nat映射和iptables的转发:

sudo iptables -A FORWARD -p tcp --syn -s 192.168.240.0/24 -j TCPMSS --set-mss 1356

最后启动/重启pptpd服务:

service pptpd start(或者service pptpd restart)

参考信息

附小广告一则:唱吧iOS团队诚招iOS工程师,推荐成功即奖励6000元现金或iPhone 6一部,详见这篇blog