在Windows命令行、Linux终端使用代理
在之前的博文中分享了如何使用Google云计算引擎搭建SS服务器,如何使用SS客户端,已经满足了科学上网的基本需求。这次将要总结在Windows的 CMD
窗口和Linux的 LX终端
中,让 wget
curl
等命令使用代理需要进行的一些配置。
Windows命令行代理
假设你已经使用了SS客户端,本地socks5代理为127.0.0.1:1080
在CMD窗口输入如下指令设置代理:
set http_proxy=socks5://127.0.0.1:1080 set https_proxy=socks5://127.0.0.1:1080 set ftp_proxy=socks5://127.0.0.1:1080
测试 curl https://www.facebook.com
能得到返回结果。
取消代理命令:
set http_proxy= set https_proxy= set ftp_proxy=
*设置代理后只对当前命令行窗口生效,重新打开CDM需要再次设置。
Linux LX终端代理
由于Linux下SS客户端仅代理socks5协议的流量(如果不是这个原因恳请指正)。所以想在LX终端使用代理,需要在SS的socks5流量前再接一个代理,允许http、https、ftp协议流量通过。
我们也假定本地socks5代理为127.0.0.1:1080
安装polipo
Debian下直接使用apt命令安装:
sudo apt update sudo apt install polipo
编辑配置文件:
sudo nano /etc/polipo/config
配置内容如下
# This file only needs to list configuration variables that deviate # from the default values. See /usr/share/doc/polipo/examples/config.sample # and "polipo -v" for variables you can tweak and further information. logSyslog = true logFile = /var/log/polipo/polipo.log proxyAddress = "0.0.0.0" socksParentProxy = "127.0.0.1:1080" socksProxyType = socks5 chunkHighMark = 50331648 objectHighMark = 16384 dnsQueryIPv6 = no
按CTRL+X,Y保存退出。
重启polipo服务:
sudo service polipo restart
启用代理
通过 service polipo status
命令,我们可以看到新的监听端口为8123。
因此,LX终端启用代理的命令为:
export http_proxy=http://127.0.0.1:8123 export https_proxy=http://127.0.0.1:8123 export ftp_proxy=http://127.0.0.1:8123
同样,直接输入上述命令设置的代理也是临时的。一个比较实用的方法是在~/.bashrc文件中设置环境,之后就不需要再手动设置了。
sudo nano ~/.bashrc
在文件最后插入上述三条指令,保存。
测试 wget
指令:
小结
我对CMD/LX终端设置代理的出发点,是为了使用Google的一个API,设置后确实能够成功使用。另外似乎对 pip
等指令也有效果,安装python模块时的下载速度有比较明显的提升。不过说到底只是在总结如何使用别人做好的工具,很多原理还是没有明白,如果文中有何纰漏,恳请指正。
感谢你阅读文章!