在 VMware Player虚拟机中Ubuntu系统的上网代理配置 一文中,介绍了在environment等系统配置文件中设置网络代理的方法。本文将介绍一种更为简便的网络代理设置方法,那就是使用ProxyChains。
1 ProxyChains介绍
ProxyChains遵循GNU协议的一款适用于linux系统的网络代理设置工具。强制由任一程序发起的TCP连接请求必须通过诸如TOR 或 SOCKS4, SOCKS5 或HTTP(S) 代理。支持的认证方式包括:SOCKS4/5的用户/密码认证,HTTP的基本认证。允许TCP和DNS通过代理隧道,并且可配置多个代理。
2 ProxyChains的适用场景
在以下几种场合,你可以考虑使用ProxyChains:需要通过代理上网,或者需要突破诸如设置了端口限制的防火墙;或者要使用telnet,ssh,wget,vnc,apt,ftp,nmap等应用;事实上,甚至可以通过ProxyChains设置反向代理来让你能够从外部访问你的内部局域网。突破防火墙限制访问互联网。
3 ProxyChains的一些特色功能
①支持不同的代理选择策略: 随机(代理列表内),顺序,动态顺序 (智能排除无用的代理)
②可以与任意程序结合使用,甚至网络扫描。通过代理或代理链可以实现端口扫描。例如使用Nmap scanner (www.insecire.org/nmap)通过代 理可以查找web服务器。 proxychains nmap -sT -PO -p 80 -iR
③通过可调的超时设定,支持真正的长代理链。
4 ProxyChains的安装
下载链接:proxychains-ng-4.12.tar.xz 或者 proxychains-3.1.tar.gz
安装过程比较简单,但是需要你已经安装了C的编译器(如gcc):
① ./configure --prefix=/usr --sysconfdir=/etc
② make
③ sudo make install
④ sudo make install-config (安装proxychains.conf)
5 ProxyChains的配置
proxychains会按如下顺序查找配置文件:
1) ./proxychains.conf 2) $(HOME)/.proxychains/proxychains.conf 3) /etc/proxychains.conf
这里我们只是使用它的网络代理功能,只对代理服务器的设定做些修改。
vi /etc/proxychains.conf
找到 [ProxyList],在其后面追加如下如下的代理服务器配置信息:
YourProxyIP port username password 其中各个字段之间用空格或者tab分割开,如下图。
6 ProxyChains的使用
只要上一步代理服务器的信息设置正确,在Ubuntu里就可以通过代理上网了。使用起来也很简单,格式为:proxychains4 命令 参数,以Ubuntu软件的更新命令 apt-get update 为例,说明如下:
上图中执行sudo apt-get update 命令,提示网路连接障碍,更新失败。
上图中执行sudo proxychains4 apt-get update 命令,提示网络连接成功,更新成功。
7 小结
至此,Ubuntu系统中使用ProxyChains设置网络代理就介绍完了,对ProxyChains的使用感兴趣的同学,还可以试一试 代理服务器链,长代理,反向代理等强大的功能。因为SS被禁了,不然,SS+ProxyChains可是FQ的标准配置。另外还有两款强大的代理设置软件向大家推荐一下:Privoxy,tsocks