LDAPs Authentifikation mit Apache 2.4

In der Regel haben wir zur Verwaltung der Nutzerdaten ein Backendsystem zur Verwaltung im Einsatz. Im folgendem Konfigurationsbeispiel werden wir uns nun gegen einen vorhandenen LDAP-Server.

Im Gegensatz zum Konfigurationsbeispiel der Basic Authentifikation mit Hilfe von PasswordBasicAuth, benötigen wir das zusätzliche RPM-Paket mod_ldap, welches die beiden notwendigen Module mod_authnz_ldap und mod_ldap zur LDAP-Authentifikation benötigt werden. Das RPM installieren wir uns nun mit Hilfe von yum.

 # yum install mod_ldap -y

Im Gegensatz zum vorherigen Konfigurationsbeispiel brauchen wir keine Datei zum Pflegen der Nutzerkonten. Diese Funktion wird über unseren zentralen Open-LDAP-Verzeichnisdienst bereitgestellt. Somit können wir gleich zur Konfiguration unseres vHOSTs schreiten. In der Konfigurationsdatei des betreffenden vHOSTs tragen wir nun folgende Zeilen nach.

 # vim /etc/httpd/conf.d/vhost_443_postfixadmin.conf
...
 
	# Django : 2015-07-17 Konfigurationsbeispiel zur LDAP Authenifikation mit Hilfe
	# der beiden Module mod_authnz_ldap und mod_ldap aus dem RPM mod_ldap.
        <Location />
                Options +FollowSymLinks +Multiviews +Indexes
                AllowOverride None
                AuthType Basic
                AuthName "PostfixAdmin-Webserver"
                AuthBasicProvider ldap
                AuthLDAPUrl ldaps://openldap.dmz.nausch.org:389/ou=People,dc=nausch,dc=org?uid
                AuthLDAPBindDN cn=Technischer_User,dc=nausch,dc=org
                AuthLDAPBindPassword P1r@t3n!
                AuthLDAPBindAuthoritative on
                Require ldap-user django bigchief nagios
        </Location>
...

Damit unsere Änderungen aktiv werden bedarf es noch eines reloads unseres HTTP-Deamon.

 # systemctl reload httpd.service

WICHTIG:
Damit die Anmeldedaten nicht von Dritten mitgelesen und abgefischt werden können, nutzen wir natürlich einen SSL-geschützten vHOST!

Der Webserver wird nun den Zugang erst gestatten, sobald die Daten richtig eingegeben wurden.

Bild: Eingabe-Fenster bei einer zugriffsgeschützten WEB-Anwendung

Wird über den Menüpunkt [ Cancel ] die Eingabe abgebrochen, verweigert der Webserver den Zutritt zur betreffenden Anwendung!