背景

平常我们都是通过 Chrome 插件进行代理,走的协议也是 socks5,但脱离开 Chrome,就无能为力了,比如在 iTerm 中也需要访问一些项目或者库函数。

iTerm 自身支持设置代理,但用的都是 http 或 https ,不支持 socks5 协议。

方案

privoxy 工具能简单把 http 或 https 转到 socks5。

安装

因为使用 Mac,所以还是用 brew 较为简单。

brew install privoxy

配置

# vim /usr/local/etc/privoxy/config
# 监听一个端口,默认 8118
listen-address 127.0.0.1:8118
# 转发到 socks5 上(自身机器监听 1088 端口,请根据你自身机器决定)
forward-socks5 / 127.0.0.1:1080 .
forward 192.168.*.*/ .
forward 10.*.*.*/ .
forward 127.*.*.*/

启动服务

brew services start privoxy
# 成功会提示:
# ==> Successfully started `privoxy` (label: homebrew.mxcl.privoxy)

iTerm 配置代理

编辑 vim ~/.zshrc

export http_proxy=http://127.0.0.1:8118
export https_proxy=$http_proxy

最后,别忘了使 iTerm 生效。

source ~/.zshrc