no way to compare when less than two revisions
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
— | centos:mailserver:sasl-authentifikation_fuer_sicheres_relayen [16.02.2009 19:08. ] (aktuell) – angelegt django | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== SASL-Authentifikation ====== | ||
+ | Zur Authentifizierung eines Clients gegenüber unserem Mailserver nutzen wir **SMTP-Auth**((// | ||
+ | Diese Bibliothek können verschiende Programme Logindaten überprüfen.\\ | ||
+ | ===== Installation ===== | ||
+ | Diese Authentifizierungsbibliothek ist bei CentOS in dem Paket **cyrus-sasl** enthalten und wird i.d.R. bei der Systemgrundinstallation bereits mit installiert. | ||
+ | # yum list cyrus-sasl | ||
+ | | ||
+ | | ||
+ | Was uns das Programmpaket mitbringt und wohin die entsprechenden Konfigurationsdatein installiert wurden, offenbart uns ein **rpm -ilq**. | ||
+ | < | ||
+ | Name : cyrus-sasl | ||
+ | ... | ||
+ | |||
+ | ... | ||
+ | URL : http:// | ||
+ | Summary | ||
+ | Description : | ||
+ | Das Paket cyrus-sasl enthält die Cyrus SASL-Implementierung. SASL | ||
+ | steht für Simple Authentication and Security Layer, eine Methode | ||
+ | zum Hinzufügen von Authentifizierungsunterstützung zu | ||
+ | verbindungsorientierten Protokollen. | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ===== Konfiguration ===== | ||
+ | Damit die **Authentifizierung** gegen **LDAP** funktionieren kann, nehmen wir folgende Änderungen an den vorgegebenen Konfigurationsdateien vor. | ||
+ | ==== saslauthd ==== | ||
+ | In der Konfigurationsdatei des SASL-Auth-Dämons **/ | ||
+ | < | ||
+ | |||
+ | # Directory in which to place saslauthd' | ||
+ | # on. This directory must already exist. | ||
+ | SOCKETDIR=/ | ||
+ | |||
+ | # Mechanism to use when checking passwords. | ||
+ | # of which mechanism your installation was compiled with the ablity to use. | ||
+ | #MECH=pam | ||
+ | # Für die Authentifizierung gegen LDAP am 05.02.09 eingetragen: | ||
+ | MECH=ldap | ||
+ | |||
+ | # Additional flags to pass to saslauthd on the command line. See saslauthd(8) | ||
+ | # for the list of accepted flags. | ||
+ | FLAGS=</ | ||
+ | ==== smtpd.conf ==== | ||
+ | :!: Die Konfigurationsdatei in Sachen // | ||
+ | Mit dem Editor unserer Wahl bearbeiten wir nun diese Datei. | ||
+ | < | ||
+ | |||
+ | # Für die Authentifizierung gegen LDAP am 05.02.09 eingetragen: | ||
+ | pwcheck_method: | ||
+ | # Fehler, fehlerhafte Authentifizierungen und Warnungen loggen | ||
+ | log_level: 3 | ||
+ | # Festlegung der Authentifizierungsmechanismen | ||
+ | mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5</ | ||
+ | ==== saslauthd.conf ==== | ||
+ | Für den egentlichen LDAP-Aufruf müssen wir nun dem System noch einige Aufrufparameter übergeben, die wir in der Konfigurationsdatei **/ | ||
+ | < | ||
+ | |||
+ | ldap_servers: | ||
+ | ldap_search_base: | ||
+ | ldap_bind_dn: | ||
+ | ldap_bind_pw: | ||
+ | ldap_scope: sub | ||
+ | ldap_uidattr: | ||
+ | ldap_filter_mode: | ||
+ | ldap_filter: | ||
+ | |||
+ | ===== Programmstart ===== | ||
+ | Beim installierten RPM ist zum Starten des Dämon ein passendes Startscript mitgeliefert worden, somit reicht ein einfaches **service saslauthd start** aus: | ||
+ | | ||
+ | Mit einem Blick in die Prozessliste können wir uns vergewissern, | ||
+ | < | ||
+ | root | ||
+ | root | ||
+ | root | ||
+ | root | ||
+ | root | ||
+ | ===== automatisches Starten des Dienste beim Systemstart ===== | ||
+ | Damit der Daemon automatisch bei jedem Systemstart startet, kann die Einrichtung des Start-Scripte über folgenden Befehle erreicht werden: | ||
+ | # chkconfig saslauthd on | ||
+ | Die Überprüfungung ob der Dienst (Daemon) **saslauthd** wirklich bei jedem System-(re)-Start automatisch mit gestartet werden, kann durch folgenden Befehle erreicht werden: | ||
+ | # chkconfig --list | grep sasl | ||
+ | | ||
+ | ====== Postfix | ||
+ | ===== Konfigurationsänderungen ===== | ||
+ | Damit unser Postfix nun die Authentifizierung mittels Usernamen und Passwort im SMTP-Dialog unterstützt ändern wir unsere Konfiguration wie folgt. | ||
+ | < | ||
+ | # Mails sicher relayen via SASL & Co. | ||
+ | # eingetragen am 05.02.09 | ||
+ | # | ||
+ | smtpd_sasl_auth_enable = yes | ||
+ | broken_sasl_auth_clients = yes</ | ||
+ | und | ||
+ | < | ||
+ | permit_sasl_authenticated,</ | ||
+ | Mit einem anschließenden Reload geben wir unsere Konfigurationsänderungen dem System bekannt. | ||
+ | # service postfix reload | ||
+ | Im SMTP-Dialog werden nun die zusätzlichen Möglichkeiten offeriert: | ||
+ | < | ||
+ | Trying 88.217.187.21... | ||
+ | Connected to mx1.nausch.org (88.217.187.21). | ||
+ | Escape character is ' | ||
+ | 220 mx1.nausch.org ESMTP Postfix | ||
+ | EHLO testanfrage | ||
+ | 250-mx1.nausch.org | ||
+ | 250-PIPELINING | ||
+ | 250-SIZE 10240000 | ||
+ | 250-VRFY | ||
+ | 250-ETRN | ||
+ | 250-AUTH LOGIN PLAIN DIGEST-MD5 CRAM-MD5 | ||
+ | 250-AUTH=LOGIN PLAIN DIGEST-MD5 CRAM-MD5 | ||
+ | 250-ENHANCEDSTATUSCODES | ||
+ | 250 8BITMIME | ||
+ | quit | ||
+ | 221 2.0.0 Bye | ||
+ | Connection closed by foreign host.</ | ||
+ | ===== Test und Debug ===== | ||
+ | Über das Tool **testsaslauthd** können wir überprüfen ob die Authentifizierungskette funktioniert und wenn nicht, wo wir ggf. weiter nachforschen können. | ||
+ | ==== Fehlerhafte LDAP-Attribute ==== | ||
+ | # testsaslauthd -u klaus -p klaus-der-spammer | ||
+ | 0: NO " | ||
+ | Auf Grund fehlerhaften LDAP-Attribute konnte Username und Passwort nicht verifiziert werden. | ||
+ | ==== Korrekter Zu-/ | ||
+ | # testsaslauthd -u klaus -p klaus-der-spammer | ||
+ | 0: OK " | ||
+ | Nach Änderunk /Korrektur der zuvor fehlerhaften LDAP-Attribute konnte nun erfolgreich Username und Passwort verifiziert werden. | ||
+ | |||