Postfix: Отказы не сохраняются для доставки.

Вопрос или проблема

У меня есть вопрос и одновременно проблема. Я хотел бы знать, действительно ли мой сервер хранит возвратные письма. Я понимаю, что когда почтовый ящик переполнен, письмо генерирует возврат, и, следовательно, это письмо должно попасть в очередь повторной отправки на определенное количество дней в зависимости от моей конфигурации.

Логи выглядят следующим образом:

Mar 14 09:20:25 mailserver postfix/qmgr[1909892]: A094718D8C9: from=<[email protected]>, size=5966953, nrcpt=1 (queue active)
Mar 14 09:20:25 mailserver postfix/smtp[3498638]: 605B518DB74: to=<[email protected]>, relay=127.0.0.1[127.0.0.1]:10025, delay=0.4, delays=0.17/0.02/0.07/0.13, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as A094718D8C9)
Mar 14 09:20:25 mailserver postfix/amavisd/smtpd[3498639]: disconnect from localhost.localdomain[127.0.0.1] ehlo=2 starttls=1 mail=1 rcpt=1 data=1 quit=1 commands=7
Mar 14 09:20:25 mailserver postfix/qmgr[1909892]: 605B518DB74: removed
Mar 14 09:20:26 mailserver postfix/lmtp[3498642]: A094718D8C9: to=<[email protected]>, relay=mailserver.domain.com[192.168.110.10]:7025, delay=0.65, delays=0.13/0.02/0.05/0.45, dsn=5.2.2, status=bounced (host mailserver.domain.com[192.168.110.10] said: 552 5.2.2 Over quota (in reply to end of DATA command))
Mar 14 09:20:26 mailserver postfix/cleanup[3484973]: 4D74118DB81: message-id=<[email protected]>
Mar 14 09:20:26 mailserver postfix/bounce[3498660]: A094718D8C9: sender non-delivery notification: 4D74118DB81
Mar 14 09:20:26 mailserver postfix/qmgr[1909892]: 4D74118DB81: from=<>, size=18113, nrcpt=1 (queue active)
Mar 14 09:20:26 mailserver postfix/qmgr[1909892]: A094718D8C9: removed
Mar 14 09:20:28 mailserver postfix/smtp[3498636]: 4D74118DB81: to=<[email protected]>, relay=relay=mailserver.domain.com[192.168.110.10]:25, delay=0.91, delays=0.12/0.02/0.05/0.72, dsn=2.1.5, status=sent (250 2.1.5 Delivery OK)
Mar 14 09:20:28 mailserver postfix/qmgr[1909892]: 4D74118DB81: removed

postconf | grep “bounce”

2bounce_notice_recipient = postmaster
address_verify_sender = $double_bounce_sender
backwards_bounce_logfile_compatibility = yes
bounce_notice_recipient = postmaster
bounce_queue_lifetime = 5d
bounce_service_name = bounce
bounce_size_limit = 50000
bounce_template_file =
disable_verp_bounces = no
double_bounce_sender = double-bounce
enable_threaded_bounces = no
lmtp_sasl_auth_soft_bounce = yes
multi_recipient_bounce_reject_code = 550
smtp_sasl_auth_soft_bounce = yes
soft_bounce = no

Однако, когда я проверяю в postqueue, ничего не хранится, и кажется, что письма удаляются без повторной попытки. Есть ли какие-либо предложения?

Я действительно новичок в настройке этих переменных, поэтому буду благодарен, если вы поможете мне.

Большое спасибо заранее!

Ответ или решение

В данной ситуации у вас возникла проблема с обработкой возвратных писем (bounce emails) в системе электронной почты, работающей на базе Postfix. Возвратные письма возникают, когда отправленное сообщение не может быть доставлено по различным причинам, например, когда почтовый ящик получателя переполнен. В таких случаях Postfix должен помещать эти письма в очередь для повторной попытки доставки. Однако, как вы отметили, в вашем случае это, похоже, не происходит.

Теория

Когда Postfix сталкивается с недоставленным сообщением, он должен создать уведомление о возврате (bounce notification) и отправить его отправителю, а также поместить письмо в очередь для повторной попытки доставки. Параметры конфигурации Postfix, которые управляют обработкой таких bounce-писем, включают:

  1. bounce_queue_lifetime — определяет, сколько времени (по умолчанию "5d" или 5 дней) недоставленное сообщение остается в очереди перед его окончательным удалением.
  2. soft_bounce — если включено (yes), Postfix временно отклоняет все сообщения с записью об ошибке в журналах, вместо немедленного отклонения сообщений. Это может быть полезно для отладки.

Ваши конфигурации показывают, что bounce_queue_lifetime установлен на 5 дней, а soft_bounce отключен, что является стандартной практикой для налаженной Production-системы.

Пример

По вашим логам видно, что сообщение от вашего отправителя не может быть доставлено адресу получателя из-за переполненности ящика (код ошибки 5.2.2). Postfix генерирует сообщение о недоставке, как это видно по следующей строке:

postfix/bounce[3498660]: A094718D8C9: sender non-delivery notification: 4D74118DB81

Тем не менее, сообщение и дополнительные данные указывают на то, что после этого оно удаляется из очереди:

postfix/qmgr[1909892]: A094718D8C9: removed

Это говорит о том, что процесс удаления работает корректно, но он не помещает сгенерированные bounce-сообщения в очередь для повторных попыток, что и является сущностью вашей проблемы.

Применение

Для решения вашей проблемы желательно сделать следующее:

  1. Проверка конфигурации:

    • Убедитесь, что значение параметра bounce_queue_lifetime установлено правильно (например, 5d).
    • Дважды проверьте соответствие фактической конфигурации и той информации, которую вы получили с помощью команды postconf | grep "bounce".
    • Убедитесь, что выполнение изменений конфигурации завершено командой postfix reload.
  2. Логи и отладка:

    • Проверьте логи для любых дополнительных сообщений об ошибках с помощью команды tail -f /var/log/mail.log. В частности, ищите строки, относящиеся непосредственно к очередям Postfix (postfix/qmgr).
    • Временно включите параметр soft_bounce = yes и протестируйте обработку обратной связи: это может вам помочь определить проблемы обработки почты.
  3. Диагностические команды:

    • Используйте команду postqueue -p для просмотра активной очереди. Если после нескольких попыток доставки и наличия переполненного ящика вы не видите сообщений, это указывает на проблему с конфигурацией.
    • Убедитесь, что в системе нет других настроек или правил, которые смогли бы акцентировать или переписывать стандартное поведение обработки bounce-сообщений.
  4. Обновление и стабильность системы:

    • Поддерживайте актуальность Postfix и других системных компонентов, чтобы исключить известные баги или уязвимости, которые могут нарушать нормальную обработку почты.
  5. Консультация с документацией:

    • Ознакомьтесь с официальной документацией по Postfix, особенно разделами, связанными с управлением очередями и обработкой bounce-сообщений. Это позволит более глубоко разобраться в возможностях и настройках.

Если после внедрения всех рекомендаций проблема остается актуальной, может быть полезно проконсультироваться с опытным администратором систем или использовать профессиональные сервисы поддержки.

Оцените материал
Добавить комментарий

Капча загружается...