[Карта]                      [Начало]                      [Sendmail-ссылки]                      [Синтаксис]                      [Типовые задачки]                      [SendmailACL]                      [Spamooborona]                      [Тонкости]                      [Недок.особен.]                      [Несущ.юзеры]                      [ТП.Эмоции]



Неработающие решения

17.Как заблокировать письма, посылаемые на определенный relay (блокировка по MX-домену получателя)
Предположим, вы заблокировали прием почты с домена outblaze.com. Спамеры не унимаются, и вы продолжаете получать почту с другими доменами в обратном адресе, но с relay-ев, которые резолвятся как something.outblaze.com. Вы закрываете эти IP файрволлом, и теперь уже начинаете получать сообщения от MAILER-DAEMON о невозможности доставки почты . И это понятно: спамер прислал на несуществующий адрес письмо с поддельным обратным адресом, в доменной части которого проставлен домен, MX-запись которого совпадает с заблокированным вами IP. Почтовик не может до него достучаться, чтобы вернуть отлуп о несуществующем пользователе, в итоге имеем сообщение "Connection is timed out" в почтовом ящике Постмастера.
Таких сообщений за день может упасть в почтовый ящик Постмастера предостаточно.
Тут ничего не остается поделать, кроме как воспользоваться макросом {rcpt_host} (хост из определённой триады из адеса данного для команды SMTP RCPT. Определяется только в SMTP-сервере.) и отправить такое сообщение в discard.

SLocal_check_rcpt
R$* $:$&{rcpt_host}
#Если почта локальная, то этот макрос будет пустой.
R$* outblaze . com                   $#discard
Обращаю внимание на то, что здесь отлуп дается вашей локальной почтовой системе, а не удаленному почтовому серверу. Возможно, при приеме почты можно проверить, не является ли для домена отправителя mx-ом некий хост something.outblaze.com. В этом случае письмо не будет приниматься , а отлуп произойдет на этапе smtp-диалога, но я пока не знаю, как это сделать.

Решено здесь.