Hi Sven,
Mag vielleicht auf das gleiche hinauslaufen, hat aber die Absicht, die Mails auch wieder per SMTP loszuwerden.
Ok, das ist mir mittlerweile klar geworden ;-) Du sprachst mydestination an - ich hab die Doku mal etwas auf den Kopf gestellt und das hier gefunden:
"NEVER list a virtual MAILBOX domain name as a mydestination domain!"
Leider steht keine Begründung dabei, stattdessen benutzen die jedoch virtual_mailbox_domains, sodass ich meine Konfiguration nun so angepasst habe:
mydestination = $myhostname, localhost.localdomain, localhost
relayhost =
relay_domains =
virtual_mailbox_domains = mysql:/etc/postfix/mysql-acc/transport
Die mit mysql-acc/transport angesprochene Tabelle sieht so aus:
domain | transport
-------------+-----------
example.com | virtual:
example.org | virtual:
Soweit ich weiß, ist die zweite Spalte allerdings nur ein Platzhalter...
Steckst du alle Bedingungen in nur eine einzige (schlauerweise eben die letzte) Gruppe, wird in dieser schön der Reihenfolge nach alles geprüft. Und wenn ein Text OK ergibt, dann ist das wirklich endgültig OK und führt zum Empfang.
OK - vielen Dank für die ausführliche Erklärung :-) Das erscheint mir sinnvoll.
Greylisting ist eine der zwei erfolgreichsten Waffen gegen blöden Spam. Die andere Waffe ist eine strenge Prüfung der Angabe HELO.
Ich habe mir gerade mal Greylisting in Wikipedia durchgelesen, ich werde demnächst sicherlich mal versuchen dieses Greylisting zu implementieren.
Wie funktioniert die strengere Prüfung der Angabe HELO? Was soll ein Server eigentlich in der HELO Angabe übermitteln? Bei meinen Tests ist es relativ egal, was ich da rein schreibe...
check_recipient_access hash:/etc/postfix/spamfilter-lookup
Das ist der benutzerabhängige Teil weiterer Filterungen. Da habe ich vier unterschiedlich harte Filter definiert, die abhängig von der Zieladresse noch zusätzlich zum Einsatz kommen.
An dieser Stelle hänge ich wieder ein bisschen - ich kann grade nicht ganz nachvollziehen, wie die spamfilter-lookup Tabelle aussehen soll. Das Postfix Handbuch sagt zu check_repipient_access:
"Search the specified access(5) database for the resolved RCPT TO address, domain,
parent domains, or localpart@, and execute the corresponding action."
Die von dieser Tabelle zurückgelieferte "action" soll also ausgeführt werden, doch wie hat diese action auzusehen? Einfach der Name der Restriktions-Klasse? Sähe eine Tabelle also so aus:
adresse | action
----------------+------------
foo@example.org | userlevel1 <- Nach deiner Definition niedriger Spamschutz
bar@example.com | sammeladdr <- Nach d.D. hoher Spammschutz
Wäre da mal noch für ein Beispiel dankbar :-) Ich sehe grade, dass du noch eine Antwort geschrieben hast, also werde ich die jetzt gleich mal lesen ;-)
MfG, Dennis.
Mein SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:# ss:) de:] js:| ch:{ sh:| mo:} zu:|
Patch zur Verwendung von PATHINFO in JLog
Man sollte nie aufhören zu fragen. (Albert Einstein)