/.well-known/acme-challenge/ 路径发送HTTP请求验证域名控制权caddyfile展开代码example.com { respond "Hello World" }
caddyfile展开代码{ email your-email@example.com } example.com { respond "Hello World" }
DNS-01挑战才支持通配符。
caddyfile展开代码{ acme_dns cloudflare {env.CLOUDFLARE_API_TOKEN} } *.example.com { respond "Hello World" }
自定义 ACME CA:强制 Caddy 使用 Let's Encrypt 的测试环境签发证书(仅用于开发/测试)。测试环境的证书是无效的(浏览器不信任),但不会触发生产环境的速率限制,适合调试。
caddyfile展开代码{ acme_ca https://acme-staging-v02.api.letsencrypt.org/directory } example.com { respond "Hello World" }
caddyfile展开代码{ on_demand_tls { ask http://localhost:8080/check-domain } } :443 { tls { on_demand } respond "Hello {host}" }
caddyfile展开代码{ on_demand_tls { ask http://localhost:8080/check-domain interval 2m burst 5 } } :443 { tls { on_demand } @allowed host example.com subdomain.example.com handle @allowed { respond "Allowed domain: {host}" } handle { respond "Domain not allowed" 403 } }
json展开代码{
    "apps": {
        "http": {
            "servers": {
                "srv0": {
                    "listen": [":443"],
                    "routes": [
                        {
                            "handle": [
                                {
                                    "handler": "static_response",
                                    "body": "Hello {http.request.host}"
                                }
                            ]
                        }
                    ]
                }
            }
        },
        "tls": {
            "automation": {
                "on_demand": {
                    "rate_limit": {
                        "interval": "2m",
                        "burst": 5
                    },
                    "ask": "http://localhost:8080/check-domain"
                },
                "policies": [
                    {
                        "on_demand": true
                    }
                ]
            }
        }
    }
}
ask 参数):防止恶意域名申请证书

本文作者:Dong
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!