昨天写了通过http代理连接ssh,那么反过来呢,用ssh来作代理,至于作用嘛。。。不用多讲,国内的兄弟都知道,什么?你不知道?那你一定没听过gfw。。。
1. 先找一个提供ssh的服务器,国外的很多主机商都会提供ssh账户,比如dreamhost
2. 从本地连接服务器:
ssh -D port user@server
user和server就是ssh的服务器和用户名,port可以自己随便挑一个,比如8080,3128之类的常用的代理端口
3. 在浏览器里设置代理服务器地址为 127.0.0.1,端口号就是刚才选的那个,注意代理服务器类型是socks5不是http
ok,大功告成
今天着实让我很惊讶,ssh居然不能直接设置代理服务器,而必须通过tunnel(或者就是我太挫,没找到其他办法)
1. 找个Tunnel,比如corkscrew(下载地址) ,然后解开tar包,编译安装
./configuremake && make install
2. 设置ssh,编辑ssh配置文件,/etc/ssh/ssh_config
vi /etc/ssh/ssh_config
然后加入
Host *
ProxyCommand corkscrew proxy_server proxy_port %h %p
如果需要验证文件的话,还要在后面加入验证文件,如下
ProxyCommand corkscrew proxy_server proxy_port %h %p authfile
ok,现在可以直接ssh了
ssh username@server