+135 410 16684Mon. - Fri. 10:00-22:00

AWS EC2 架Ubuntu 14.04 LTS 搭建 VPN

AWS EC2 架Ubuntu 14.04 LTS 搭建 VPN

AWS EC2 架Ubuntu 14.04 LTS 搭建 VPN

    最近有朋友说看到http://aws.amazon.com上的EC2主机免费体验一年(12个月)的广告,没有忍住诱惑,且又有一张VISA卡,小手一抖,美国主机入手,后察之有坑(虽然验证个人信息有效性的时候扣除了1美刀的费用,但是,你以为这就可以了么?他是送包年,But,超出赠送配合部分的流量计费,CPU使用率计费,磁盘I/O计费。如何申请,请移步上面的链接,并准备好一张VISA卡用于扣费!)

准备工作:

1.一台安装有Ubuntu的主机我的是AWS EC2 Ubuntu 14.04;

2.配置好各种防火墙,硬件,软件,所有非VPS能控制的1723(PPTP),22(SSH)端口。

开始工作:

  1. 安装VPN软件:sudo apt-get install pptpd;
  2. 编辑内网IP配置: sudo nano /etc/pptpd.conf;
  3.  解开配置文件的末尾的 #localip #remoteip两行的开关(有两套IP,看个人喜好,开哪个自定);
  4. control+o(保存),control+x(退出)。
  5. 编辑选项文件:sudo nano /etc/ppp/pptpd-options;
  6. 解开选项文件中的#ms-dns的开关(默认是内网IP,看个人喜好修改,我是修改成了8.8.8.8,4.4.4.4);
  7. control+o(保存),control+x(退出)。
  8. 编辑账户文件,添加用户:sudo nano /etc/ppp/chap-secrets;
  9. 增加或修改用户信息,规则是:用户名,服务器,密码,授权IP地址(例如:user pptpd password *);
  10. control+o(保存),control+x(退出)。
  11.  重启pptpd:sudo /etc/init.d/pptpd restart

以上pptpd的配置就完成了,但是,还需要配置一下ipv4.ip_forward

  1. 输入:sudo nano /etc/sysctl.conf
  2. 解开#net.ipv4ip_forward=1的开关
  3. control+o(保存),control+x(退出)。
  4. 输入:sudo sysctl -p

开系统防火墙iptables,允许VPN:

  1. 这里默认有iptables,查看规则:sudo iptables -L -nv;
  2. 看看现在服务器有哪些规则,不要把服务器搞死,千万要记得要有SSH的防火墙规则,这很重要;
  3. 添加防火墙规则:sudo iptables -A INPUT -p tcp -i eth0 –dport ssh -j ACCEPT
  4. 添加防火墙规则:sudo iptables -A INPUT -p tcp -i eth0 –dport 1723 -j ACCEPT
  5. 添加NAT规则:sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE(192.168.0.0视第一部分分配的IP地址段自行修改);
  6. 启动防火墙:modprobe ip_tables。

不会配置AWS,特奉上如何开AWS的端口吧:

  1. 登陆AWS管理后台:https://console.aws.amazon.com/console/home?nc2=h_m_mc
  2. 在创建主机实例的时候(Launcher Instances),有一部是选择安全组(Security Group),这里可以通过添加自定义规则(Add Rule)进行添加,如果没有添加,则进行下面的操作。
  3. 登陆后选择Dashboard左边竖栏菜单中的“Security Groups“:
  4. 选择你主机实例(instances)的安全组(Security Group),并且右击,选择编辑规则(Edit inbound rules);
  5. 添加规则”Add Rule“,根据请款选择Type,如果是自定义则选择”Custom X X“,填写Port Range,Source,根据自己情况而定,我选择的是Anywhere;

AWS EC2 使用体验与速度都是可以接受的,但是有一点要非常注意,选择Instances镜像的时候一定要选择Free  Tier Only的主机,要不然是要扣费的,同时,你可以建立多台实例,但,免费的出站流量只有15G/月,其他的规则都在这里:http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-free-tier.html 不想多花钱的一定要看仔细了。

关于如何进行远程控制:

这里不过多赘述关于SSH的知识,Win下用xshell使用pem文件登陆没有问题;

但是Mac下无论使用ssh -i hostpem user@host 还是 ssh userhost 都无法登陆,提示权限问题(Permission denied)。这里不细究原因,mac需要使用(怀疑Linux平台也一样)工具登陆,Termatinal无法登陆。工具,我使用的是 SecureCRT for mac