Назад | Перейти на главную страницу

Postfix: Обработка возвращенных писем, где оба адреса From: и To: являются незаконными?

У нас есть два почтовых сервера 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
  1. Можно ли, используя Postfix на почтовых серверах, переписать адрес "От:" или адрес "Кому:" в этих электронных письмах? Я хотел бы направить их к владельцам систем и попросить их очистить свои системы.
  2. Могу ли я уведомить почтмейстера об этих отказах? После этого Postmaster может уведомить владельцев системы.

Как только решение уведомить кто-то по поводу отскоков. 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?


Вы можете выбрать один из следующих вариантов:

  • добавить "неотвечающий хост" в таблица доступа с действием REJECT
  • использовать фильтр политики.
    Файл examples/smtpd-policy/greylist.pl в дереве исходных текстов Postfix реализует упрощенный сервер политики серого списка
  • использовать обычай Милтер
    MIMEDefang.org milter позволяет вам выражать свои политики фильтрации на Perl - стоит подумать, если вы планируете также добавить фильтрацию спама / вирусов

На мой взгляд, отказ от сеанса - это то, что должен должно выполняться в SMTP, но слишком часто это не делается по нетехническим причинам.