dummy-smtp-port

Global

Порт поддельного приёмника — он же его выключатель
в конфигурации это строкаdummy-smtp-port 0внутри блока Global
Ноль означает «выключено»

Порт, на котором узел слушает соединения для поддельного приёмника. Умолчание — ноль, и ноль здесь означает не «любой» и не «стандартный», а «не слушать вовсе».

Отсюда простое следствие: эта строка и есть выключатель всего механизма. Можно задать адрес, задержку, набор расширений — пока порта нет, ничего не работает. И наоборот: задать порт достаточно, чтобы приёмник поднялся с умолчаниями остальных семи строк.

Пара к нему — dummy-smtp-ip: он говорит, на каком адресе слушать. Порт решает, слушать ли вообще.

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

Берите порт, которого нет в обиходе. 2525 узнаваем как тестовый; двадцать пятый брать нельзя — на нём стоит настоящая служба.

Возвращайте ноль сразу после прогона. Не «когда-нибудь», а той же правкой конфигурации.

Проверяйте, что он действительно закрылся. Строка убрана — это ещё не значит, что порт не слушают: перезагрузка конфигурации обязательна.

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

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

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

Оставляют порт открытым после прогона

наш опыт

Чем чреватоНа боевом узле остаётся слушающая чёрная дыра. Опечатка в списке серверов у любого получателя отправляет настоящую почту в неё — и она отмечается доставленной.
Как заметитьПорт слушается, хотя нагрузочных прогонов давно не было.
Как правильноВернуть ноль и перезагрузить конфигурацию.

Задают остальные строки и ждут, что механизм заработает

§ 3.3.1.57.2

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