提醒:本文最后更新于2022-07-11 23:58,文中所关联的信息可能已发生改变,请知悉!
linux下代理一般是通过http_proxy和https_proxy这两个环境变量。在不使用xx的前提下,linux无法实现所有流量的真全局代理。但是可以用proxychains-ng为程序指定走代理,让无法访问GitHub的机器可以从GitHub上下载文件。解决部分国内vps无法访问GitHub。
主要有以下功能:
- 支持http/https/socks4/socks5
- 支持认证
- 远端dns查询
- 多种代理模式
缺点:
- 不支持udp/icmp转发
- 少部分程序和在后台运行的可能无法代理
一 、下载安装源码
git clone https://github.com/rofl0r/proxychains-ng
(或自行从GitHub上下载release版本,然后使用rz命令上传到vps,解压之后进行编译)
二 、编译源码
yum install gcc -y
cd proxychains-ng
./configure --prefix=/usr --sysconfdir=/etc
make
make install
make install-config
cd .. && rm -rf proxychains-ng
三、配置proxychains-ng的配置
proxychains的配置文件位于 /etc/proxychains.conf ,打开文件拉到最后的位置,编辑proxylist下方的位置,填上你的代理后保存。如下所示(切不可照搬,无法使用):
[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
socks5 11.69.118.216 21x
socks5 127.0.0.1 1080
socks4 127.0.0.1 1081
http 127.0.0.1 3128
...
四、 测试和使用
proxychains4 curl ip.sb (结果应返回你的代理IP,则代理有效)
使用方法:
proxychains4 + 命令
如: proxychains4 wget xxxxx
设置一个代理的shell ,省去每次需要打上proxychains4前缀
可以用proxychains4代理一个shell,在shell中执行的命令就会自动使用代理了,例如:
proxychains4 -q /bin/bash
正文完