使用EC2 + SSH 翻墙 - 小众知识

使用EC2 + SSH 翻墙

2013年01月27日 14:18:05 苏内容
  标签: EC2/SSH
阅读:7328

引言


 

突然想上facebook,上网找了半天代理,无果~

既然别人靠不住就靠自己了。

前一阵买了(1年免费)亚马逊的EC2,本来是想做blog的反向代理。没想着比我之前在zymic申请的虚拟主机速度还慢,就一直闲置。不过做SSH代理还是OK,慢点就慢点反正也就自己用。

OK,开始折腾。

第一步 自己爽


 

1.EC2的申请就不多写了。网上一堆资料。我之前参考的是这篇:http://blog.csdn.net/cutesource/article/details/7258291

2.EC2申请完,并能登陆到服务器了,你成功了一半。

3.开启代理,我的系统是linux。所以使用
nohup ssh -i xxx.pem ec2-user@ec2-***-***-***-***.compute-1.amazonaws.com

-N -o DynamicForward 1080 &

熟悉linux命令的同学应该知道:
1)nohup & 将代理挂在后台运行
2)红色字体部分,启动ssh连接到我们ec2服务器
3)蓝色部分表示,不直接登陆,打开本地1080端口,将数据流发送到直接发送到ec2让ec2代理请求。

4.配置浏览器

这应该是翻墙的基本工了。我用的是FIREFOX浏览器。

  • 在Firefox地址栏输入 about:config 

  • 有安全提示,点击继续;

  • 找到“network.proxy.socks_remote_dns”,双击改为True(默认False);

  • 可能需要重启Firefox。


2)Preference -> Advanced -> Network -> Settings, 选择手动代理设置,SOCKS Host 中输入 localhost, 端口号1080, SOCKS vs。OK 确认。浏览器配置完毕。

上图:



5.成功了

没错,到这里你应该成功了。

 

第二步 造福大众


 

俗话说:独乐乐不如众乐乐。

怎么把ssh分享给朋友呢?

方法1:如果你自己有买服务器。按第一步把服务器的1080端口打开。并把服务器的IP告诉朋友。OK了。

方法2:很显然一般人没有服务器。有服务器也不太好做这事。没关系!按照第一步给每个朋友的电脑搭起~不过就要把重要的pem证书分享了。。太不安全了。

方法3:新建ssh用户。不需要证书也能连接到ec2

1)登陆ec2.

2)新建用户firstuser:adduser firstuser

3)设置用户密码:passwd firstuser

4)修改服务器ssh配置

ec2默认配置必须用pem登陆。所以必须修改ssh配置才能实现真正意义上的增加用户。

配置文件地址 /etc/ssh/sshd_config
PubkeyAuthentication yes修改为no
AuthorizedKeysFile .ssh/authorized_keys前面加上#屏蔽掉,
PasswordAuthentication no修改为yes就可以了。

 

注意:

1.一定要先给默认用户(ec2_user)管理员(root)加上密码。默认ec2密码是空,如果不加上的话,ssh登陆时要求输入密码。将导致密码不正确无法登陆,instance就废了。

2.一定要确保测试正常再退出,如出现问题,退回到原始状态。不然很可能出现下次ec2_user就无法登陆的情况。
5)重启ssh服务:service sshd restart
6)开启本地代理端口
/usr/bin/ssh -2  -p 22  -l firstuser ec2-**-**-**-**.compute-1.amazonas.com  -N -o DynamicForward 1080

命令的含义参考第一步。

 

第三步 大公告成


 

好好体验监狱放风的感觉吧
扩展阅读