Mac 终端通过 privoxy 科学上网

由于终端不支持 socks5 代理,使用 git、curl、brew、gem 等工具时速度特别慢。经过一番搜索,发现可以通过 privoxy 进行转发以达到终端 FQ 的目的。这里记录一下 privoxy 的安装和配置。

安装

通过 homebrew 安装:brew install privoxy

配置

通过 vim 编辑配置文件

1
vim /usr/local/etc/privoxy/config

加入以下两个配置项

1
2
3
4
5
# 设置 privoxy 监听任意 ip 的 8118 端口,改端口为 privoxy 的默认端口
listen-address 0.0.0.0:8118
# 设置转发到本地的 socks5 代理客户端端口
# shadowsocks 可通过“偏好设置->高级->本地 Socks5 监听端口”查看端口号。
forward-socks5 / localhost:1086 .

使用

启动

通过以下命令启动 privoxy

1
sudo /usr/local/sbin/privoxy /usr/local/etc/privoxy/config

如果是通过 Privoxy官网 下载安装包进行安装,还可以通过其提供的脚本文件启动

1
sudo /Applications/Privoxy/startPrivoxy.sh

查看是否成功启动

1
ps aux | grep privoxy

若成功启动可看到以下信息

privoxy_process

查看是否监听端口

1
netstat -na | grep 8118

以下信息表示正在监听

network_listen_status

转发

启动之后并不会直接转发网络请求,还需要通过以下命令开启或关闭:

1
2
3
4
5
6
7
# 打开
export http_proxy='http://localhost:8118'
export https_proxy='http://localhost:8118'
# 关闭
unset http_proxy
unset https_proxy

更方便的方式是在 .bash_profile 文件加入开关函数。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 打开
function proxy_on() {
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
export http_proxy="http://127.0.0.1:8118"
export https_proxy=$http_proxy
echo -e "已开启代理"
}
# 关闭
function proxy_off(){
unset http_proxy
unset https_proxy
echo -e "已关闭代理"
}

修改完成之后通过 source .bash_profile 使配置文件立即生效。然后可以通过以下命令进行开关:

1
2
3
4
5
# 打开
proxy_on
# 关闭
proxy_off

退出

通过 ps aux | grep privoxy 找到 privoxy 的进程 id,通过 kill 命令关闭对应的进程。

如果是通过安装包安装,可以通过其提供的脚本文件关闭

1
sudo /Applications/Privoxy/stopPrivoxy.sh
文章目录
  1. 1. 安装
  2. 2. 配置
  3. 3. 使用
    1. 3.1. 启动
    2. 3.2. 转发
    3. 3.3. 退出
,