Spamassassin local.cf nimmt keine Veränderung mehr an

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
erichg
Posts: 15
Joined: 2003-11-20 20:36

Spamassassin local.cf nimmt keine Veränderung mehr an

Post by erichg » 2004-01-26 22:17

Hallo Spamassassin-Spezialisten,

ich habe das Problem, dass Spamassassin bzw. spamd keine Veränderungen mehr annimmt. Die Installation habe ich irgendwie fertig gebracht, aber ich glaube, ich habe mich mit meinen Einstellungen total verheddert. Ich habe schon viel gelesen, finde aber keine Hilfe für mich darin. (Ich bin kein Spezialist, arbeite mich erst seit 4 Monaten in den Server ein)

Mein Text ist ein wenig lang, aber wegen evtl. Nachfragen habe ich genauere Angaben gemacht...

Erst mal meine Konfiguration:
-----------------------------
Eigener Roootserver (nicht 1&1 oder so, trotzdem mit Confixx -egal), Suse 8.1, Postfix, Spamassassin 2.60, dcc, pyzor, razor2 (mit patch), UW Imap, Squirrelmail mit spamassassin plugin für User (soll irgendwann funktionieren), mysql mit db spamassassin, tabelle userpref. Eintragungen sind schon vorhanden, werden aber nicht für die User abgeholt).
Spamassassin läuft z. Zeit mit Voreinstellung 5 und Ausgabe [SPAM], was ich zu allererst eingestellt hatte, aber jetzt kann ich nichts mehr einstellen.

Ich kann in die /etc/mail/spamassassin/local.cf reinschreiben was ich will, es wird nix mehr angenommen. (wahrscheinlich falsche Befehle?):
-> ist â??postfix stopâ??, â??postfix startâ?? und â??postfix restartâ?? zum neu Einlesen richtig?


spamd stop|start sagt zu mir:
-----------------------------

Code: Select all

#Could not create INET socket: Address already in use IO::Socket::INET: Address already in use
-> Habe keine Ahnung, was da zu tun ist! (Ist der Befehl überhaupt richtig?)


ps ax |grep spamd sagt zu mir:
------------------------------

Code: Select all

30086 ?    S  0:13 /usr/bin/perl -T -w /usr/bin/spamd -d 
-> das ist doch total falsch! Ich brauche doch spamd â??d â??c -a â??q -x (-q â??x wegen der sql-Datenbank für Usereinstellungen) . Wie und wo kann ich denn das einstellen?


spamd â??D sagt zu mir:
---------------------------

Code: Select all

debug: Score set 0 chosen.
debug: Running in taint mode, removing unsafe env vars, and resetting PATH
debug: PATH included '/sbin', keeping.
debug: PATH included '/usr/sbin', keeping.
debug: PATH included '/usr/local/sbin', keeping.
debug: PATH included '/usr/local/bin', keeping.
debug: PATH included '/usr/bin', keeping.
debug: PATH included '/usr/X11R6/bin', keeping.
debug: PATH included '/bin', keeping.
debug: PATH included '/usr/games', keeping.
debug: PATH included '/opt/gnome/bin', keeping.
debug: Final PATH set to: /sbin:/usr/sbin:/usr/local/sbin:/usr/local/bin:
/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin
Could not create INET socket: Address already in use IO::Socket::INET: Address already in use
-> Angeblich soll man hier sehen, ob DCC, razor2 und pyzor eingebunden wird. Das wird offenbar nicht aus der local.cf übernommenâ?¦



Genauer Inhalt der local.cf
-------------------------------

Code: Select all

auto_whitelist_path /var/spool/spamassassin/auto-whitelist

# required_hits 5 auf 4 gestellt, geht nicht
required_hits 4

rewrite_subject 1
subject_tag *[SPAM]*

report_safe 0

# Utilities verwenden
use_dcc 1
use_pyzor 1
use_razor2 1

# mySQL Datenbank verwenden
user_scores_dsn          DBI:mysql:spamassassin:localhost
user_scores_sql_username <name>
user_scores_sql_password <passwort>
user_scores_sql_table    userpref

-> Darf das Ding evtl. keine Leerzeilen haben???

Eine Gruppe â??filterâ?? mit User â??filterâ?? wurde hizugefügt.
-----------------------------------------------------

Ein temporäres Verzeichnis für ihn angelegt:
mkdir /var/spool/filter
chown filter:filter /var/spool/filter
chmod 0770 /var/spool/filter

-> (Allerdings ist da überhaupt keine Datei drin - ?)


Teile der /etc/postfix/master.cf
-------------------------------------

Code: Select all

# smtp inet Aenderung fuer SPAMASSASSIN (filter hinzugefuegt)
smtp      inet  n       -       n       -       -       smtpd -o content_filter=filter:
#smtps    inet  n       -       n       -       -       smtpd
#  -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
#submission     inet    n       -       n       -       -       smtpd
#  -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
# smtp unix Aenderung fuer SPAMASSASSIN (filter hinzugefuegt)
smtp      unix  -       -       n       -       -       smtp -o content_filter=filter:
---
procmail  unix  -       n       n       -       -       pipe
  flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc ${sender} ${recipient}
# smtp Aenderung fuer SPAMASSASSIN (filter hinzugefuegt)
filter    unix  -       n       n       -       -       pipe
  flags=Rq user=filter argv=/home/filter/sc/filter.sh -f ${sender} -- ${recipient}

Teile der etc/postfix/main.cf
--------------------------------

Code: Select all

mailbox_command = /usr/bin/procmail -f- -a "$USER"
---
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_auth_destination,permit_mynetworks,check_relay_domains
----
Habe in /var/spool/ ein Verzeichnis angelegt:
----------------------------------------------
~# mkdir spamassassin
~# chown filter:filter spamassassin
~# chmod 0770 spamassassin

-> (Allerdings ist da überhaupt keine Datei drin - ?)

Verzeichnis /home/filter/sc ertellt
-----------------------------------------
md /home/filter/sc
-> Darin Datei filter.sh erstellt mit:
touch /home/filter/sc/filter.sh

-> Rechte geändert mit:
chown filter:filter /home/filter/sc/filter.sh
chmod 750 /home/filter/sc/filter.sh

Und hier der Inhalt der Datei filter.sh:
----------------------------------------

Code: Select all

#!/bin/sh
INSPECT_DIR=/var/spool/filter
SENDMAIL=/usr/sbin/sendmail
SPAMASSASSIN=/usr/bin/spamc

# Exit codes from <sysexits.h>
EX_TEMPFAIL=75
EX_UNAVAILABLE=69

cd $INSPECT_DIR || { echo $INSPECT_DIR does not exist; exit $EX_TEMPFAIL; }

# Clean up when done or when aborting.
trap "rm -f in.$$; rm -f out.$$" 0 1 2 3 15

# Parameter for $SPAMASSASSIN
#  -P   Pipe message, don't deliver
#  -x   Disable user config files
#  -a   Use auto-whitelists
# cat | $SPAMASSASSIN -P -x -a > out.$$ || { echo Message content rejected; exit $EX_UNAVAILABLE; }
cat | $SPAMASSASSIN  > out.$$ || { echo Message content rejected; exit $EX_UNAVAILABLE; }

$SENDMAIL -i "$@" < out.$$
exit $?
-------------------

Jetzt habe ich mich so verheddert, dass ich bei allen Installationstexten und Hilfen nur noch Bahnhof verstehe.
Ich bin froh, dass Spamassassin erst mal läuft, würde aber gerne genauer konfigurieren.

Kann mir jemand wieder auf die Sprünge helfen?

Erich

Matthias Diehl
Posts: 315
Joined: 2002-09-24 13:26

Re: Spamassassin local.cf nimmt keine Veränderung mehr an

Post by Matthias Diehl » 2004-01-27 07:46

Ich habe Deinen Text nur überflogen, aber soweit ich mich erinnere müssen die lokalen Settings für SpamAssassin nicht local.cf sondern user_prefs heissen. Nur der Standardwert heisst local.cf

erichg
Posts: 15
Joined: 2003-11-20 20:36

Re: Spamassassin local.cf nimmt keine Veränderung mehr an

Post by erichg » 2004-01-27 10:23

Matthias Diehl wrote:Ich habe Deinen Text nur überflogen, aber soweit ich mich erinnere müssen die lokalen Settings für SpamAssassin nicht local.cf sondern user_prefs heissen. Nur der Standardwert heisst local.cf
Herrje, dann kann es sein, dass Spamassassin durch meine Einstellungen schon auf "User" steht und die Standard-Einstellungen aus der local.cf gar nicht mehr übernimmt? -> "user_prefs" wird (sollte) bei mir über eine Datenbank geholt werden.
Da aber diese Usereinstellungen über spamd -d -q-x usw. aus meiner mySQL-Datenbank auch nicht zugegriffen werden, bleibt er einfach bei seiner "Uralt"-Configuration! :?

Jetzt müsste ich erst einmal spamd mit seinen neuen Parametern -q -x zum Laufen kriegen (siehe oben), nur wie? :?:

Oder wenn das nicht geht, wie stelle ich denn meine Einstellungen wieder von User auf Standard (local.cf) um? :?:

Erich

kenzo
RSAC
Posts: 530
Joined: 2003-07-15 20:30

Re: Spamassassin local.cf nimmt keine Veränderung mehr an

Post by kenzo » 2004-01-27 11:19

Jetzt müsste ich erst einmal spamd mit seinen neuen Parametern -q -x zum Laufen kriegen (siehe oben), nur wie?
Du musst in dem Startskript, in dem spamd gestartet wird, die Optionen ändern. Suche nach diesem Skript.
Oder wenn das nicht geht, wie stelle ich denn meine Einstellungen wieder von User auf Standard (local.cf) um?
"man spamd" sagt:

Code: Select all

        -x, --nouser-config                Disable user config files

ego
Posts: 87
Joined: 2003-07-21 10:18

Re: Spamassassin local.cf nimmt keine Veränderung mehr an

Post by ego » 2004-01-27 13:10

Das Problem hab ich auch. Es liegt einfach daran, daß spamd nicht richtig beendet wird bzw. noch mehrere spamd-Prozesse laufen.
Das Problem ist bei den Entwicklern bekannt.

Beende alle spamd-Prozesse über "ps -C spamd" und dann "kill (PID von spamd)"
Danach kannst du spamd wieder starten.

erichg
Posts: 15
Joined: 2003-11-20 20:36

Re: Spamassassin local.cf nimmt keine Veränderung mehr an

Post by erichg » 2004-02-01 23:22

Beende alle spamd-Prozesse über "ps -C spamd" und dann "kill (PID von spamd)"
Danach kannst du spamd wieder starten.
:lol: Ja, das war's, danke! :lol:

Erich