У нас есть два почтовых сервера Postfix в университетской среде. Тысячи серверов управляются десятком разных групп, и я не контролирую все хосты. Эти серверы используют мои почтовые серверы для маршрутизации электронной почты либо в качестве Smarthost, либо с использованием записей MX.
Несколько серверов постоянно отправляют электронную почту, где адрес отправителя выглядит так:
cfengine@host.example.org
Эти электронные письма отправляются на неверный адрес и, следовательно, возвращаются. Но поскольку адрес «От:» также недействителен, электронные письма застревают в бесконечном цикле отказов в течение нескольких дней.
Если я перечисляю очередь постфиксов с помощью postqueue -p
показывает мне сотни сообщений вроде следующего:
ABCD7301713E 3799 Tue Mar 5 05:20:35 MAILER-DAEMON
(delivery temporarily suspended: connect to host.example.org[192.168.100.100]:25: Connection refused)
cfengine@host.example.org
Как только решение уведомить кто-то по поводу отскоков. postmaster иногда используется для этой задачи. Параметры notify_classes и bounce_notice_recipient
может позволить мне уведомить почтмейстера о сбоях.
Сообщение об отказе может содержать имя хоста и IP-адрес хоста, который пытается доставить электронное письмо. Если нет, администратор может запустить postcat
в поле Message-Id и просмотрите содержимое сообщения (заголовки и все такое). Отсюда мы можем связаться с владельцем системы и попросить его решить проблему на его стороне.
подпрыгивать (также подразумевает 2bounce)
Отправляйте почтмейстеру копии заголовков возвращенной почты и отправляйте стенограммы сеансов SMTP, когда Postfix отклоняет почту. Уведомление отправляется на адрес, указанный в параметре конфигурации bounce_notice_recipient (по умолчанию: postmaster).
2bounce
Отправлять недоставленную недоставленную почту почтмейстеру. Уведомление отправляется на адрес, указанный в параметре конфигурации 2bounce_notice_recipient (по умолчанию: postmaster).
bounce_notice_recipient (по умолчанию: postmaster)
Получатель уведомлений почтмейстера с заголовками писем, которые Postfix не доставлял, и транскриптами SMTP-разговоров почты, которые Postfix не получил. Эта функция включается параметром notify_classes.
2bounce_notice_recipient (по умолчанию: postmaster)
Получатель недоставленной почты, которую нельзя вернуть отправителю. Эта функция включается параметром notify_classes.
Рассматривали ли вы возможность отклонения сообщений с недопустимым отправителем конверта в сеансе SMTP?
Вы можете выбрать один из следующих вариантов:
examples/smtpd-policy/greylist.pl
в дереве исходных текстов Postfix реализует упрощенный сервер политики серого списка На мой взгляд, отказ от сеанса - это то, что должен должно выполняться в SMTP, но слишком часто это не делается по нетехническим причинам.