privoxy和ssr为内网提供http代理加速

maven的一些repo和docker等需要全球加速,如果是配置nexus这样的镜像,则也需要代理,本文通过ssr配置proxy,并通过privoxy提供局域网的http代理,方便研发和nexus等进行加速。
本文基于ubuntu,其他系统基本没有差异。

1.SSR的部署

1.1 概述

如果你嫌麻烦,可以直接下载这个脚本:https://github.com/the0demiurge/CharlesScripts/blob/master/charles/bin/ssr
但是我建议你用最直接的办法,下载源码并直接执行: https://github.com/shadowsocksrr/shadowsocksr/tree/manyuser下载并解压缩到opt目录。
下面的步骤也是根据源码的方式来进行。

1.2 配置服务器,并启动

1
2
3
4
# 配置服务器
$ vim /opt/shadowsocksr/config.json
# 启动
$ python3 /opt/shadowsocksr/shadowsocks/local.py -c /opt/shadowsocksr/config.json -d start

验证如果没有问题,再关闭

1
$ python3 /opt/shadowsocksr/shadowsocks/local.py -c /opt/shadowsocksr/config.json -d stop

1.3 添加到系统服务

1
$ vim /etc/systemd/system/ssr.service

添加如下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[Unit]
Description=SSR Client Service
After=network.target

[Service]
Type=forking
User=root
Restart=on-failure
RestartSec=5s
ExecStart=/usr/bin/python3 /opt/shadowsocksr/shadowsocks/local.py --pid-file=/var/run/ssr.pid --log-file=/opt/shadowsocksr/shadowsocks/ssr.log -c /opt/shadowsocksr/config.json -d start
ExecStop=/usr/bin/python3 /opt/shadowsocksr/shadowsocks/local.py --pid-file=/var/run/ssr.pid --log-file=/opt/shadowsocksr/shadowsocks/ssr.log -c /opt/shadowsocksr/config.json -d stop
ExecStopPost=/bin/rm -f /var/run/ssr.pid
[Install]
WantedBy=multi-user.target

激活

1
$ systemctl daemon-reload;systemctl enable --now ssr;

2.privoxy的部署

2.1 概述

privoxy的官网:https://www.privoxy.org/
privoxy的更多用法可以参考:https://www.cnblogs.com/hongdada/p/10787924.html

2.2 安装

参见官网:https://www.privoxy.org/user-manual/installation.html

1
$ sudo apt install privoxy

2.3 配置

1
$ vim /etc/privoxy/config

在最下面添加:

1
2
forward-socks5 / 127.0.0.1:1080 .
listen-address 0.0.0.0:7890

forward-socks5后面的/表示所有的内容都进行转发
1080是ssr的本地端口,请修改为你自己的端口,尾部有个 .,不要忘了。
0.0.0.0表示接受本机和局域网的ip
7890表示privoxy的监听端口

2.4 启动

privoxy安装好之后,应该会默认添加到systemd的service里,这里你需要再进行自启动的配置。

1
systemctl enable --now privoxy;systemctl restart privoxy

3. 测试

可以在局域网的设备上测试 privoxy提供的http代理了。