dummy-smtp-ip

Global

На каком адресе слушает поддельный приёмник
в конфигурации это строкаdummy-smtp-ipвнутри блока Global
Насколько далеко видна чёрная дыра

Адрес, на котором узел принимает соединения для поддельного приёмника. Работает в паре с dummy-smtp-port: тот решает, слушать ли вообще, этот — где именно.

Локальный адрес 127.0.0.1 — почти всегда верный выбор. Поддельный приёмник нужен для нагрузки самого узла, и стучится в него тот же узел. Ограничив адрес локальным, вы делаете чёрную дыру недоступной снаружи.

Внешний адрес нужен редко — когда нагрузку создаёт другая машина. Тогда приёмник виден сети, и защищать его приходится уже сетевыми средствами.

Главная ловушка — оставить внешний адрес. Поддельный приёмник не спрашивает, кто к нему пришёл: он принимает всё и выбрасывает. Открытый в сеть, он становится приёмником, который любой сосед может использовать как чёрную дыру — а на вашем узле это будет выглядеть как нормальная работа.
Что делает Хаб. Не пишет: механизм на узлах не поднимается. Если появится, адрес должен быть локальным — нагрузку узел создаёт себе сам.
Рекомендуемые значения

Локальный адрес по умолчанию мышления. Нагрузку создаёт тот же узел, значит и слушать достаточно на себе.

Внешний — только вместе с ограничением на брандмауэре. Приёмник сам никого не отсеивает.

На отдельном узле, а не на боевом. Даже локальная чёрная дыра на боевом узле — это открытый порт, в который можно попасть опечаткой в конфигурации.

Правило про локальный адрес и брандмауэр — наше. Из руководства здесь только назначение строки: адрес, на котором принимаются такие соединения.
Пример в конфигурации
# чёрная дыра видна только самой машине
dummy-smtp-ip 127.0.0.1dummy-smtp-port 2525
С локальным адресом соединения снаружи до приёмника не дойдут — ни случайно, ни намеренно.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

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

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

Слушают на всех интерфейсах

наш опыт

Чем чреватоЧёрная дыра открыта сети. Приёмник принимает всё и от всех, ничего не проверяя, — и на узле это выглядит как штатная работа.
Как заметитьВ выводе ss -ltn напротив порта стоит 0.0.0.0.
Как правильноОграничить адрес локальным либо закрыть порт на брандмауэре.

Поднимают приёмник на боевом узле

наш опыт

Чем чреватоОпечатка в списке серверов у любого получателя отправит настоящую почту в чёрную дыру — и та отметится доставленной, потому что разговор прошёл штатно.
Как заметитьПисьма числятся доставленными, до получателей не дошли.
Как правильноДержать механизм на отдельном узле.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
dummy-smtp-ip <address>
Значения
адрес IPv4 или IPv6, на котором принимаются соединения поддельного приёмника
Применение
reload, перезапуск не нужен
Очередь
уже поставленное в очередь не затронет
Где писать
Global
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Строка уровня узла: пишется в корне файла, не внутри блока. Наследования у неё нет. Подхватывается по pmta reload — вместе с dummy-smtp-port, который и открывает порт.
Как проверить на узле
На каком адресе поднят приёмник, видно средствами системы — строк уровня узла в настройках очереди нет:
ss -ltn | grep 2525
grep -n dummy-smtp-ip /etc/pmta/config
Адрес 0.0.0.0 в выводе первой команды означает, что приёмник слушает все интерфейсы и виден сети. Хаб этот механизм не задействует.
В Хабе
Цена ошибки
обратимо: вредит, пока стоит
Сценарии
Планирование мощности