http-tls-request-client-certificate

Globalнужен перезапуск

Просить ли у клиента сертификат при входе на веб-монитор
в конфигурации это строкаhttp-tls-request-client-certificate trueвнутри блока Global
Запрос сертификата у того, кто пришёл

В рукопожатии TLS сервер может попросить сертификат и у клиента. Монитор просит по умолчанию — мы это проверили на узле парка: в рукопожатии приходит CertificateRequest, которого, для сравнения, обычный веб-сервер не присылает.

Просит — не значит требует. Клиент вправе ответить пустым сертификатом, и соединение продолжится. Именно поэтому браузер показывает окно выбора сертификата на пустом месте — руководство называет это главным поводом выключить строку.

Строка есть только у монитора. Ни у приёма почты, ни у слушателей такого переключателя нет: там клиентский сертификат либо настроен через tls-certificate-san-or-cn у логина, либо не запрашивается.

Осторожно с консолью управления вендора. Руководство предупреждает: выключение мешает работе PMC — фирменной консоли, которая как раз сертификатом и представляется.

Главная ловушка — принять окно выбора сертификата за поломку. Браузер показывает его потому, что монитор попросил, а не потому, что что-то настроено неверно. Люди начинают искать проблему в браузере.
Что делает Хаб. Не пишет: сертификатом Хаб не представляется, он предъявляет ключ управления заголовком. Строка осталась бы в силе, если бы кто-то зашёл на монитор браузером по https — тогда окно выбора будет.
Рекомендуемые значения

Выбор зависит от того, кто ходит на монитор:

Значение Когда
true (умолчание) пользуетесь консолью PMC
false ходите браузером и мешает окно выбора

Ни то ни другое не меняет прав доступа — их задаёт http-access и ключ управления.

Умолчание true и предупреждение о PMC — из руководства (§ 3.3.1.58.17). Что запрос действительно уходит — наша проверка на узле парка.
Пример в конфигурации
# окно выбора сертификата мешает, а консолью PMC не пользуемся
http-mgmt-port 1000
http-tls-request-client-certificate false
Значение стоит менять только при этих двух условиях сразу. С PMC выключение ломает её собственный способ представиться.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

Типичные ошибки и проблемы

что делают не так и чем это кончается2 ошибки▶

Выключают запрос на узле, где работает консоль PMC

§ 3.3.1.58.17

Чем чреватоКонсоль представляется как раз сертификатом. Без запроса ей нечем подтвердить, кто она, и связь с узлом рвётся.
Как заметитьPMC перестаёт видеть узел сразу после перезапуска монитора.
Как правильноВернуть true. Окно выбора в браузере лечится установкой сертификата в браузер, а не выключением запроса.

Ждут, что запрос закроет доступ посторонним

наш опыт

Чем чреватоМонитор просит, но не требует: клиент отвечает пустым сертификатом и продолжает. Прав это не меняет.
Как заметитьСтрока стоит, а посторонний с разрешённого адреса заходит.
Как правильноОграничивать доступ через http-access и ключ управления.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
http-tls-request-client-certificate <boolean>
Значения
yes | no | true | false
Умолчание
true § 3.3.1.58.17
Применение
нужен перезапуск сервиса
Очередь
уже поставленное в очередь не затронет
Где писать
Global
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Наследования у директивы нет: она пишется в корне файла, раздел Global, и действует на весь управляющий интерфейс узла.
Как проверить на узле
Запрос виден в самом рукопожатии — надо только попросить OpenSSL печатать сообщения протокола:
openssl s_client -connect NODE:1000 -msg </dev/null | grep -c CertificateRequest
1 — монитор сертификат просит, 0 — не просит. Та же команда против обычного веб-сервера даёт 0, так что проверка различает случаи, а не показывает всегда одно и то же.
В Хабе
Цена ошибки
безопасно: неверное значение ничего не ломает
Сценарии
Безопасность узла