设置 Traefik 以仅使用 CLI 使用 Let's Encrypt 要求客户端证书
Setting up Traefik to require client side certificates with Let's Encrypt using CLI only
我正在尝试设置 Traefik 来处理 SSL 客户端证书,就像我以前使用 Apache 那样。但我似乎无法让它正常工作。我也在用Docker,这里是命令参数
command:
- --defaultEntryPoints=http,https
- --insecureSkipVerify
- "--entryPoints=Name:http Address::80 Compress:true Redirect.entryPoint:https"
# This one works with no authentication
- "--entryPoints=Name:https Address::443 Compress:true TLS"
# These don't seem to do anything
- "--entryPoints=Name:https Address::443 Compress:true TLS CA.Optional:false CA:/run/secrets/CA"
- --ping
- --docker
- --docker.endpoint=tcp://daemon:2375
- --docker.exposedByDefault=false
- --docker.swarmMode
- --docker.watch
- --acme
- --acme.email=REDACTED@trajano.net
- --acme.onhostrule
- --acme.entrypoint=https
- --acme.httpchallenge
- --acme.httpchallenge.entrypoint=http
- --zookeeper.endpoint=zookeeper:2181
- --zookeeper.prefix=traefik
- --acme.storage=traefik/acme/acme.json
实际上是 CA.Optional
和 CA
。我使用的是 auto-selected 证书的 Firefox,当我使用 Chrome 时,它使用的是缓存内容。因此,当我清除浏览器缓存时,一切都开始工作了。
请注意,此方法仅验证客户端证书是否由 CA 签名,但不会执行任何额外检查,例如使用的主题是什么。据我了解,这是目前 Traefik 1.7 的限制。
我正在尝试设置 Traefik 来处理 SSL 客户端证书,就像我以前使用 Apache 那样。但我似乎无法让它正常工作。我也在用Docker,这里是命令参数
command:
- --defaultEntryPoints=http,https
- --insecureSkipVerify
- "--entryPoints=Name:http Address::80 Compress:true Redirect.entryPoint:https"
# This one works with no authentication
- "--entryPoints=Name:https Address::443 Compress:true TLS"
# These don't seem to do anything
- "--entryPoints=Name:https Address::443 Compress:true TLS CA.Optional:false CA:/run/secrets/CA"
- --ping
- --docker
- --docker.endpoint=tcp://daemon:2375
- --docker.exposedByDefault=false
- --docker.swarmMode
- --docker.watch
- --acme
- --acme.email=REDACTED@trajano.net
- --acme.onhostrule
- --acme.entrypoint=https
- --acme.httpchallenge
- --acme.httpchallenge.entrypoint=http
- --zookeeper.endpoint=zookeeper:2181
- --zookeeper.prefix=traefik
- --acme.storage=traefik/acme/acme.json
实际上是 CA.Optional
和 CA
。我使用的是 auto-selected 证书的 Firefox,当我使用 Chrome 时,它使用的是缓存内容。因此,当我清除浏览器缓存时,一切都开始工作了。
请注意,此方法仅验证客户端证书是否由 CA 签名,但不会执行任何额外检查,例如使用的主题是什么。据我了解,这是目前 Traefik 1.7 的限制。