有时,我们需要下载一些国外网站上的东西,如果用国内网络直接下载的话,往往是连接不上的。或者有时下载一个东西速度很慢,这都是因为国内网络限制的问题,大大影响了我们的工作效率。解决方法就是使用代理了。而一般代理都是直接对浏览器起作用,如果我们要在ubuntu终端上用命令行下载一些东西该怎么办呢?一种方法是,下载的东西是通过网页链接的,那么你可以开启代理后复制链接直接在浏览器上下载;另一种就是更通用也更方便的,使终端也走代理(win10下给powershell设置全局代理可以参考这篇文章)。下面介绍一下使用proxychains让ubuntu终端走代理的方法。
首先,打开任意一个终端,输入以下命令,下载安装proxychains
sudo apt-get install proxychains
一般很快就可以安装完毕了。好了以后,就需要配置一下代理。proxychains 的配置文件在 /etc/proxychains.conf。你可以直接打开etc文件夹然后找到这个文件并打开进行配置,也可以直接在终端输入以下命令,使用im来编辑这个配置文件,两种方法是一样的。
sudo vim /etc/proxychains.conf
打开这个conf文件后,下拉到末尾,然后将[ProxyList]下面的socks4那行改为:
socks5 127.0.0.1 xxxx
其中xxxx
填你的SOCKS5代理端口号(注意不是HTTP的端口号,也不是PAC的端口号)。如下图所示:
然后就完成了,就是这么简单。后面在使用的时候,只需要在命令前面加上
proxychains
就可以了。比如:
proxychains git clone https://xxxx
sudo proxychains apt-get update
为了验证有没设置成功,可以在打开代理后,在终端输入如下命令:
proxychains curl cip.cc
其中,上面是没开代理时的输出结果,下面是开了代理后的输出结果。地址已经从中国转到日本了,表明代理设置成功了。
从上面proxychains的使用方法可以看出,只有在命令前面加了proxychains后才走代理,而没加的话是不会走代理了。所以这也算proxychains的一个优点,只对指定的命令开启代理。