Probleme mit der Position der Spamassassin-Objektmethode nach dem Neustart

11

Nachdem Spamassassin heute Morgen durch den täglichen Cronjob neu gestartet wurde, überflutet es das Syslog mit den folgenden Fehlern:

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

Ich habe bereits überprüft, ob unbeaufsichtigte Upgrades vorhanden waren. Ich habe auch Mail :: SpamAssassin :: PerMsgStatus über CPAN überprüft, aber es ist bereits installiert. Betriebssystem ist Ubuntu Server 12.04.5 LTS und es gibt keine ausstehenden Updates. Wie kann ich diesen Fehler beheben?

devnull
quelle
2
Hier ist ein "ich auch". Dies begann nach einem sa-updateLauf, so dass vermutlich einige neue Prüfungen veröffentlicht wurden, die es vielleicht nicht hätten geben sollen.
Wurtel
1
Anscheinend wurden diese Regeln am 30. Januar 2015 in svn.apache.org/r1656028 hinzugefügt , sodass spamassassinzur Interpretation dieser Regeln eine neuere erforderlich wäre ( Mail::SpamAssassin::Plugin::SPFwird im selben Commit geändert). Vermutlich sind die neuen Regeln zu früh entkommen und werden bald wieder rückgängig gemacht. Es ist schon mal passiert.
Wurtel
3
Ein weiteres "mee too" hier. Debian 7 keuchend 64 Bit, der Fehler ist heute Morgen aufgetreten. Wir hoffen auf eine baldige Lösung!
Lucaferrario
Freut mich zu hören, dass ich nicht der einzige bin. Ich hoffe es wird bald wieder hergestellt.
devnull
Für Debian Wheezy hat ein automatisches Update das Problem heute Morgen mit neu geschriebenen Regeln behoben /var/lib/spamassassin/.../.../25-spf.cf.
Mivk

Antworten:

6

Es kann ein bisschen einfacher sein, in das Update-Verzeichnis zu gehen (so etwas wie /var/lib/spamassassin/3.003002/updates_spamassassin_org) und alle Zeilen zu kommentieren, die T_SPF_PERMERRORoder enthalten T_SPF_TEMPERROR:

# header T_SPF_PERMERROR         eval:check_for_spf_permerror()

usw., anstatt Upstream-Änderungen zu aktualisieren oder zu überprüfen. Wenn Sie automatische Updates verwenden, möchten Sie möglicherweise manuell vorgehen, bis sie ihr Problem erkannt haben (was derzeit noch nicht der Fall zu sein scheint).

Grinsen
quelle
Das ist toll. Ich habe gerade die Datei aktualisiert und alle in meinen Protokollen erwähnten fehlererzeugenden Zeilen auskommentiert. Dies scheint eine gute vorübergehende Lösung zu sein!
devnull
Änderungen an der Datei 25_spf.cf werden überschrieben, wie es scheint, durch regelmäßige Spamassassin-Updates.
Michael Franzl
Ja, genau. Es handelt sich jedoch um eine funktionierende temporäre Lösung, bei der keine nicht unterstützten Paketversionen installiert werden müssen.
devnull
1

Auf Debian Wheezy funktioniert folgendes für mich:

Im

/etc/spamassassin/init.pre

Kommentieren Sie das SPF-Plugin

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

Danach funktioniert der Update-Job wieder fehlerfrei.

Es ist in Ordnung
quelle
Dies würde auch die bereits vorhandenen, funktionierenden T_SPF_ * -Regeln wie T_SPF_PASS und T_SPF_FAIL deaktivieren.
Boyd Stephen Smith Jr.
0

Sie können die neueste SPF.pm in / usr / share / perl5 / Mail / SpamAssassin / Plugin kopieren, sofern Sie 3.4 verwenden. Vergessen Sie nicht, die Originaldatei zu sichern.

Szépe Viktor
quelle
Vielen Dank für Ihre Antwort, aber da ich genau bin, habe ich Link Spamassassin 3.3.2-2ubuntu1 installiert .
devnull
Sie können immer noch versuchen , die neue Version von SPF.pm
Szépe Viktor
Da SA in Perl geschrieben ist, können Sie packages.ubuntu.com/trusty/spamassassin
Szépe Viktor
Wheezy ist 3.3.2-5 + deb7u2, also wahrscheinlich auch für mich nicht haltbar.
Boyd Stephen Smith Jr.
0

Installieren Sie einfach die Backported spamassassin. Fügen Sie dies hinzu zu /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

und Renn:

$ apt-get install -t wheezy-backports spamassassin 
ThCTlo
quelle