Командная строка Traefik передает клиент ca

Я использую traefik от rancher и хотел бы настроить сертификат clientca, я подключил том к контейнеру и запустил traefik с параметром '--entryPoints=Name:ops Address::90 tls.clientCA=/opt/clientca/ca.crt'. Порт 90 открыт, но сертификат клиента не требуется.

Я действительно запутался, как это можно было передать: https://docs.traefik.io/basics/#traefik. Это правильный путь?

Создание файла toml также может быть вариантом.


person gad0lin    schedule 20.02.2018    source источник


Ответы (1)


Да, иногда это не совсем очевидно. Люди ожидают, что параметры из конфигурационного файла будут соответствовать параметрам в командной строке, но на данный момент это не так. В основном, как описано в документах traefik entrypoint для достижения желаемого вам необходимо указать параметры 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 (let's encrypt) вместо предоставления сертификата сервера и ключа напрямую, вы должны использовать следующую командную строку

--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 на другой точке входа, вы ДОЛЖНЫ предоставить сертификат сервера и ключ непосредственно на точку входа.

person Владимир Тюхтин    schedule 08.02.2019