Sender Policy Framework (SPF) mit Postfix

Hinweis: Wir haben in diesem Artikel möglicherweise Provisions-Links verwendet und sie durch (*) gekennzeichnet. Erfolgt über diese Links eine Bestellung, erhält maffert.net eine Provision. Es entstehen für Sie keine Nachteile beim Kauf oder Preis.

Ich beschreibe hier wie man „Sender Policy Framework“ (SPF) installiert und die Überprüfung in Postfix integriert.

Das SPF (Sender Policy Framework, früher auch Sender Permitted From) ist ein zur Sender-Authentifizierung genutztes Spamschutz-Verfahren. In den DNS-Einträgen einer Domain werden zusätzliche Informationen in Form von SPF-records gespeichert. Diese zusätzlichen SPF-Einträge im DNS beinhalten detaillierte Angaben zu den versendenden Mailservern.
Der empfangende Mailserver hat über den SPF-record der Domain die Möglichkeit zu prüfen, ob die erhaltene E-Mail von einem autorisierten Mailserver stammt, oder von einem nicht autorisierten Server. Im letzten Fall kann die E-Mail über den SPF Spamschutz identifiziert und als SPAM deklariert werden. – Quelle: spf-record.de

Es gibt zwei Versionen, die eine ist in Perl geschrieben und die andere Methode in Python. In der Regel reicht die Perl Methode aus, beide entsprechen dem Standard. Mehr dazu auf der Offiziellen Seite: http://www.openspf.org/Software

Die Installation und das einbinden in Postfix – Perl Methode:

  1. Das benötigte Paket installieren:
    apt-get install postfix-policyd-spf-perl
  2. in die main.cf (nano /etc/postfix/main.cf) folgendes, ganz am Ende hinzufügen:
    policy-spf_time_limit = 3600s

    Info: setzt die Zeit hoch, damit alle SMTP-Transaktionen ohne Probleme durchlaufen können.

  3. weiterhin in der main.cf (nano /etc/postfix/main.cf) nun den Policy-Service in unsere smtpd_recipient_restrictions mit einfügen:
    check_policy_service unix:private/spfcheck,

    Zum Beispiel so:

    smtpd_recipient_restrictions =
                [...]
                reject_unauth_destination
                check_policy_service unix:private/policy
                [...]

    Info: Unbedingt darauf achten, das „check_policy_service“ NACH „reject_unauth_destination“ kommt, da der Server sonst ein Open Relay wird.

  4. und in der master.cf (nano /etc/postfix/master.cf) am Ende folgendes hinzufügen:
    spfcheck  unix  -       n       n       -       0       spawn
        user=policyd-spf argv=/usr/sbin/postfix-policyd-spf-perl
  5. zu guter letzt Postfix sagen, dass er die neue Config laden soll:
    /etc/init.d/postfix reload

oder

Die Installation und das einbinden in Postfix – Python Methode:

  1. Das benötigte Paket installieren:
    pt-get install postfix-policyd-spf-python
  2. in die main.cf (nano /etc/postfix/main.cf) folgendes, ganz am Ende hinzufügen:
    policy-spf_time_limit = 3600s

    Info: setzt die Zeit hoch, damit alle SMTP-Transaktionen ohne Probleme durchlaufen können.

  3. weiterhin in der main.cf (nano /etc/postfix/main.cf) nun den Policy-Service in unsere smtpd_recipient_restrictions mit einfügen:
    check_policy_service unix:private/spfcheck,

    Zum Beispiel so:

    smtpd_recipient_restrictions =
                [...]
                reject_unauth_destination
                check_policy_service unix:private/policy-spf
                [...]

    Info: Unbedingt darauf achten, das „check_policy_service“ NACH „reject_unauth_destination“ kommt, da der Server sonst ein Open Relay wird.

  4. und in der master.cf (nano /etc/postfix/master.cf) am Ende folgendes hinzufügen:
    policy-spf  unix  -       n       n       -       -       spawn
         user=nobody argv=/usr/bin/policyd-spf
  5. zu guter letzt Postfix sagen, dass er die neue Config laden soll:
    /etc/init.d/postfix reload

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert