文档
一个 项目

acme_server

一个嵌入式 ACME 协议 服务器处理程序。这允许 Caddy 实例为任何其他与 ACME 兼容的软件(包括其他 Caddy 实例)颁发证书。

启用后,与路径 /acme/* 匹配的请求将由 ACME 服务器处理。

客户端配置

使用 ACME 服务器默认值,ACME 客户端应简单地配置为使用 https://127.0.0.1/acme/local/directory 作为其 ACME 端点。(local 是 Caddy 默认 CA 的 ID。)

语法

acme_server [<matcher>] {
	ca        <id>
	lifetime  <duration>
	resolvers <resolvers...>
}
  • ca 指定用于签署证书的证书颁发机构的 ID。默认值为 local,它是 Caddy 的默认 CA,用于本地使用的自签名证书,这在开发环境中最常见。为了更广泛的使用,建议指定不同的 CA 以避免混淆。如果具有给定 ID 的 CA 不存在,则会创建它。请参阅 PKI 应用程序全局选项 以配置备用 CA。

  • lifetime(默认:12h)是一个 持续时间,它指定颁发证书的有效期。此值必须小于用于签署的 中间证书 的有效期。除非绝对必要,否则不建议更改此值。

  • resolvers 是在查找用于解决 ACME DNS 挑战的 TXT 记录时使用的 DNS 解析器的地址。接受 网络地址,默认情况下为 UDP 和端口 53,除非指定。如果主机是 IP 地址,则会直接拨号以解析上游服务器。如果主机不是 IP 地址,则使用 Go 标准库的 名称解析约定 解析地址。如果指定了多个解析器,则会随机选择一个。

示例

要在域 acme.example.com 上提供 ID 为 home 的 ACME 服务器,并通过 pki 全局选项 自定义 CA,并使用 internal 发行机构颁发自己的证书

{
	pki {
		ca home {
			name "My Home CA"
		}
	}
}

acme.example.com {
	tls {
		issuer internal {
			ca home
		}
	}
	acme_server {
		ca home
	}
}

如果您有另一个 Caddy 服务器,它可以使用上述 ACME 服务器颁发自己的证书

{
	acme_ca https://acme.example.com/acme/home/directory
	acme_ca_root /path/to/home_ca_root.crt
}

example.com {
	respond "Hello, world!"
}