caddy透明代理


透明代理

下载caddy插件:
https://caddyserver.com/download
找到forwardproxy插件,点下载

记得把域名解析到IP

caddy.service服务启动文件:

ini
[Unit]
Description=Caddy
Documentation=https://caddyserver.com/docs/
After=network.target network-online.target
Requires=network-online.target

[Service]
Type=notify
User=root
Group=root
ExecStart=/usr/local/bin/caddy run --environ --config /etc/caddy/Caddyfile
ExecReload=/usr/local/bin/caddy reload --config /etc/caddy/Caddyfile
TimeoutStopSec=5s
LimitNOFILE=1048576
LimitNPROC=512
PrivateTmp=true
ProtectSystem=full
#AmbientCapabilities=CAP_NET_BIND_SERVICE

[Install]
WantedBy=multi-user.target

caddy配置:

bash
# 这里不需要转发端口,只是把所有通过这个域名的都当作正向代理
tm.5210010.xyz {
  # 启用正向代理
  forward_proxy {
            basic_auth user1 密码123      # 设置基本身份验证
            hide_ip                      # 隐藏客户端 IP
            hide_via                     # 移除 Via 头部
            probe_resistance secretlink  # 启用探测抵抗
            upstream https://user:pass@upstream.proxy.com:443  # 配置上游代理
            acl {
                allow 10.0.0.0/8         # 允许特定 IP 段
                deny all                 # 拒绝其他所有访问
            }
            ports 80 443                 # 仅允许访问 80 和 443 端口
            pac /proxy.pac               # 启用 PAC 文件支持
        }
}
# 下面的这个也要打开,不然无法代理成功,原因未知
:443 {
    forward_proxy #只保留这一个参数也能开启代理
}

我自己的透明代理

curl.exe -s -x https://域名 http://ip-api.com

ubuntu使用透明代理

export all_proxy="https://域名"