Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
centos:ldap_c7:clientauth [21.07.2015 13:49. ] – [nslcd.conf] django | centos:ldap_c7:clientauth [22.07.2019 15:03. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Authentification auf Userebene und Webseiten unter CentOS 7.x ====== | + | ====== Authentification auf Userebene und Webseiten |
{{: | {{: | ||
Natürlich wollen wir bei der Authentifikation unserer Cleints auf unseren zentralen OpenLDAP-Verzeichnisdienst zurückgreifen. Nachfolgend werden wir auf einige Beispiele eingehen. | Natürlich wollen wir bei der Authentifikation unserer Cleints auf unseren zentralen OpenLDAP-Verzeichnisdienst zurückgreifen. Nachfolgend werden wir auf einige Beispiele eingehen. | ||
Zeile 843: | Zeile 843: | ||
# This comment prevents repeated auto-migration of settings. | # This comment prevents repeated auto-migration of settings. | ||
</ | </ | ||
+ | |||
+ | Anschließend passen wir noch die Dateiberechtigungen an, so wie es bei der Option **bindpw** angeraten wurde. | ||
+ | # chown nslcd:ldap / | ||
=== nsswitch.conf === | === nsswitch.conf === | ||
- | In der Konfigurationsdatei // | + | In der Konfigurationsdatei // |
+ | * **passwd: | ||
+ | * **shadow: | ||
+ | * **group: | ||
+ | |||
+ | * **netgroup: | ||
+ | |||
+ | * **automount: | ||
+ | |||
# vim / | # vim / | ||
Zeile 911: | Zeile 923: | ||
# Django : 2015-07-21 LDAP Client Authentication | # Django : 2015-07-21 LDAP Client Authentication | ||
# default: netgroup: | # default: netgroup: | ||
- | netgroup: | + | netgroup: |
publickey: | publickey: | ||
Zeile 961: | Zeile 973: | ||
session | session | ||
+ | ==== Start des Naming services LDAP client daemon ==== | ||
+ | Nun ist es an der Zeit, den **NSLCD**((**N**aming **S**ervices **L**DAP **C**lient **D**aemon)) zu starten. | ||
+ | # systemctl restart nslcd.service | ||
- | + | Den erfolgreichen Start des Daemon fragen wir wie folgt ab. | |
- | + | ||
- | + | ||
- | # systemctl start nslcd.service | + | |
# systemctl status nslcd.service -l | # systemctl status nslcd.service -l | ||
- | |||
< | < | ||
Zeile 986: | Zeile 996: | ||
</ | </ | ||
+ | Damit der Daemin automatisch gestartet wird, wenn der Clientrechner hochfährt, aktivieren wir den NSLCD entsprechend. | ||
# systemctl enable nslcd.service | # systemctl enable nslcd.service | ||
ln -s '/ | ln -s '/ | ||
+ | Wollen wir abfragen, ob der Daemon automatisch beim Systemstart gestartet wird benutzen wir nachfolgenden Befehl/ | ||
# systemctl is-enabled nslcd.service | # systemctl is-enabled nslcd.service | ||
enabled | enabled | ||
- | # systemctl is-enabled | + | Ein **enabled** signalisiert, |
- | disabled | + | ===== Tests ===== |
+ | ==== LDAP Abfrage ==== | ||
- | ==== Test ==== | + | Zur Abfrage eines LDAP-Users können wir folgenden Aufruf verwenden: |
$ ldapsearch -x -LLL -H ldaps:// | $ ldapsearch -x -LLL -H ldaps:// | ||
Enter LDAP Password: | Enter LDAP Password: | ||
Zeile 1019: | Zeile 1032: | ||
userPassword:: | userPassword:: | ||
- | + | Das nächste Beispiel zeigt eine LDAP-Abfrage mit dem User django aber mit __falschem__ Passwort: | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | /* | + | |
- | | + | |
- | [1] Install OpenLDAP Client. | + | |
- | [root@www ~]# yum -y install openldap-clients nss-pam-ldapd | + | |
- | # ldapserver=(LDAP server' | + | |
- | + | ||
- | # ldapbasedn=" | + | |
- | + | ||
- | [root@www ~]# authconfig --enableldap \ | + | |
- | --enableldapauth \ | + | |
- | --ldapserver=dlp.server.world \ | + | |
- | --ldapbasedn=" | + | |
- | --enablemkhomedir \ | + | |
- | --update | + | |
- | + | ||
- | getsebool: SELinux is disabled | + | |
- | [root@www ~]# exit | + | |
- | + | ||
- | logout | + | |
- | CentOS Linux 7 (Core) | + | |
- | Kernel 3.10.0-123.20.1.el7.x86_64 on an x86_64 | + | |
- | www login: redhat | + | |
- | # LDAP user | + | |
- | + | ||
- | Password: | + | |
- | # password | + | |
- | + | ||
- | Creating directory '/ | + | |
- | [redhat@www ~]$ | + | |
- | # logined normally | + | |
- | [redhat@www ~]$ passwd | + | |
- | # try to change the LDAP password | + | |
- | + | ||
- | Changing password for user redhat. | + | |
- | Enter login(LDAP) password: | + | |
- | # current password | + | |
- | + | ||
- | New password: | + | |
- | # new password | + | |
- | + | ||
- | Retype new password: | + | |
- | LDAP password information changed for redhat | + | |
- | passwd: all authentication tokens updated successfully. | + | |
- | + | ||
- | */ | + | |
$ ldapsearch -x -LLL -H ldaps:// | $ ldapsearch -x -LLL -H ldaps:// | ||
Zeile 1077: | Zeile 1039: | ||
ldap_bind: Invalid credentials (49) | ldap_bind: Invalid credentials (49) | ||
+ | Hingegen eine Abfrage mit einer richtigen Kombination von Benutzer und Passwort, sieht entsprechend wie folgt aus: | ||
$ ldapsearch -x -LLL -H ldaps:// | $ ldapsearch -x -LLL -H ldaps:// | ||
Zeile 1092: | Zeile 1054: | ||
homeDirectory: | homeDirectory: | ||
gecos: inge | gecos: inge | ||
- | userPassword:: | + | userPassword:: |
+ | ==== Client-Abfragen ==== | ||
+ | Die erfolgreiche Konfiguration unseres Rechners überprüfen wir so: | ||
+ | - Mit **getent** lassen wir uns die Informationen eines Users anzeigen, der sowohl in der /etc/shadow wie auch im zentralen LDAP-Verzeichnisdienst hinterlegt ist. Wenn alles gut gelaufen ist, werden uns zwei Einträge präsentiert. \\ \\ < | ||
+ | django: | ||
+ | - Als nächstes wählen wir einen Nutzer der nur im LDAP-Verzeichnisdienst einen Account hat, nicht aber auf der lokalen Maschine. \\ \\ < | ||
+ | - Dann melden wir uns nun an unserem Client als ein Benutzer an, der lokal auf der Maschine nicht existiert, werden wir beim Login nach dem Passwort gefragt, welches gegen den zentralen OpenLDAP-Server verifiziert wird. Ist das Passwort richtig wird auch gleich das zugehörige Nutzer-Homeverzeichnis angelegt. \\ \\ < | ||
+ | {{ : | ||
===== remote Benutzer bei Web-Servern ===== | ===== remote Benutzer bei Web-Servern ===== | ||
+ | Nachdem sich unsere Nutzer an ihren Arbeitsplatzrechner erfolgreich anmelden können, wollen sie mit unter auch von unterwegs aus auf Ihre eMail oder andere WEB-Dienste zugreifen. Auch dort sollen sich unsere User mit deren Anmeldedaten anmelden können. | ||
+ | |||
+ | Im folgenden gehen wir auf Konfigurationslösungen bei den beiden Webservern **[[http:// | ||
+ | |||
==== Apache Webserver ==== | ==== Apache Webserver ==== | ||
+ | {{page> | ||
==== NGiNX Webserver ==== | ==== NGiNX Webserver ==== | ||
- | + | {{page> | |
- | FIXME | + | |
Zeile 1159: | Zeile 1130: | ||
*/ | */ | ||
+ | |||
+ | ====== Links ====== | ||
+ | * **⇐ [[centos: | ||
+ | * **[[centos: | ||
+ | * **[[wiki: | ||
+ | * **[[http:// | ||
+ | |||
+ |