[Postfixbuch-users] Probleme mit policyd_weight, greylisted und mail delivery
Sandy Drobic
postfixbuch-users at japantest.homelinux.com
Mo Mai 26 10:26:50 CEST 2008
Dirk Hardt wrote:
>
>
> Hallo Herr Felber, hallo Liste.
>
>
>
> Erst einmal ein Dankeschön.
>
>
>
> Nun, ich habe mal angefangen aufzurauemen:
>
>
>
> alias_maps = hash:/etc/aliases
>
> append_dot_mydomain = no
Dein Mailclient sendet HTML und leere Zeilen. Setze ihn besser auf "Plaintext".
>
> smtpd_recipient_restrictions = permit_sasl_authenticated,
> permit_mynetworks, check_relay_domains,
> reject_unauth_destination, check_policy_service
> unix:private/policy check_policy_service inet: 127 . 0.0.1 :
> 10031 check_policy_service inet: 127 . 0.0.1 : 60000
> check_policy_service inet: 127 . 0.0.1 : 12525
> check_client_access hash:/etc/postfix/use_whitelists check_policyd_weight
>
> smtpd_sasl_auth_enable = yes
>
> smtpd_sasl_path = smtpd
>
> smtpd_sasl_security_options = noanonymous
>
> smtpd_sasl_type = cyrus
>
> smtpd_sender_restrictions = reject_rbl_client dnsbl.sorbs.net,
> reject_rbl_client combined.njabl.org, reject_rbl_client
> list.dsbl.org, reject_rbl_client cbl.abuseat.org,
> reject_rbl_client relays.ordb.org, reject_rbl_client
> sbl.spamhaus.org, reject_rbl_client bl.spamcop.net,
> reject_rbl_client opm.blitzed.org, reject_rbl_client
> dnsbl.net.au, reject_rbl_client dul.dnsbl.sorbs.net
Du kannst jeden Check unter smtpd_recipient_restrictions setzen:
- client-Checks
- sender-Checks
- HELO-Checks
- recipient-Checks
check_relay_domains erfüllte (in der Dinosaurierzeit von Postfix 1.x) die
gleiche Funktion wie reject_unauth_destination, ist also völlig überflüssig.
Deine Blacklists scheinen aus der gleichen Epoche zu kommen. Mehrere davon
gibt es gar nicht mehr, andere sind in einer anderen Liste verschmolzen.
In ganz klaren Worten: der Einsatz einer Blacklist bedeutet, dass die
Entscheidung, welche Mails abgewiesen werden, auf einen unbekannten Dritten
verlagert werden, mit dem du keinen Vertrag hast, der dich vor
Fehlentscheidungen schützt. Das mindeste für einen verantwortlichen Postmaster
ist, dass du dir vor dem Einsatz der Liste die Nutzungsbedingungen, den
Einsatzzweck, die Policy durchliest und den Ruf der Liste in relevanten
Mailinglisten recherchierst.
Hier noch eine Empfehlung für die Reihenfolge der Checks:
Logische Reihenfolge bei Checks:
Hier die Reihenfolge, die sich ziemlich logisch ergibt:
smtpd_recipient_restrictions =
reject_non_fqdn_sender
reject_non_fqdn_recipient
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
reject_unlisted_recipient
check_client_access hash:/etc/postfix/whitelist_clients
reject_invalid_hostname
reject_non_fqdn_hostname
check_client_access pcre:/etc/postfix/dynip
reject_unknown_sender_domain
reject_rbl_client zen.spamhaus.org
check_policy_service inet:127.0.0.1:60000
Ich habe reject_unknown_recipient_domain herausgenommen. Hinter
reject_unauth_destination lehnt es nur noch deine eigenen Domains ab, was
keinen Sinn macht und vor der Erlaubnis zum Relayen könnte es normalen
Mailclients oder Mails-Applikationen in die Quere kommen, wenn ein DNS-Fehler
vorliegt. Deshalb lasse ich es aus Robustheitsgründen einfach weg.
Allgemein beschreiben lautet es:
- Erlaube nur vertrauenswürdigen Clients das Relayen
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
- Weise alle Mails an ungültige Empfänger deiner Domain ab:
reject_unlisted_recipient
Dieser Check sorgt dafür, dass die Empfängeradresse überprüft wird, ob sie
existiert. Ohne diese Anweisung geschieht dies am Ende der
smtpd_recipient_restrictions, was bei Greylisting und Blacklists etc. keinen
Sinn macht. Die meisten Greylisting-Manuals schreiben dies auch explizit in
ihrer Installationsanleitung.
- Alle Mails, die jetzt noch von extern angenommen werden, können zugestellt
werden. Damit werden keine Mails mehr nach extern gebounced.
Jetzt sollte das Fangnetz für die Trotteladmins bereitgestellt werden (AKA
Whitelist).
check_client_access hash:/etc/postfix/whitelist_clients
Danach folgen alle Checks, die nach unerwünschten Mails suchen. Die
Reihenfolge sollte ist üblicherweise meistens nach Kosten sortiert, interne
Checks zuerst, dann externe mit DNS-Abfragen und die langwierigen zu allerletzt.
reject_invalid_hostname
reject_non_fqdn_hostname
check_client_access pcre:/etc/postfix/dynip
reject_unknown_sender_domain
reject_rbl_client ix.dnsbl.manitu.net
reject_rbl_client sbl-xbl.spamhaus.org
check_policy_service inet:127.0.0.1:60000
Der Rest der Konfig ist Verfeinerung, um die groben Ecken abzuschleifen:
reject_non_fqdn_sender
reject_non_fqdn_recipient
Wenn möglich, kannst du auch reject_unlisted_sender und
reject_unlisted_reicpient ganz oben ansetzen. Damit wird KEINEM Client
erlaubt, eine ungültige Absender- oder Empfängeradresse in deinen Domains zu
verwenden.
Die Grundreihenfolge bleibt jedoch immer:
- Erlaube nur vertrauenswürdigen Clients das Relayen
- Weise alle Mails an ungültige Empfänger deiner Domain ab
- Whitelist für Trotteladmins
- Checks für unerwünschte Mails
--
Sandy
Antworten bitte nur in die Mailingliste!
PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com
Mehr Informationen über die Mailingliste Postfixbuch-users