exim, spamassassin и белые списки

Эта заметка для тех, кто собирал exim со spamassassin’ом и расскажу в ней о том, как разрешить определённым хостам отправлять почту без проверки на спам. Это иногда бывает полезно, если вы уверенны, что те хосты точно не спаммеры.
И так, приступим.

1) Настройки самого SpamAssasin’a.

Если открыть файл /usr/local/etc/mail/spamassassin/local.cf и добавить строку

trusted_networks 10.0.0.0/8

то это будет лишь означать то, что из этого сообщения будет вычтено несколько баллов, но это не означает, что письмо не будет проверяться. Если вас интересует что бы вообще не проверялось, то переходим к п.2

После всех изменений перечитываем конфиг spamassassin’a:

#/usr/local/etc/rc.d/sa-spam reload

2) Настрока sa-exim.conf

Открываем файл /usr/local/etc/exim/sa-exim.conf и ищем параметр SAEximRunCond. По умолчанию он выглядит вот так:

SAEximRunCond: ${if and {{def:sender_host_address} {!eq {$sender_host_address}{127.0.0.1}} {!eq {$h_X-SA-Do-Not-Run:}{Yes}} } {1}{0}}

Собственно эта строка разрешает отправлять без проверки на спам письма только с помеченные как X-SA-Do-Not-Run или локальный хост (то есть сам почтовый сервер). Что бы добавить подсеть или несколько хостов, следуем таким правилам:

— что бы добавить ещё одно условие проверки, добавляем его перед конструкцией

} {1}{0}}

— что бы добавить подсеть добавляем такое условие

{!eq {${mask:$sender_host_address/8}}{10.0.0.0/8}}

— отдельные хосты добавляем по такому правилу:

{!eq {$sender_host_address}{55.66.77.88}}

Пример использования:

SAEximRunCond: ${if and {{def:sender_host_address} {!eq {${mask:$sender_host_address/8}}{10.0.0.0/8}} {!eq {$h_X-SA-Do-Not-Run:}{Yes}} {!eq {$sender_host_address}{11.22.33.44}} } {1}{0}}

В данном примере мы разрешили отправку с хостов 11.22.33.44, 10.0.0.0/8 ну и тех, которые помечены как X-SA-Do-Not-Run.

После всех изменений перечитываем конфиг exim’a:

#/usr/local/etc/rc.dexim reload

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *