本文介绍如何在Amazon ec2的Instance中建立vpn服务,我的Instance是Amazon Linux AMI的64位系统。本文是基于你已经有一个AWS账号并运行了Instance并已经会用SSH远程登陆进去运行命令。如果前面步骤有疑问请自行google。
我是在前人的基础上实现的,参考文章是:
Amazon EC2上一键安装配置PPTP VPN服务
Automaticlly install pptpd on Amazon EC2 Amazon Linux
毕竟是2010年的文章,按照步骤做了一次,毫无疑问是失败的。
显示错误提示如下:
1 | error: open of ../rpmbuild/RPMS/i386/pptpd-1.3.4-1.amzn1.i386.rpm failed: No such file or directory |
看了文章后面的评论发现问题在于64位要使用不同的RPM,但是还是出现上一行的error: File not found by globe的提示,我就觉得应该是运行脚步路径出了问题。打开脚步文件,发现运行完rpmbuild --rebuild pptpd-1.3.4-1.amzn1.src.rpm
,终端的路径会进入
1 | + cd /root/rpmbuild/BUILD |
这当然不能运行rpm -i ../rpmbuild/RPMS/i386/pptpd-1.3.4-1.*.i386.rpm
而且路径错了,文件名也错了,应该改为rpm -i ~/rpmbuild/RPMS/x86_64/pptpd-1.3.4-1.amzn1.x86_64.rpm
但是运行上一行的命令是可以找到文件,不过还提示warning: /etc/pptpd.conf created as /etc/pptpd.conf.rpmnew
所以脚本文件要加一行cp /etc/pptpd.conf.rpmnew /etc/pptpd.conf
这是分割线,如果你比较懒,以上的全部都是废话,配置VPN只需要两行命令,以下是我已经修改好的脚本。 进入EC2系统终端后,输入下面的代码:
1 | wget https://raw.github.com/kesuki/Amazon-linux-ami/master/pptpd.sh |
然后安装配置完成后会高亮提示vpn用户名和密码,如果出现以下两个OK,表明你已经成功了:
1 | iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] |
搞定,收工。