一、安装 Caddy(官方源,Ubuntu20.04‑26.04 通用)
一条一条复制执行:
bash
sudo apt update
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
#导入密钥
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
#添加软件源
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo chmod o+r /usr/share/keyrings/caddy-stable-archive-keyring.gpg
sudo chmod o+r /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
二、验证安装
caddy version
输出版本号即为成功。
安装完成后 systemd 服务自动创建,服务名:
caddy
三、修改 Caddyfile 配置(核心!适配 FRP‑TCP 隧道)
配置文件路径:/etc/caddy/Caddyfile
bash
sudo nano /etc/caddy/Caddyfile
全部原有内容删掉,粘贴下面配置
ini
test.example.com {
tls {
protocols tls1.2 tls1.3
}
reverse_proxy 127.0.0.1:8080 {
header_up Host {host}
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up X-Forwarded-Proto https
}
header Strict-Transport-Security "max-age=31536000;"
}
⚠️这里
8080= frp TCP 隧道remotePort=8080frps.toml 里必须注释掉vhostHTTPPort = 8080,否则端口冲突!
保存退出: Ctrl+O →回车保存 →Ctrl+X退出 nano
四、常用 systemd 命令
bash
# 启动
sudo systemctl start caddy
# 完全重启(停止再启动服务,证书申请卡住超时的时候用这个)
sudo systemctl restart caddy
# 开机自启
sudo systemctl enable caddy
#检查配置有没有语法错误
caddy validate --config /etc/caddy/Caddyfile
# 重载配置(改完Caddyfile必须执行)
sudo systemctl reload caddy
# 停止
sudo systemctl stop caddy
# 查看服务状态
sudo systemctl status caddy
# 查看实时日志
journalctl -u caddy -f
✅Caddy 会自动申请 SSL 证书、自动把 http 跳转到 https、自动 90 天后续期证书,你完全不用管证书文件。