proxychains--完美的终端代理解决方案

来源:百度文库 编辑:神马文学网 时间:2024/04/28 18:10:48
最近这段时间需要在Linux下做开发,我的机子是通过一台windows机器上的CCProxy代理上网。可是在设置了系统代理以后,发现在终端下若要进行ftp或者ssh等操作,并不能使用代理(但是wget是可以的)。期间试过一些方法,比如在.bash_profile里面设置http_proxy等,都没有达到使用代理的效果。最后发现了一个很好用的代理客户端软件,它同时支持http代理和socks4与socks5代理。可以从http://proxychains.sourceforge.net/轻松下载到proxychains-3.*.tar.gz文件,目前最新版本是3.1版,它可以支持几乎所有程序的代理,包括ssh,telnet,ftp,cvs等,只要在命令前多输一个proxychains命令。
安装和配置也很简单,安装我就不多说了,它的配置文件是按照以下顺序寻找的:
1. ./proxychains.conf
2. $(HOME).,proxychains/proxychains.conf
3. /etc/proxychains.conf
找到该文件后,就可以在里面添加代理服务器列表:
可以选择三种代理方式:dynamic_chain, strict_chain, random_chain
第一种方式是动态的,它按照代理服务器在列表中出现的先后顺序(A,B,C,...)将这些代理服务器串成一条链,但是不要求链上每一台代理服务器都是在线的,至少有一台代理服务器在线即可;
第二种方式是严格的,它按照代理服务器在列表中出现的先后顺序(A,B,C,...)将这些代理服务器串成一条链,要求链上每一台代理服务器都是在线的;
第三种方式是随机的,链中的代理服务器的任何一台都可以成为所使用的代理服务器(链长有chain_len指定),这种方式很适合网络扫描操作(参数chain_len只对random_chain有效)。
给出使用random_chain的配置实例:
random_chain
chain_len=1
tcp_read_time_out 15000
tcp_connect_time_out 10000
[ProxyList]
http        ***.***.***.*** 808
socks5   ***.***.***.*** 1080
使用也非常方便:
如通过代理ssh:
# proxychains ssh abc.efg.com
通过代理telnet:
# proxychains telnet abc.efg.com
通过代理ftp:
# proxychains ftp
> ftp cd ..
cvs同样也可以。