2

Я использовал 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 использовать спам (и, следовательно, обеспечить согласованность)?

3 ответа3

1

1-й вопрос:

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

Я знаю, что вы видели эту ссылку часто задаваемые вопросы, но ответ, кажется, здесь. В FAQ не могут быть прописаны точные переменные "$ sa_" (или другого типа) /etc, которые могут вам понадобиться в /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_ variable /etc.

Замечания:

Если вы работаете в Ubuntu (и, возможно, в Debian), существует также глобальный файл user_pref/config Spamassassin для amavis, который находится по адресу : /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
0

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

0

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .