caddy自行编译, 同时打包 naive 和 trojan 插件共存, 同时可以作为V2ray/Xray的前置web服务器
搭建 Go 环境
wget https://go.dev/dl/go1.19.5.linux-amd64.tar.gz
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.19.5.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
检查环境是否搭好了
go version
应该输出 go 的版本
go install github.com/caddyserver/xcaddy/cmd/xcaddy@latest
编译 caddy 带上插件 naive 和 trojan
~/go/bin/xcaddy build --with github.com/caddyserver/forwardproxy@caddy2=github.com/klzgrad/forwardproxy@naive --with github.com/imgk/caddy-trojan
使用
配置Caddyfile
{order forward_proxy before file_serverorder trojan before file_serverservers :443 {listener_wrappers {trojan}}trojan {caddyno_proxyusers e16d9cb045d7 #trojan密码}}:443, npp.tzzhu.gq:443 {tls e16d9cb045d7@gmail.comforward_proxy {basic_auth e16d9cb045d7 e16d9cb045d7 #naieveproxy密码hide_iphide_viaprobe_resistance}file_server {root /var/www/html}}trj.tzzhu.gq:443 {tls e16d9cb045d7@gmail.comtrojan {connect_methodwebsocket}file_server {root /var/www/html}}ray.tzzhu.gq{tls e16d9cb045d7@gmail.comencode gziphandle_path /06863aab8b84 { #节点路径reverse_proxy localhost:40947 #*Ray监听的内部端口}handle {reverse_proxy https://zelikk.blogspot.com {trusted_proxies 0.0.0.0/0header_up Host {upstream_hostport}}}}
测试方法
在自己的VPS上运行NaiveProxy客户端 对接自己的服务端 排错 Troubleshoot
在自己的VPS上运行Trojan-go客户端 对接自己的服务端 排错 Troubleshoot
在自己的VPS上运行V2Ray客户端 对接自己的服务端 排错 Troubleshoot
参考
Go 官方安装过程
https://go.dev/doc/install
NaïveProxy 官方编译流程
https://github.com/klzgrad/naiveproxy
xcaddy使用说明
naive编译参数
https://github.com/klzgrad/naiveproxy#server-setup
caddy-trojan编译参数
https://github.com/imgk/caddy-trojan#build-with-xcaddy
======
后记
单Trojan的Caddyfile
{order trojan before file_serverservers :443 {listener_wrappers {trojan}}trojan {caddyno_proxyusers e16d9cb045d7 #trojan密码}}trj.tzzhu.gq:443 {tls e16d9cb045d7@gmail.comtrojan {connect_methodwebsocket}file_server {root /var/www/html}}
单Naive的Caddyfile
{order forward_proxy before file_server}:443, npp.tzzhu.gq:443 {tls e16d9cb045d7@gmail.comforward_proxy {basic_auth e16d9cb045d7 e16d9cb045d7 #naiveproxy密码hide_iphide_viaprobe_resistance}file_server {root /var/www/html}}
单*Ray的Caddyfile
ray.tzzhu.gq{tls e16d9cb045d7@gmail.comencode gziphandle_path /06863aab8b84 { #节点路径reverse_proxy localhost:40947 #*Ray监听的内部端口}handle {reverse_proxy https://zelikk.blogspot.com {trusted_proxies 0.0.0.0/0header_up Host {upstream_hostport}}}}
最新版的 caddy 用到最新版的 go
回复删除现在是 go1.21.6.linux-amd64.tar.gz 了