普通安装的 Caddy 是不能使用自动证书的,需要安装插件。
这里是一个以 Cloudflare 托管域名的例子:
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
chmod o+r /usr/share/keyrings/caddy-stable-archive-keyring.gpg
chmod o+r /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
sudo caddy add-package github.com/caddy-dns/cloudflare
编辑添加变量:
systemctl edit caddy.service
在顶部添加
[Service]
Environment="CLOUDFLARE_API_TOKEN=123456"
然后配置 /etc/caddy/Caddyfile
appinn.com {
tls {
dns cloudflare {env.CLOUDFLARE_API_TOKEN}
}
reverse_proxy 127.0.0.1:3000
}
最后重启:
sudo systemctl daemon-reload
sudo systemctl restart caddy
如果 CLOUDFLARE_API_TOKEN 本身没有问题,证书就签发好了。
