[Postfixbuch-users] Postfix 2.5.1 -> SASL -> LDAP auth
Patrick Ben Koetter
p at state-of-mind.de
Mo Mai 5 15:47:03 CEST 2008
* Stephan Budach <postfixbuch-users at listi.jpberlin.de>:
> ich möchte eine Postfix/SASL/LDAP combo kompillieren und konfigurieren,
> die als gateway ausschließlich für interne User dient. Zu diesem Zweck
> habe ich mir die letzte Version von CyrusSASL 2.1.22 und Postfix 2.5.1
> runtergeladen und kompilliert.
>
> CyrusSASL habe ich mittels ./configure --with-ldap erzeugt und kann auch
> erfolgreich meine LDAP-user authentifizieren:
>
> [root at localhost cyrus-sasl-2.1.22]# testsaslauthd -u test -p testpass
> 0: OK "Success."
Wie startest Du den saslauthd?
Wenn Du über PAM nach ldap gehst, bau beim testsaslauthd-Aufruf zur Sicherheit
noch ein "-s smtp" hinein.
> Bei Postfix gelingt mir eine Authentifikation aber nicht. Nachdem ich nun
> einige Postings in den Archiven durchwühlt habe, weiss ich nun leider
> nicht mehr weiter. Anfangs war wohl das problem, dass der saslauthd socket
> normalerweise woanders steht, aber das habe ich in der smtpd.conf korrekt
> eingetragen.
>
> Wenn ich im terminal eine Session starte, dann bekomme ich im mail.log dann
> folgendes:
>
> May 5 16:33:35 localhost postfix/smtpd[13031]: connect from
> localhost.localdomain[127.0.0.1]
> May 5 16:33:43 localhost postfix/smtpd[13031]: warning: SASL
> authentication failure: cannot connect to saslauthd server: Connection
> refused
socket Problem.
> Allerdings sind die Dateien in /var/state/saslauthd alle für den user
> postfix zugänglich
>
> [root at localhost cyrus-sasl-2.1.22]# ls -l /var/state/
> insgesamt 4
> drwxr-xr-x 2 postfix postfix 4096 5. Mai 16:18 saslauthd
> [root at localhost cyrus-sasl-2.1.22]# ls -l /var/state/saslauthd/
> insgesamt 4
> srwxrwxrwx 1 postfix postfix 0 5. Mai 16:18 mux
> -rw-rw-rw- 1 postfix postfix 0 5. Mai 16:18 mux.accept
> -rw-rw-rw- 1 postfix postfix 6 5. Mai 16:18 saslauthd.pid
>
>
> saslfinger -s ergibt dies hier, wobei ich /usr/lib/sasl2 nach
> /usr/local/lib/sas2 gelinkt habe:
>
>
> saslfinger - postfix Cyrus sasl configuration Mo 5. Mai 17:14:46 CEST 2008
> version: 1.0.2
> mode: server-side SMTP AUTH
>
> -- basics --
> Postfix: 2.5.1
> System: CentOS release 5 (Final)
2.5.1 gibt es auch als RPM.
Aktuelles Cyrus SASL ebenfalls.
Selber bauen wäre nicht unbedingt nötig gewesen.
> -- smtpd is linked to --
> libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x00af8000)
>
> -- active SMTP AUTH and TLS parameters for smtpd --
> broken_sasl_auth_clients = yes
> smtpd_sasl_auth_enable = yes
>
>
> -- listing of /usr/lib/sasl2 --
> insgesamt 1904
> drwxr-xr-x 2 root root 4096 5. Mai 16:22 .
> drwxr-xr-x 3 root root 4096 5. Mai 00:22 ..
> -rwxr-xr-x 1 root root 695 5. Mai 00:22 libanonymous.la
> -rwxr-xr-x 1 root root 54822 5. Mai 00:22 libanonymous.so
> -rwxr-xr-x 1 root root 54822 5. Mai 00:22 libanonymous.so.2
> -rwxr-xr-x 1 root root 54822 5. Mai 00:22 libanonymous.so.2.0.22
> -rwxr-xr-x 1 root root 683 5. Mai 00:22 libcrammd5.la
> -rwxr-xr-x 1 root root 60904 5. Mai 00:22 libcrammd5.so
> -rwxr-xr-x 1 root root 60904 5. Mai 00:22 libcrammd5.so.2
> -rwxr-xr-x 1 root root 60904 5. Mai 00:22 libcrammd5.so.2.0.22
> -rwxr-xr-x 1 root root 713 5. Mai 00:22 libdigestmd5.la
> -rwxr-xr-x 1 root root 125621 5. Mai 00:22 libdigestmd5.so
> -rwxr-xr-x 1 root root 125621 5. Mai 00:22 libdigestmd5.so.2
> -rwxr-xr-x 1 root root 125621 5. Mai 00:22 libdigestmd5.so.2.0.22
> -rwxr-xr-x 1 root root 763 5. Mai 00:22 libgssapiv2.la
> -rwxr-xr-x 1 root root 79041 5. Mai 00:22 libgssapiv2.so
> -rwxr-xr-x 1 root root 79041 5. Mai 00:22 libgssapiv2.so.2
> -rwxr-xr-x 1 root root 79041 5. Mai 00:22 libgssapiv2.so.2.0.22
> -rwxr-xr-x 1 root root 668 5. Mai 00:22 libotp.la
> -rwxr-xr-x 1 root root 120705 5. Mai 00:22 libotp.so
> -rwxr-xr-x 1 root root 120705 5. Mai 00:22 libotp.so.2
> -rwxr-xr-x 1 root root 120705 5. Mai 00:22 libotp.so.2.0.22
> -rwxr-xr-x 1 root root 679 5. Mai 00:22 libplain.la
> -rwxr-xr-x 1 root root 55996 5. Mai 00:22 libplain.so
> -rwxr-xr-x 1 root root 55996 5. Mai 00:22 libplain.so.2
> -rwxr-xr-x 1 root root 55996 5. Mai 00:22 libplain.so.2.0.22
> -rwxr-xr-x 1 root root 704 5. Mai 00:22 libsasldb.la
> -rwxr-xr-x 1 root root 97412 5. Mai 00:22 libsasldb.so
> -rwxr-xr-x 1 root root 97412 5. Mai 00:22 libsasldb.so.2
> -rwxr-xr-x 1 root root 97412 5. Mai 00:22 libsasldb.so.2.0.22
> -rw-r--r-- 1 root root 119 5. Mai 16:22 smtpd.conf
>
> -- content of /usr/lib/sasl2/smtpd.conf --
> pwcheck_method: saslauthd
> saslauthd_path: /var/state/saslauthd
> mech_list: PLAIN LOGIN CRAM-ND5 DIGEST-MD5
Mit saslauthd kannst Du keine shared-secret-Mechanismen nutzen. Wenn Du die
haben willst, musst Du das ldapdb-Plugin von Cyrus SASL konfigurieren.
Damit es mit saslauthd keine Probleme gibt, solltest Du die $mech_list wie
folgt reduzieren:
mech_list: PLAIN LOGIN
... und CRAM-ND5 schriebe man CRAM-MD5 wollte man es nutzen ;)
> log_level: 3
>
>
> -- active services in /etc/postfix/master.cf --
> # service type private unpriv chroot wakeup maxproc command + args
> # (yes) (yes) (yes) (never) (100)
> smtp inet n - n - - smtpd
gut
> -- mechanisms on localhost --
> 250-AUTH DIGEST-MD5 PLAIN
> 250-AUTH=DIGEST-MD5 PLAIN
Das ist interessant!
Dein Postfix bietet "nur" die Mechanismen DIGEST-MD5 und PLAIN an, obwohl
Deine mech_list mehr will.
Naja, also der Tippfehler für CRAM-ND5 läßt wohl CRAM-MD5 rausfallen und die
Abwesenheit von LOGIN läßt sich damit erklären, das es nicht kompiliert wurde.
Du solltest dein Cyrus SASL entsprechend neu bauen.
p at rick
--
Postfix - Einrichtung, Betrieb und Wartung
<http://www.postfix-buch.com>
saslfinger (debugging SMTP AUTH):
<http://postfix.state-of-mind.de/patrick.koetter/saslfinger/>
Mehr Informationen über die Mailingliste Postfixbuch-users