Борьба со спамом при помощи ASN

Блокируем целую подсеть спамеров одним махом

Бывает, что нужно отсечь почту, приходящую от целой сети. Отправители все время меняют свои адреса: отправляют определенное количество писем, меняют адрес, снова меняют адрес, снова отправляют... В таком случае помогает запрет на прием писем с определенных IP-адресов. А что делать, если таких адресов скапливается очень много? В итоге мы получаем целую «простыню» в настройках почтового сервера. Лично меня это не устраивает. Изучив часть из них, обратил внимание, что все они принадлежат одной сети. Посмотрев на список IP-адресов, закрепленных за этой сетью, понял, что список будет очень большим. Тогда же я заметил, что в регистрационных данных присутствует такая вещь, как ASN. Если очень кратко, то это уникальный идентификатор, присвоенный этой сети. Появилась мысль как-то использовать этот идентификатор в борьбе со спамом. Изучив список плагинов Spamassassin’а, увидел, что помимо прочих он также может определять не только вышеупомянутый ASN, но и подсеть отправителя.
Далее было дело техники. В настройках Spamassassin’а включаем загрузку этого модуля в v320.pre:

loadplugin Mail::SpamAssassin::Plugin::ASN

Дальше нам нужно, чтобы он вставлял нужные заголовки в получаемые письма. Для этого в local.cf добавляем следующую строку:

add_header all ASN _ASN_ _ASNCIDR_

Перезапускаем Spamassassin и... ничего не получилось. Заголовок вставляется, но данных в нем нет

X-Spam-ASN:

Я потратил почти полдня, пока нашел причину почему это не работает. Оказалось, что в параметрах запуска Spamassassin был указан параметр -L, который запрещает работу с DNS. После удаления этого параметра, заголовок приобрел более «осмысленный» вид:

X-Spam-ASN: AS25549 95.170.128.0/22

Вот теперь уже можно отдавать письмо на дополнительную проверку postfix. В файл header_checks добавляем строку:

/^X-Spam-ASN.*AS25549 .*/ DISCARD This is spamer

и перезапускаем postfix. Всё, больше писем из этой сети вы не получите.
Но, к сожалению, не все сети имеют ASN. Тогда бороться с ними остается только по IP-адресам.

Отправить
Поделиться