Problèmes d'emplacement de la méthode d'objet Spamassassin après redémarrage

11

Après que spamassassin a été redémarré ce matin par le cronjob quotidien, il est en train d'inonder le syslog avec les erreurs suivantes:

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

J'ai déjà vérifié s'il y avait des mises à niveau sans assistance. J'ai également vérifié Mail :: SpamAssassin :: PerMsgStatus via CPAN mais il est déjà installé. Le système d'exploitation est Ubuntu Server 12.04.5 LTS et aucune mise à jour n'est en attente. Comment puis-je résoudre cette erreur?

devnull
la source
2
Voici un "moi aussi". Cela a commencé à se produire après une sa-updateanalyse, donc probablement de nouveaux chèques ont été libérés qui n'auraient peut-être pas dû l'être.
wurtel
1
Apparemment, ces règles ont été ajoutées dans svn.apache.org/r1656028 le 30 janvier 2015, donc une nouvelle version spamassassinserait nécessaire pour interpréter ces règles ( Mail::SpamAssassin::Plugin::SPFest modifiée dans le même commit). Vraisemblablement, les nouvelles règles se sont échappées trop tôt et cela sera bientôt révoqué. C'est déjà arrivé.
wurtel
3
Un autre "moi aussi" ici. Debian 7 Wheezy 64 bits, l'erreur est apparue ce matin. Nous espérons une solution bientôt!
lucaferrario
Heureux d'apprendre que je ne suis pas le seul. J'espère que cela reviendra bientôt.
devnull
Pour Debian Wheezy, une mise à jour automatique a résolu le problème ce matin avec des règles réécrites en /var/lib/spamassassin/.../.../25-spf.cf.
mivk

Réponses:

6

Il peut être un peu plus facile d'aller dans le répertoire de mise à jour (quelque chose comme /var/lib/spamassassin/3.003002/updates_spamassassin_org) et de commenter toutes les lignes contenant T_SPF_PERMERRORou T_SPF_TEMPERROR, comme:

# header T_SPF_PERMERROR         eval:check_for_spf_permerror()

etc. au lieu de mettre à niveau ou de sélectionner en amont les modifications en amont. Si vous utilisez des mises à jour automatiques, vous voudrez peut-être passer au manuel jusqu'à ce qu'elles réalisent leur problème (ce qui ne semble pas être le cas pour l'instant).

sourire
la source
C'est bien. Je viens de mettre à jour le fichier et de commenter toutes les lignes productrices d'erreurs mentionnées dans mes journaux. Cela semble être une bonne solution temporaire!
devnull
Les modifications apportées au fichier 25_spf.cf seront écrasées, semble-t-il par les mises à jour régulières de spamassassin.
Michael Franzl
Oui en effet. Mais c'est une solution temporaire qui ne nécessite pas d'installer de versions de package non prises en charge.
devnull
1

Sur Debian Wheezy, les travaux suivants sont pour moi:

Dans

/etc/spamassassin/init.pre

commenter le plugin SPF

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

Ensuite, le travail de mise à jour fonctionnera à nouveau sans erreur.

c'est bon
la source
Cela désactiverait également les règles T_SPF_ * préexistantes et fonctionnelles telles que T_SPF_PASS et T_SPF_FAIL.
Boyd Stephen Smith Jr.,
0

Vous pouvez copier le dernier SPF.pm dans / usr / share / perl5 / Mail / SpamAssassin / Plugin à condition que vous utilisiez la 3.4 Veuillez ne pas oublier de sauvegarder le fichier d'origine.

Szépe Viktor
la source
Merci pour votre réponse, mais depuis que je suis précis, j'ai installé le lien spamassassin 3.3.2-2ubuntu1.
devnull
Vous pouvez toujours essayer d'installer la nouvelle version de SPF.pm
Szépe Viktor
Parce que SA est écrit en Perl, vous pouvez installer packages.ubuntu.com/trusty/spamassassin
Szépe Viktor
Wheezy est 3.3.2-5 + deb7u2, donc probablement pas tenable pour moi non plus.
Boyd Stephen Smith Jr.,
0

Installez simplement le backported spamassassin. Ajoutez ceci à /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

et courir:

$ apt-get install -t wheezy-backports spamassassin 
ThCTlo
la source