Проблемы с расположением объекта Spamassassin после перезапуска


11

После того, как spamassassin был перезапущен ежедневным cronjob этим утром, он заполняет системный журнал со следующими ошибками:

Feb  9 09:24:26 mail spamd[8766]: spamd: got connection over /var/run/spamd.socket
Feb  9 09:24:26 mail spamd[8766]: spamd: setuid to Debian-exim succeeded
Feb  9 09:24:26 mail spamd[8766]: spamd: checking message <004c01d0444a$01d5a905$d690a59f@kiffyv> for Debian-exim:106
Feb  9 09:24:26 mail spamd[8766]: rules: failed to run T_SPF_HELO_PERMERROR test, skipping:
Feb  9 09:24:26 mail spamd[8766]:  (Can't locate object method "check_for_spf_helo_permerror" via package "Mail: [...]:SpamAssassin::PerMsgStatus" at (eval 1169) line 19.
Feb  9 09:24:26 mail spamd[8766]: )
Feb  9 09:24:28 mail spamd[8766]: rules: failed to run T_SPF_TEMPERROR test, skipping:
Feb  9 09:24:28 mail spamd[8766]:  (Can't locate object method "check_for_spf_temperror" via package "Mail: [...]:SpamAssassin::PerMsgStatus" at (eval 1169) line 614.
Feb  9 09:24:28 mail spamd[8766]: )
Feb  9 09:24:28 mail spamd[8766]: rules: failed to run T_SPF_PERMERROR test, skipping:
Feb  9 09:24:28 mail spamd[8766]:  (Can't locate object method "check_for_spf_permerror" via package "Mail: [...]:SpamAssassin::PerMsgStatus" at (eval 1169) line 784.
Feb  9 09:24:28 mail spamd[8766]: )
Feb  9 09:24:28 mail spamd[8766]: rules: failed to run T_SPF_HELO_TEMPERROR test, skipping:
Feb  9 09:24:28 mail spamd[8766]:  (Can't locate object method "check_for_spf_helo_temperror" via package "Mail: [...]:SpamAssassin::PerMsgStatus" at (eval 1169) line 1129.
Feb  9 09:24:28 mail spamd[8766]: )
Feb  9 09:24:29 mail spamd[8766]: spamd: identified spam (26.6/5.0) for Debian-exim:106 in 3.1 seconds, 821 bytes.
Feb  9 09:24:29 mail spamd[8766]: spamd: result: Y 26 - AXB_XMAILER_MIMEOLE_OL_024C2,BAYES_99,BAYES_999,DOS_OE_TO_MX,NAME_EMAIL_DIFF,RAZOR2_CF_RANGE_51_100,RAZOR2_CF_RANGE_E8_51_100,RAZOR2_CHECK,RCVD_IN_BRBL_LASTEXT,RCVD_IN_PSBL,RCV
Feb  9 09:24:30 mail spamd[8759]: prefork: child states: II

Я уже проверил, были ли какие-либо автоматические обновления. Также я проверил Mail :: SpamAssassin :: PerMsgStatus через CPAN, но он уже установлен. Операционная система - Ubuntu Server 12.04.5 LTS, обновлений нет. Как я могу устранить эту ошибку?


2
Вот "я тоже". Это начало происходить после sa-updateзапуска, так что, вероятно, были выпущены некоторые новые проверки, которые, возможно, не должны были быть.
wurtel

1
Очевидно, эти правила были добавлены в svn.apache.org/r1656028 30 января 2015 года, поэтому spamassassinдля интерпретации этих правил потребуется более новое ( Mail::SpamAssassin::Plugin::SPFизменено в том же коммите). Предположительно, новые правила вышли слишком рано, и это скоро будет отменено. Это случилось раньше.
wurtel

3
Еще одно "я тоже" здесь. Debian 7 wheezy 64 bit, ошибка появилась сегодня утром. Мы надеемся на исправление в ближайшее время!
Lucaferrario

Рад слышать, что я не единственный. Я надеюсь, что это скоро вернется.
devnull

Для Debian Wheezy автоматическое обновление решило проблему сегодня утром с переписанными правилами в /var/lib/spamassassin/.../.../25-spf.cf.
Mivk

Ответы:


6

Возможно, будет проще перейти в каталог обновлений (что-то вроде /var/lib/spamassassin/3.003002/updates_spamassassin_org) и закомментировать все строки, содержащие T_SPF_PERMERRORили T_SPF_TEMPERROR, например:

# header T_SPF_PERMERROR         eval:check_for_spf_permerror()

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


Это здорово. Я только что обновил файл и закомментировал все строки ошибок, упомянутые в моих журналах. Это кажется хорошим временным исправлением!
devnull

Изменения в файле 25_spf.cf будут перезаписаны, кажется, регулярные обновления spamassassin.
Майкл Францль

Да правильно. Но это временное рабочее решение, которое не требует установки каких-либо неподдерживаемых версий пакетов.
Devnull

1

На Debian Wheezy у меня работает следующее:

В

/etc/spamassassin/init.pre

прокомментируйте плагин SPF

# SPF - perform SPF verification.
#
#loadplugin Mail::SpamAssassin::Plugin::SPF

После этого задание обновления снова будет работать без ошибок.


Это также отключило бы ранее существующие рабочие правила T_SPF_ *, такие как T_SPF_PASS и T_SPF_FAIL.
Бойд Стивен Смит-младший

0

Вы можете скопировать последний SPF.pm в / usr / share / perl5 / Mail / SpamAssassin / Plugin, если вы используете 3.4. Не забывайте о резервном копировании исходного файла.


Спасибо за ваш ответ, но так как я нахожусь на точной, я установил ссылку spamassassin 3.3.2-2ubuntu1.
devnull

Вы все еще можете попробовать установить новую версию SPF.pm
Szépe Viktor

Поскольку SA написана на Perl, вы можете установить packages.ubuntu.com/trusty/spamassassin
Szépe Viktor

Wheezy 3.3.2-5 + deb7u2, так что, вероятно, я тоже не нахожусь.
Бойд Стивен Смит-младший

0

Просто установите бэкпорт spamassassin. Добавьте это к /etc/apt/sources.list.d/debian-wheezy-backports.list:

deb http://ftp.nl.debian.org/debian/ wheezy-backports main contrib non-free
deb-src http://ftp.nl.debian.org/debian/ wheezy-backports main contrib non-free

и запустить:

$ apt-get install -t wheezy-backports spamassassin 
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.