Plesk 8.01, Spamassassin, qmail und procmail

Thorti

New Member
Plesk 8.01, Spamassassin, qmail und procmail (solved)

Hy,

ich habe einen vServer mit SuSE 10 und Plesk 8.0.1. Ich möchte gerne eine serverseitige Sortierung meiner Mails in verschiedene Ordner vornehmen. Dafür nimmt man meines Wissens procmail. Allerdings werde ich nicht schlau aus diversen HowTos und Anleitungen, die ich per Google finde.

Der aktuelle Stand ist folgender: Wenn ich mit Plesk eine eMail-Konto erstelle, ist Spamassissin bereits aktiviert mit der "Standard-Einstellung" Score 7, dem Spamtag "***** SPAM *****" und die Spam-Mail als Attachment mit einem Hinweis zusenden.

Wenn ich jetzt per Shell auf den Server schaue, richtet er mir folgende Ordner ein:

/var/qmail/mailnames/domain.tld/testmail/
/var/qmail/mailnames/domain.tld/testmail/@attachments
/var/qmail/mailnames/domain.tld/testmail/Maildir
/var/qmail/mailnames/domain.tld/testmail/Maildir/cur
/var/qmail/mailnames/domain.tld/testmail/Maildir/new
/var/qmail/mailnames/domain.tld/testmail/Maildir/tmp
/var/qmail/mailnames/domain.tld/testmail/.spamassissin

dort liegen dann folgende Files:

/var/qmail/mailnames/domain.tld/testmail/.qmail
/var/qmail/mailnames/domain.tld/testmail/.spamassissin/user_prefs

Der Inhalt der .qmail sieht wie folgt aus:

Code:
| if [ -z "$SA" ]; then export SA=1; /usr/local/psa/bin/psa-spamc -u [email protected] -U /tmp/spamd_light.sock > spamcheck$$; if [ -s spamcheck$$ ]; then /var/qmail/bin/qmail-local "$USER" "$HOME" "$LOCAL" "" "" "$HOST" "$SENDER" "$DEFAULT" < spamcheck$$; retval=$?; rm -f spamcheck$$; [ $retval = 0 ] && exit 99; exit $retval; fi; rm -f spamcheck$$; fi # ACCEPT UCE
| true
./Maildir/

Wo binde ich da jetzt wie den Procmail ein ? Der Versuch einfach "preline /usr/bin/procmail -m .procmailsc" hintendran zu hängen schlug fehl. Ein Test mit "tee" ergab, daß procmail nix übergeben bekommt. Stelle ich diesen Befehl vor den Block, kriegt Procmail zwar die Mail übergeben und bearbeitet sie auch, aber Spamassassin bekommt sie dann nicht mehr.
Wo binde ich procmail ein, so daß SA vor Procmail läuft und beide aufgerufen werden ?
 
Last edited by a moderator:
Nach einen Update auf Plesk 8.1.0 schaut die .qmail jetzt ein wenig anders aus:

Code:
| /usr/local/psa/bin/psa-spamc accept
./Maildir/

Da einfach nen "| preline /usr/bin/procmail -m .procmailrc" zwischen brachte die Lösung dann.
Und um zu verhindern, daß die Mails nach der Sortierung doch noch im Posteingang landen (bzw. doppelt sind) muß man einfach noch das "./Maildir/" am Ende rauslöschen....

Code:
| /usr/local/psa/bin/psa-spamc accept
| preline /usr/bin/procmail -m .procmailrc
 
Last edited by a moderator:
Hallo,
habe ein ähnliches Problem. Erstmal die Frage an Thorti, wie
sieht denn Deine .procmailrc aus?
Mein Anliegen ist es, die Mails, die als Spam erkannt werden an
eine zweite e-mail-Adresse weiterzuleiten und alle übrigen Mails
ganz normal "durchlaufen" zu lassen.
Meine .qmail sieht folgendermaßen aus:
Code:
| /usr/local/psa/bin/psa-spamc accept
| true
./Maildir/
was genau das | true darin bewirkt, habe ich nicht genau verstanden.
Ich habe die Datei dann folgendermaßen angepasst:
Code:
| /usr/local/psa/bin/psa-spamc accept
| true
| preline /usr/bin/procmail -m .procmailrc
./Maildir/
Meine .procmailrc sah dann zum Testen erstmal so aus:
Code:
:0
* ^Subject.*xxxxSPAMxxxx
! [email protected]
Nach diesen Änderungen kamen die nicht-spam-Mails aber
dann schon nicht mehr durch, die spam-Mails wurden aber korrekt
weitergeleitet und lagen auch zusätzlich dann noch im normalen Postfach.
Nun meine Fragen, was mache ich falsch und wie würde es funktionieren?
Für Tipps bin ich sehr dankbar :)

Grüße, Reno

PS: Hat sich erledigt. Bin im Netz doch noch auf eine Anleitung gestoßen, die mir bei
meinem Problem weiter helfen konnte. Hätte vor meinem Posting doch noch gründlicher
recherchieren sollen. Entschuldigung.
 
Last edited by a moderator:
Hi,

ich habe auch ewig gegoogelt und irgendwann ging es aufeinmal *g*

Ich habe das bei mir so gelöst:

in /var/qmail/mailnames/domain.de/user die .qmail wie folgt verändert:

Code:
| /usr/local/psa/bin/psa-spamc accept
| preline /usr/bin/procmail -m -o ./Maildir/.procmailrc

Danach in /var/qmail/mailnames/domain.de/user/Maildir die .procmailrc angelegt mit folgendem Inhalt:

Code:
MAILDIR=/var/qmail/mailnames/domain.de/user/Maildir
DEFAULT=${MAILDIR}/
LOGFILE=${MAILDIR}/procmail.log
LOG="--- Logging ${LOGFILE} for ${LOGNAME} "

# SPAM-Mails in den bestehenden .Junk Ordner verschieben
:0
* ^X-Spam-Flag: YES.*
$MAILDIR/.Junk/new

# ebay-Mails  in den bestehenden .ebay Ordner verschieben
:0
* ^From: .*@ebay.de
$MAILDIR/.ebay/new

...

Wichtig dabei ist, dass die .procmailrc dem User und der Gruppe popuser gehört:

Code:
-rw-r--r--  1 popuser popuser    672 19. Sep 12:46 .procmailrc

So geht es bei mir...
 
Last edited by a moderator:
Also ich wollte mich bei Schickel bedanken, weil nach seiner Beschreibung es auch bei mir mit Procmail geklappt hat.
Vieleicht als Hinweis oder Hilfe gedacht möchte ich auch zu den Einstellungen von Spamassassin schreiben.
Da die Standardeinstellung und die Punktevergabe ein wenig hinken gebe ich mal ein paar kleine modifikationen für eine idealere Einstellung.
1)Zuerst ist die Änderung des auto-learn wichtig denn im Anfangszustand fängt sie erst bei einem Score von 12 einzutreten. Daher im local.cf oder in der jeweiligen Domain im user_pref Datei folgendes eintragen->
Code:
bayes_auto_learn_threshold_spam 6.0
niedriger geht der wert leider nicht.
2) Den Wert würde ich auf 5 ändern 7 ist zu Hoch.
Code:
required_score	5.00
3)Die Bayes Werte sind zu niedrig daher würde ich Sie mit dem Eintrag
Code:
score BAYES_95 0 0 3.50 3.50
score BAYES_99 0 0 4.00 4.00
ändern.

Ach ja zu den Header-Eintrag mit auto-learn=no macht er schon nach einem aufgenommen E-Mail den er vorher als auto-learn=spam geschrieben hatte weiterhin, also es ist bei gleichen E-Mails Ok.
 
Back
Top