linux代理本地pac方式v2rayA或privoxy

需求:

国内机器连接时在本地或局域网实现pac策略

实现

现有国外节点,开启代理服务且需要用户名密码认证

linux 配置代理方法: https://eternalcenter.com/proxy/

1
2
3
4
5
export http_proxy=http://8.8.8.8:80
export https_proxy=http://8.8.8.8:8080
export no_proxy=”localhost,127.0.0.1,::1″

或者export http_proxy=http://admin:123@8.8.8.8:80
客户端 服务端
v2rayA Shadowsocks
privoxy v2ray
goproxy

privoxy相对简单且容易配置

v2rayA功能强大但占用资源比privoxy多

使用privoxy

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
1. 服务器安装privoxy
apt install -y privoxy
2. Privoxy 的配置文件路径为 /usr/privoxy/config,我们需要修改里面的 listen-address 选项和pac选型
actionsfile pac.action
listen-address 0.0.0.0:8118
3. 添加pac规则文件
cat /etc/privoxy/pac.action
{{alias}}
default=+forward-override{forward .}
#pac=+forward-override{forward-socks5 admin:admin@192.168.28.67:10810 .} 支持用户名密码验证
pac=+forward-override{forward-socks5 192.168.28.67:10810 .}
{default}
/
{pac} # 这个里面是走代理
.cip.cc
.baidu.com
.google.com

4. 重启 Privoxy 服务
systemctl restart privoxy.service
5. 设置代理
export http_proxy=http://127.0.0.1:8118
export https_proxy=http://127.0.0.1:8118
export no_proxy=”localhost,127.0.0.1,::1
6. 访问即可
curl cip.cc # 会显示代理服务器ip地址

使用v2rayA(客户端)

  1. 安装docker 1.20版本以上

  2. 启动容器

1
2
3
4
5
6
7
8
9
10
11

docker run -d \
--restart=always \
--privileged \
--network=host \
--name v2raya \
-e V2RAYA_LOG_FILE=/tmp/v2raya.log \
-v /lib/modules:/lib/modules:ro \
-v /etc/resolv.conf:/etc/resolv.conf \
-v /etc/v2raya:/etc/v2raya \
mzz2017/v2raya:2.2.4
  1. 访问服务器2017端口

  2. 在页面上创建上游代理服务器

image-20231020153502393

  1. 点击服务器的选择按钮,选择要使用的上游代理

  2. 点击右上角设置

    1. image-20231020153725455

    2. 配置规则分流

      image-20231020153801838

      1. 保存后,在页面左上角启动代理就会看到服务区上监听了20172的分流http端口
  3. 即可在linux上配置代理使用了

服务端部署

v2ray

1
2
https://github.com/233boy/v2ray
bash <(wget -qO- -o- https://git.io/v2ray.sh)