Рейтинг:2

SpamAssassin: пользовательские правила и оценка

флаг np

Для моего почтового сервера я хочу добавить некоторые пользовательские правила и оценки для проверок spamasassin DKIM и SPF.

В настоящее время я использую следующие пользовательские настройки:

оценка DKIM_SIGNED 0
оценка DKIM_VALID -1
оценка SPF_NONE 1
оценка SPF_PASS -1

Проблема:

существует тег, если почта не имеет spf, но нет настройки, если почта не подписана dkim. как я могу использовать или реализовать

оценка DKIM_UNSIGNED 1

Любая помощь приветствуется.

флаг us
Вероятно, вы получите ответ гораздо быстрее, отправив сообщение в [список рассылки] (https://cwiki.apache.org/confluence/display/SPAMASSASSIN/MailingLists#MailingLists-Users)
Рейтинг:3
флаг gb

Вы можете сделать это следующим образом:

ifplugin Mail::SpamAssassin::Plugin::DKIM
оценка DKIM_SIGNED -0,01
метаданные DKIM_UNSIGNED !DKIM_SIGNED
оценка DKIM_UNSIGNED 1
конец

(Присвоение правилу нулевого балла отключает его оценку, поэтому !DKIM_SIGNED всегда было бы правдой. Решение состоит в том, чтобы дать ему тривиальную оценку. Он также использует условное выражение для обеспечения загрузки плагина, в противном случае !DKIM_SIGNED снова всегда будет правдой.)

Однако, Я не рекомендую ни этого, ни возиться с весами DKIM/SPF.

Много спамеров и грязных маркетологов внедряют SPF и DKIM. Кроме того, есть все атаки, которые происходят через провайдеров бесплатной почты, таких как GMail, Yahoo, Hotmail/Outlook и т. д.Эти инфраструктуры все иметь правильную подпись DKIM и SPF. Вы бы придали всем им большой вес (-2), из-за чего SpamAssassin было бы намного сложнее их осудить.

Точно так же многие законные почтовые сообщения не могут использовать (или неправильно реализовать) ни SPF, ни DKIM.

Вы можете посмотреть это и увидеть: рассмотрите общедоступные журналы контроля качества SpamAssassin Rule за 2022-01-12. Поскольку они не запускают плагин DKIM во всех тестах, давайте посмотрим на __DKIM_EXISTS (есть заголовок подписи DKIM) вместо DKIM_SIGNED (есть правильно отформатированный заголовок подписи DKIM) или DKIM_VALID (соответствует). __DKIM_EXISTS почти идентичен DKIM_SIGNED.

22,5% спама и 71,4% ветчины имеют DKIM, то есть 87,5% спама и 38,6% ветчины не имеют его.

Ты В самом деле хотите убрать 2 балла из ~четверти вашего спама и добавить 1 балл к ~трети вашей ветчины?


Вместо этого я бы рекомендовал явно благословлять заведомо безопасные домены:

whitelist_from_dkim *@safe.example.com *@serverfault.com
whitelist_from_spf *@safe.example.com *@serverfault.com

Это разрешает действительную почту с подписью DKIM и авторизацию SPF только из перечисленных доменов. Вы также можете использовать def_whitelist_from_dkim и def_whitelist_from_spf для более легкого веса ветчины.

Вы также можете сделать это автоматически через TxRep, но только после того, как убедитесь, что вы правильно используете IP DNSBL (видеть DnsBlocklists). Я бы сказал, что DNSBL и байесовская проверка контента — два лучших оружия для борьбы со спамом в целом.

флаг jp
Отличный ответ! Только политика DMARC может определить, является ли неподписанное сообщение проблемой или нет. Кроме того, неудачные проверки SPF или DMARC также могут быть использованы для *отклонения на этапе подключения*.
флаг gb
Я только что добавил к своему ответу данные об эффективности, которые усиливают мнение Эсы и мое мнение «не делай этого». Я _очень_ настоятельно не рекомендую действия SMTP для SPF. Просто DMARC, и даже это вызывает некоторые сомнения у более консервативных администраторов, учитывая неправильные конфигурации.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.