GlobalкритичноХаб задаёт сам
Объявляет адрес и порт, на которых узел слушает SMTP, и может привязать к ним именованный источник. Приёмников может быть несколько — по одному на адрес и порт; 0.0.0.0 разрешено повторять, открывая несколько портов на всех адресах сразу, и вместо адреса принимается диапазон в записи CIDR.
Если не объявить ни одного, узел поднимет приёмник сам — на 0.0.0.0:25. Это удобно на первом запуске и опасно потом: приёмник на всех адресах живёт там, где о нём уже забыли.
Появление этой строки отключает две старые. smtp-ip и smtp-port MTA перестаёт замечать вовсе, стоит объявить хотя бы один приёмник.
Привязка источника к приёмнику даёт выбор адреса отправки по точке входа. Подающий выбирает, куда подключиться, и тем самым выбирает, с какого адреса уйдёт его почта, — не умея ставить никаких заголовков. Руководство тут же предупреждает: разрешение на пересылку у такого источника означает, что пересылать сможет каждый, кто дотянулся до адреса, — это и есть открытый релей.
Порт подачи — не 25. Двадцать пятый на узле отправки нужен для приёма отказов и жалоб, и держать на нём же подачу значит смешивать две разные двери. Мы разводим их: 2525 для платформ, 25 для входящих отчётов.
Адрес в строке — это не адрес отправки. Здесь говорится, где узел слушает; с какого адреса он отправляет, решает smtp-source-host в блоке адреса отправки. Путаница между ними — обычное дело на узле с несколькими адресами.
Привязка source= нужна редко и опасна. Она уместна, когда точка входа должна сама выбирать адрес отправки. Без крайней надобности лучше выбирать источник по адресу подающего — тогда разрешение на пересылку не достаётся всякому, кто дотянулся до порта.
# подача кампаний — отдельный порт smtp-listener 0/0:2525# приём жалоб и асинхронных отказов — двадцать пятый smtp-listener 0/0:25
что делают не так и чем это кончается4 ошибки▶
§ 3.3.1.27
§ 3.3.1.27
наш опыт
наш опыт
4 связи
total-max-smtp-inGlobalПотолок входящих соединений, которые этот слушатель принимает. inference
always-allow-relayingGlobalПриёмник решает, откуда до узла дотягиваются; разрешение — что позволено дотянувшимся. § 3.3.1.27run-as-rootGlobalОт неё зависит, какие порты слушателю доступны: не root — только выше 1024. § 2.2.1
smtp-ipGlobalПоддерживаемая форма: адрес и порт вместе, и таких строк может быть несколько. § 3.3.1.27smtp-portGlobalПоддерживаемая форма: адрес и порт вместе, и строк может быть несколько. § 3.3.1.27Как узел выбирает источник и складывает его настройкиПараметр source= у приёмника выбирает именованный блок и отменяет адресный подбор целиком. § 3.3.7smtp-service<source>Слушатель открывает порт, а эта директива решает, принимать ли на нём почту от источника. § 3.3.1.27source<smtp-user>Вторая ссылка на именованный блок: там его выбирает приёмник, здесь — учётная запись. § 3.3.1.27await-slot<smtp-listener>Строка действует на соединения, принятые на адресе этого приёмника. § 3.3.17.1
ss -lntp | grep pmtad
3 статьи
◇Кому разрешено сдавать почту и для кого её приниматьИз коробки узел принимает подачу только с самой машины; два разных вопроса — «кто может слать через нас» и «на чьи адреса мы принимаем» — решаются разными директивами.◇Заголовки, которыми отправитель управляет доставкойШесть служебных заголовков позволяют подающей стороне выбрать поток, пометить письмо заданием, задать настройки и ключ подписи, идентификатор конверта и расписание; каждый разрешается отдельно и по источникам.◇Заголовок балансировщика на входеУзел читает заголовок PROXY в начале входящего соединения и считает источником адрес из него; работает у обоих видов входа.