Postfix mit SMTP-Auth einrichten (Postfix als Smarthost)

Ein ganz klassisches Szenario: Postfix als Smarthost zum Versenden von Mails, die lokal erstellt oder per SMTP (SMTP-Auth) übermittelt wurden – Postfix nimmt keine eingehenden (nichtauthentifizierte) Mails an – reiner Relay-Betrieb.

Installation von Postfix (unter Debian)

  • installieren der PostfixKernbestandteil:
    • apt-get install postfix
    • apt-get install libsasl2-modules
    • apt-get install sasl2-bin
  • installieren der MailUtils
    • apt-get install mailutils

Konfiguration von Postfix

  • /etc/postfix/main.cfanpassen
    • die Komponenten für die Authentifizierung hinzufügen
      • smtpd_sasl_auth_enable = yes
      • smtpd_sasl_security_options = noanonymous
      • smtpd_sasl_local_domain =
      • broken_sasl_auth_clients = yes
      • smtpd_recipient_restrictions = permit_sasl_authenticated, reject
        • optional kann noch permit_mynetworks ergänzt werden, dann dürfen nur noch vordefinierte Hosts Mails übergeben
    • die vom Server verwalteten Zieldomänen auf localhost beschränken
      • mydestination = localhost
  • /etc/postfix/sasl/smtpd.conferstellen (für die Postfix-Sasl Kommunikation)
    • pwcheck_method: saslauthd
    • mech_list: PLAIN LOGIN
    • saslauthd_path: /var/run/saslauthd/mux
    • autotransition:true
  • /etc/pam.d/smtperstellen (für Sasl)
    • auth required /lib/security/pam_unix_auth.so
    • account required /lib/security/pam_unix_acct.so
    • password required /lib/security/pam_unix_passwd.so
    • session required /lib/security/pam_unix_session.so
  • weitere Befehle, wenn Postfix im chroot (default) läuft
    • cd /lib/security/
    • ln -s /lib/security/pam_rhosts.so pam_rhosts_auth.so
    • ln -s /lib/security/pam_unix.so pam_unix_acct.so
    • ln -s /lib/security/pam_unix.so pam_unix_auth.so
    • ln -s /lib/security/pam_unix.so pam_unix_passwd.so
    • ln -s /lib/security/pam_unix.so pam_unix_session.so
    • mkdir /var/spool/postfix/etc/pam.d
    • cp -p /etc/pam.d/smtp /var/spool/postfix/etc/pam.d/
    • mkdir -p /var/spool/postfix/var/run
    • cd /var/run
    • mv saslauthd/ /var/spool/postfix/var/run
    • ln -s /var/spool/postfix/var/run/saslauthd/ saslauthd
    • chown -R postfix /var/spool/postfix/var/run/saslauthd
  • /etc/default/saslauthdkonfigurieren
    • START=yes
    • MECHANISMS="pam"
  • den Postfix-Nutzer in die Gruppe sasleinfügen
    • adduser postfix sasl
  • zum Schluss die betroffenen Dienste neustarten bzw. die Konfiguration neu einlesen
    • /etc/init.d/saslauthd start
    • /etc/init.d/postfix reload

Testen der Installation/Konfiguration

  • die Funktion von saslauthdüberprüfen
    • testsaslauthd -f /var/run/saslauthd/mux -u USER -p PASSWORT
    • testsaslauthd -f /var/spool/postfix/var/run/saslauthd/mux -u USER -p PASSWORT

(Quelle: www.huschi.net)

Comments

  1. Hallo,
    ich bekomme immer Authentifizierungsfehler in den Logs angezeigt. Wie kann ich denn eigentlich einen Benutzer festlegen? Irgendwie muss ich ja SASL sagen, welche Benutzer sich wie authentifizieren können, oder?

Schreibe einen Kommentar

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