Traefik 命令行传递客户端 ca

Traefik command line passing client ca

我是来自 rancher 的 运行ning traefik,我想配置 clientca 证书,我已经将卷挂载到容器,运行 traefik 带有'--entryPoints=Name:ops Address::90 tls.clientCA=/opt/clientca/ca.crt'.端口 90 已打开,但似乎不需要客户端证书。

我真的很困惑它是如何通过的:https://docs.traefik.io/basics/#traefik。这是正确的方法吗?

生成 toml 文件也是一个选项。

是的,有时候不是很明显。人们期望配置文件中的选项与命令行中的选项相对应,但目前并非如此。基本上如 traefik entrypoint docs 中所述,要实现您想要的,您需要指定“CA:”和“CA.optional”选项,如下例所示:

--entryPoints=Name:ops Address::90 TLS:{{ path_to_server_cert }},{{ path_to_server_key }} CA:{{ path_to_ca }} CA.Optional:false Compress:true

如果您想使用 acme(让我们加密)证书而不是直接提供服务器证书和密钥,您应该使用以下命令行

--entryPoints=Name:ops Address::90 TLS CA:{{ path_to_ca }} CA.Optional:false Compress:true
--acme.entrypoint=ops

您可能已经注意到,使用 acme 证书需要使用
'--acme.entrypoint='
命令提供入口点名称行选项。至于现在(08.02.2019),无法指定多个入口点以与 acme 一起使用。这意味着如果您已经在不同的入口点上使用 acme,您必须直接向入口点提供服务器证书和密钥