Как надежно настроить пользовательские правила Spamassassin с помощью Amavisd (в Ubuntu)

2529
aSteve

Я использовал Amavisd со Spamassassin в течение многих лет ... моя конфигурация работала (хотя, возможно, она никогда не была "правильной"), похоже, конфигурация /etc/spamassassin/local.cf игнорируется, когда функция spamassassin игнорируется. вызывается amavisd-new

Я использую довольно ванильную конфигурацию:

  • Ubuntu (14.04.4 LTS)
  • Postfix (2.11.0-1ubuntu1) - smtpd (и друзья) в качестве постфикса
  • Spamassassin (3.4.0) - спам как корень
  • amavisd-new (2.7.1) - как амавис

Postfix, spamassassin и amavisd все работают как службы, а почта доставляется с оценками spamassassin. База данных байесов находится в ~ amavis / .spamassassin / bayes_ *.

Я озадачен, потому что кажется, что конфигурация, которую я поместил в /etc/spamassassin/local.cf (например, новая оценка для определенного правила), игнорируется для сообщений, обрабатываемых amavisd, но не игнорируется, когда я запускаю spamc или "spamassassin -D -t" из аккаунта amavis. Когда я помещаю эквивалентную конфигурацию в ~ amavis / .spamassassin / user_prefs - это также, похоже, не влияет на результаты обработки amavisd-new.

Я изначально настроил со ссылкой (что-то вроде) это: https://help.ubuntu.com/community/PostfixAmavisNew

Я также рассмотрел эти идеи (безрезультатно): https://www.ijs.si/software/amavisd/#faq-spam

Что я хотел бы знать, это:

  • Почему мои собственные значения "показателя" в /etc/spamassassin/local.cf игнорируются, только когда spamassassin используется через amavisd-new?
  • Есть ли отличный способ заставить amavisd использовать спам (и, следовательно, обеспечить согласованность)?
2

3 ответа на вопрос

1
bshea

1-й вопрос:

Во-первых, чтобы быть ясным: файлы конфигурации Spamassassin используются - они не «пропускаются». Я видел, как другие сообщают, что они вообще не используются.

Я знаю, что вы видели эту ссылку часто задаваемые вопросы, но ответ, кажется, здесь. Часто задаваемые вопросы могут не содержать точных переменных $ sa_ (или другого типа), которые могут вам понадобиться /etc/amavis/conf.d/50-user, но в них подробно рассказывается о том, как все запускается и читается. Может показаться, что amavis-new вас просто «игнорирует» в конфигурации local.cf SA. Это зависит от параметров конфигурации - некоторые параметры local.cf могут работать, а некоторые - нет.

Но вы также не упомянули, какие именно опции (пользовательские правила я предполагаю?) У вас есть в local.cf, которые не используются (или игнорируются / undef'd amavis-new).

https://www.ijs.si/software/amavisd/#faq-spam :

SA наблюдает все настройки в своем файле конфигурации, но не все они влияют на проверяемую почту, так как amavisd-new принимает свои собственные решения на основе оценки спама (хитов) (поэтому, например, required_hits не имеет никакого эффекта - используйте tag / tag2 / kill amavisd-new settings), и выполняет собственное редактирование заголовка, а тело не изменяется. Продолжайте читать для связанной информации.

Без дальнейших подробностей о том, какие конкретные параметры SA local.cf игнорируются, это ваш ответ. Вам нужно будет опубликовать более конкретную информацию.

2-й вопрос:

Да, вы можете гипотетически использовать SA в качестве отдельного фильтра содержимого через Postfix / MTA / etc. Тем не менее, вам лучше остаться с amavis-new в качестве контроллера SA MTA. Вы должны быть в состоянии воспроизвести то, что вам нужно сделать в SA, через новую конфигурацию Amavis и / или $sa_переменные / etc.

Замечания:

Если работает под Ubuntu (и, возможно, Debian), существует также глобальный AMaViS-новый Spamassassin файл user_pref / конфигурации в: /var/lib/amavis/.spamassassin/user_prefs.
Я добавил пользовательские правила SA в этот файл - и они работают нормально.

Вы также можете убить основной процесс amavis и попробовать: sudo amavisd-new debug-saполучить вывод о том, что SA делает / читает / компилирует / и т.д. (Имя / местоположение Debian / Ubuntu)

Пример LOG показывает конфигурацию amavis-new, считывающую некоторые файлы конфигурации SA:

mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: using "/etc/spamassassin" for site rules pre files mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/init.pre mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/sa-compile.pre mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/v310.pre mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/v312.pre mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/v320.pre mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/v330.pre mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/v340.pre mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/v341.pre mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: using "/usr/share/spamassassin" for sys rules pre files 

...

mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: using "/etc/spamassassin" for site rules dir mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/65_debian.cf mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: read file /etc/spamassassin/local.cf mail.example.net /usr/sbin/amavisd-new[30358]: SA dbg: config: using "/var/lib/amavis/.spamassassin/user_prefs" for user prefs file 
Спасибо, я не мог понять, где на самом деле находится файл `/ var / lib / amavis / .spamassassin / user_prefs`. tedivm 6 лет назад 1
Да, это должно быть расположение глобального файла конфигурации пользователя SA, установленного Ubuntu amavisd-new repo pkg. bshea 6 лет назад 0
0
Ryan H.

amavisd-new использует свой собственный конфиг. Эти файлы конфигурации находятся в /etc/amavis/conf.d/. В частности, in 20-debian_defaults, $sa_kill_level_defltявляется «эквивалентом» SpamAssassin's required_score(находится в /etc/spamassassin/local.cf).

По моему опыту, результат, полученный с помощью amavis и спамсассина напрямую, никогда не бывает одинаковым, и я еще не выяснил, почему, поэтому при настройке $sa_kill_level_defltвам нужно будет найти подходящее значение, которое может не совпадать с required_score,

0
chandon

После добавления пользовательских правил в local.cf не забудьте запустить spamassassin --lint и перезапустить spamassassin и amavis daemon

Можете ли вы быть немного более конкретным со своими подробностями, подумайте над добавлением некоторых ссылок и доказательств, подтверждающих то, что вы заявляете, и подтверждения того, что этот ответ еще не дан в одном из существующих ответов на этот пост, если это применимо? Pimp Juice IT 7 лет назад 0

Похожие вопросы