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
- optional kann noch
- die vom Server verwalteten Zieldomänen auf localhost beschränken
mydestination = localhost
- die Komponenten für die Authentifizierung hinzufügen
- /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)
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?