Проблема с входящими письмами на почтовом сервере Exim 4.96

В последнее время все больше пользователей и администраторов почтового сервера Exim с версией 4.96 начали сталкиваться с проблемой приема входящих писем, а именно после обновления пакета exim внутри системы. Это выражается тем, что пользователь почтового сервиса может отправить письмо с сервера, но при попытке принять обратно - письмо не будет доставлено. Не обошла эта проблема и панель управления сайтами ISPmanager 6.
Exim Tainted arg Error
При попытке отправить письмо на почтовый ящик, который размещен на проблемном сервере с Exim 4.96, отправителю приходит обратно ответ о невозможности доставки письма и файл с технической информацией. К сожалению, данная информация не совсем информативна и не вмещает в себе какой-либо конкретики.

Текст ответа от почтового сервера о проблеме
This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

  test@local-domain.com

Файл с технической информацией
Reporting-MTA: dns; mail.local-domain.com

Action: failed
Final-Recipient: rfc822;test@local-domain.com
Status: 5.0.0

Как вы видите, довольно сложно понять истинную причину проблемы с доставкой почты для дальнейшего её решения.

В журнале работы почтового сервера /var/log/exim/main.log вы можете увидеть следующую строку, которая появляется в момент принятия письма.
Tainted arg 4 for dovecot_deliver_pipe transport command

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

Откройте файл конфигурации почтового сервера. Стандартно он размещен по адресу /etc/exim/exim.conf и найдите группу настроек для dovecot_deliver_pipe почти в самом конце файла
nano /etc/exim/exim.conf

Далее найдите строку параметра command. Она будет иметь похожий вид
command = "/usr/libexec/dovecot/dovecot-lda -d $local_part@$domain -f $sender_address "

Удалите из нее параметр -f $sender_address
command = "/usr/libexec/dovecot/dovecot-lda -d $local_part@$domain"

Если в конфигурации вашего почтового сервера используются дополнительные опции для параметра message_suffix, то вам необходимо очистить их и оставить параметр пустым
message_suffix =
По умолчанию для message_prefix используется строка mbox "From ", и Dovecot определит отправителя по ней.

Вам остается только перезапустить сервис exim
systemctl restart exim
  • 31
    август 2022 г