У меня есть установка exim4 на domain1 перед другим сервером, domain2 (с sendmail). Второй сервер не имеет прямого доступа к Интернету, поэтому domain1 - это MX для домена2. И domain2 установлен как hubbed_host
в exim4 на domain1.
Когда спамер отправляет сообщение для no_such_user @ domain2, его sendmail отклоняет:
550 5.1.1 <no_such_user@domain2>... User unknown
Затем exim4 в domain1 сделает автоответчик следующим образом:
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:
no_such_user@domain2
SMTP error from remote mail server after RCPT TO:<no_such_user@domain2>:
host 10.0.0.1 [10.0.0.1]: 550 5.1.1 <no_such_user@domain2>... User
unknown
Спамеры используют фальшивое поле "от", и такие сгенерированные сообщения замораживаются exim`ом на долгое время.
Как я могу отключить некоторые или все автоответы от exim4? В идеале мне нужен фильтр, если сообщение не было доставлено с ошибкой «Пользователь неизвестен», чем не генерировать никаких автоответов от mailer-daemon.
Спасибо!
Ваша проблема в том, что вы не проверяете адрес получателя во время RCPT. Это легко исправить.
Используйте подтверждение уточнения для получателя. «Удаленный» сервер, с которым вы разговариваете, находится под вашим контролем, поэтому это не является злоупотреблением.
В ACL, назначенном acl_smtp_rcpt, у вас есть правило, которое выполняет «verify = recipient». Не зная ваших правил, я не могу точно сказать, что мне делать. ЕСЛИ эта строка находится в блоке "accept", то непосредственно перед этим вы можете добавить еще один блок accept, почти такой же, с добавленным ограничением "domains = domain2" и который делает "verify = recipient / callout" (добавляя эти 8 символов в конце). Если он находится в блоке «require», а не в «accept», то после этого блока вы можете добавить блок deny, например:
deny domains = domain2
!verify = recipient/callout
Есть больше опций для управления такими вещами, как тайм-ауты, действия при отсрочке и т.д. См. §40.42 «Дополнительные параметры для вызовов» Спецификации Exim (должен быть «spec.txt» где-нибудь в вашей системе).
думаю это сообщение в блоге это то, что вы ищете.
Проблема: когда почтовый сервер принимает сообщение, а затем решает, что не может доставить сообщение, необходимо отправить обратно сообщение о недоставке отправителю исходного сообщения. Эти письма о недоставке часто отправляются неверно.
Для многих MTA есть решения, поэтому вот мое решение для
exim
:Решение. В этом решении используется фильтрация для отбрасывания возвращенных писем. Итак, ваш exim должен иметь центральный фильтр. Такой фильтр можно настроить в
exim.conf
Файл конфигурации […]