- 作者:
- 分类:知识&开发->OS->Linux基本
- 阅读:3454
- 点赞:8
- 版权:CC BY-SA 4.0
- 创建:2020-04-28
- 更新:2024-11-26
使用 proxychains 或者 polipo 在终端使用代理
版权声明:本文为 neucrack 的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接(持续更新):https://neucrack.com/p/275
原文链接(持续更新):https://neucrack.com/p/275
使用proxychains4对任意一条命令指定使用代理
- 从系统的包管理器安装 proxychains4, 如果没有就去github搜索仓库按照说明安装
- 然后编辑
/etc/proxychains.conf
, 设置代理的地址,比如socks5 127.0.0.1 1080
- 然后使用
proxychains4 curl --user-agent 'Chrome/54.0 (Windows NT 10.0)' https://ip.cn
来查看是否成功
小技巧:添加别名
编辑~/.bashrc
(zsh则是~/.zshrc
), 添加
alias pro=proxychains4
然后重启终端生效
就可以使用pro 命令
来使用了
使用 polipo 启动http代理服务,通过设置终端全局代理变量来进行全局代理
proxychains 确实好用,但是有些软件无法成功使用,比如 Manjaro 中的 yay
命令无法使用,用 polipo 则可以流畅使用~
- 包管理器安装 polipo, 如果包管理没有, 去这里用源码编译安装, 在目录下
INSTALL
文件中有编译步骤 - 设置
config.sample 也可以在这里获得。sudo cp /etc/polipo/config.sample /etc/polipo/config
sudo vim /etc/polipo/config
然后修改
proxyAddress = "0.0.0.0"
# allowedClients = 127.0.0.1
socksParentProxy = "127.0.0.1:1080"
socksProxyType = socks5
- 重启服务
这会在8123端口开一个代理sudo systemctl restart polipo
如果是自己编译的也可以直接执行可执行文件
(./polipo &)
也可以手动指定配置文件./polipo -c /etc/polipo/config
- 设置终端全局代理变量
这里直接设置一个别名方便以后使用
编辑~/.bashrc
(zsh则是~/.zshrc
), 添加
重启终端或者alias proon='export http_proxy=http://127.0.0.1:8123 https_proxy=http://127.0.0.1:8123'
alias prooff='unset http_proxy https_proxy'
source .zshrc
生效
需要开启全局代理执行proon
,用完了关闭使用prooff
即可
设置环境变量后用wget https://www.google.com/
测试一下,分别proon
和 prooff
会发现开机全局代理后可以下载,关闭后无法下载。
- 开机自启
sudo systemctl enable polipo.service
禁用开机自启
sudo systemctl enable polipo.service
自己编译的话可以自己加启动脚本或者加服务脚本。
特殊软件设置代理
一般来说使用 proxychains4 和 http_proxy https_proxy 变量就可以,某些特殊的软件可能不会走这两种方式的代理。
比如:
- apt: apt 需要设置
/etc/apt/apt.conf
,比如编辑文件/etc/apt/apt.conf.d/80proxy
设置Acquire::http::Proxy "http://127.0.0.1:8123";
Acquire::https::Proxy "http://127.0.0.1:8123";
- docker: 使用 systemd 的代理设置,参考docker 代理设置一文