http-tls-max-version

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

Верхняя граница версии TLS у веб-монитора
в конфигурации это строкаhttp-tls-max-version none — действует как tlsv1.3внутри блока Global
Потолок версии на управляющем интерфейсе

Вторая граница того же диапазона, что и http-tls-min-version. Умолчания нет — значит, потолок не ограничен и монитор согласует самую новую версию, которую предложит клиент.

Повод поставить потолок здесь один и тот же: клиент, который объявляет современную версию и на ней срывается. У монитора это чаще всего не браузер, а старая библиотека в чужой программе, которая ходит в API.

Это обход чужой поломки, а не настройка безопасности. Понижение потолка ослабляет интерфейс, на котором лежит ключ управления, — если уж ставить, то с комментарием и датой.

Главная ловушка — поставить потолок и забыть. Библиотека обновится, повод исчезнет, а строка останется и будет годами держать управляющий интерфейс на устаревшей версии.
Что делает Хаб. Не пишет: потолок не ограничен, и ограничивать его нечем — единственный клиент монитора у нас свой.
Рекомендуемые значения

Ставить только по конкретному поводу:

Значение Когда
не задавать (умолчание) всегда
tlsv1.2 клиент API срывается на 1.3

Строку сопровождают комментарием, иначе через год никто не вспомнит, ради чего интерфейс держат на старой версии.

Значения и отсутствие умолчания — из руководства (§ 3.3.1.58.14). Совет записывать повод и дату — наш.
Пример в конфигурации
# обход поломки в клиенте, а не настройка безопасности
http-mgmt-port 1000
http-tls-max-version tlsv1.2   # библиотека клиента X рвёт 1.3; проверить в 2027
Комментарий с поводом и сроком — часть строки. Без него потолок переживёт причину, по которой появился.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

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

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

Понижают потолок «на всякий случай»

наш опыт

Чем чреватоПотолок ничего не защищает — он только запрещает новое. На интерфейсе, где лежит ключ управления, это чистая потеря.
Как заметитьМонитор согласует 1.2 при том, что все его клиенты умеют 1.3.
Как правильноУбрать строку. Ограничивать снизу — задача http-tls-min-version.

Ставят потолок вместо разбора поломки клиента

наш опыт

Чем чреватоНастоящая причина — библиотека в клиенте — остаётся, и та же поломка вылезет на любом другом интерфейсе, куда этот клиент ходит.
Как заметитьКлиент работает с монитором и не работает больше нигде.
Как правильноСтавить потолок как временную меру и заводить задачу на обновление клиента.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
http-tls-max-version <enumeration>
Значения
tlsv1 | tlsv1.1 | tlsv1.2 | tlsv1.3
Умолчание
none — действует как tlsv1.3 § 3.3.1.58.14
Применение
нужен перезапуск сервиса
Очередь
уже поставленное в очередь не затронет
Где писать
Global
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Наследования у директивы нет: она пишется в корне файла, раздел Global, и действует на весь управляющий интерфейс узла.
Как проверить на узле
Спрашиваем узел о самой новой версии — она должна согласоваться, если потолок не ставили:
openssl s_client -connect NODE:1000 -tls1_3 -brief </dev/null
Protocol version: TLSv1.3 — потолка нет. Если вместо этого пришёл alert protocol version, потолок стоит и опущен ниже 1.3.
В Хабе
Цена ошибки
безопасно: неверное значение ничего не ломает
Сценарии
Безопасность узла