Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi2:ldap

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
lpi2:ldap [2015/09/25 17:18]
127.0.0.1 Externe Bearbeitung
lpi2:ldap [2019/02/14 03:31] (aktuell)
Zeile 2: Zeile 2:
 ===== Benötigte Pakete ===== ===== Benötigte Pakete =====
 Debian: Debian:
-  slapd +  slapd ldap-utils 
-SuSE: +SuSE: (( Bug in openSuSE 12.3 und 13.1 https://​bugzilla.novell.com/​show_bug.cgi?​id=777418 ))
   openldap2   openldap2
-Bug in openSuSE 12.3 und 13.1 (( https://​bugzilla.novell.com/​show_bug.cgi?​id=777418 )) 
  
-CentOS 6:+CentOS ​(ab 6):
   openldap-servers openldap-clients   openldap-servers openldap-clients
  
-===== Minimal-Konfiguration =====+===== Initiale ​Konfiguration =====
 ==== Debian ==== ==== Debian ====
 Bei Debian wird das Paket mit folgenden Werten vorkonfiguriert ((Die Werte kann man natürlich auch interaktiv beim ''​apt-get install''​ eingeben)): Bei Debian wird das Paket mit folgenden Werten vorkonfiguriert ((Die Werte kann man natürlich auch interaktiv beim ''​apt-get install''​ eingeben)):
Zeile 31: Zeile 30:
  
 ==== CentOS (7) ==== ==== CentOS (7) ====
 +  ​
 +  shopt -s dotglob
   rm -rf /​var/​lib/​ldap/​*   rm -rf /​var/​lib/​ldap/​*
   rm -rf /​etc/​openldap/​slapd.d/​*   rm -rf /​etc/​openldap/​slapd.d/​*
Zeile 36: Zeile 37:
   vim  /​usr/​share/​openldap-servers/​slapd.ldif   vim  /​usr/​share/​openldap-servers/​slapd.ldif
 <file ldif> <file ldif>
-  ​olcAccess: to dn.base=""​ by * read+olcAccess: to dn.base=""​ by * read
 olcAccess: to dn.base="​cn=Subschema"​ by * read olcAccess: to dn.base="​cn=Subschema"​ by * read
 olcAccess: to * olcAccess: to *
Zeile 49: Zeile 50:
 objectClass:​ olcDatabaseConfig objectClass:​ olcDatabaseConfig
 olcDatabase:​ monitor olcDatabase:​ monitor
-olcAccess: to * by dn.base="​gidNumber=0+uidNumber=0,​cn=peercred,​cn=external,​+olcAccess: to *  
- n=auth" read by dn.base="​cn=admin,​dc=example,​dc=net"​ read by * none+  ​by dn.base="​gidNumber=0+uidNumber=0,​cn=peercred,​cn=external,​cn=auth" read  
 +  ​by dn.base="​cn=admin,​dc=example,​dc=net"​ read 
 +  ​by * none
  
 # #
Zeile 72: Zeile 75:
   systemctl enable slapd   systemctl enable slapd
  
-===== Zugriff auf LDAP-Server über Socket ===== 
-  vim ~/.ldaprc 
- 
-<​file>​ 
-URI       ​ldapi://​ 
-BASE      cn=config 
-SASL_MECH EXTERNAL 
-</​file>​ 
-  ldapsearch -LLL '​(olcSuffix=*)'​ olcSuffix 
- 
-Schemata hinzufügen:​ 
-  ldapadd -f /​etc/​openldap/​schema/​core.ldif ​ 
-  ldapadd -f /​etc/​openldap/​schema/​cosine.ldif ​ 
-  ldapadd -f /​etc/​openldap/​schema/​inetorgperson.ldif ​ 
-  ldapadd -f /​etc/​openldap/​schema/​nis.ldif ​ 
- 
-  ldapsearch -b cn=schema,​cn=config -LLL dn 
  
 ===== erste LDAP Einträge ===== ===== erste LDAP Einträge =====
- 
 Unter Debian werden bereits bei der Installation die ersten Werte, wie z.B. der Administrator-Benutzer in das Verzeichnis eingefügt. Unter SuSE und Fedora kann man das mit dem Befehl ''​slapadd''​ tun, das Administrator-Passwort wird mit dem Befehl ''​slappasswd''​ erzeugt: Unter Debian werden bereits bei der Installation die ersten Werte, wie z.B. der Administrator-Benutzer in das Verzeichnis eingefügt. Unter SuSE und Fedora kann man das mit dem Befehl ''​slapadd''​ tun, das Administrator-Passwort wird mit dem Befehl ''​slappasswd''​ erzeugt:
  
Zeile 120: Zeile 105:
 ===== slapd starten ===== ===== slapd starten =====
 SuSE, Centos, Fedora: ​ SuSE, Centos, Fedora: ​
-  ​/​etc/​init.d/​ldap restart+  ​service ​ldap restart
   chkconfig ldap on   chkconfig ldap on
  
 Debian: Debian:
-  ​/​etc/​init.d/​slapd restart+  ​service ​slapd restart
  
-==== Fehler beim Starten finden ​==== +===== root-Zugriff auf LDAP-Server über Socket =====
-(unter SuSE /​usr/​lib/​openldap/​slapd) +
-  slapd -d -1+
  
-====== Client ldapsearch ====== +<file txt ~/.ldaprc> 
-===== Benötigte Pakete ===== +URI       ldapi:/// 
-Debian: +BASE      cn=config 
-  ldap-utils +SASL_MECH EXTERNAL
-SuSE: +
-  openldap2-client +
-Fedora, CentOS 6: +
-  openldap-clients +
- +
-===== Testen ===== +
-Der OpenLDAP Server sollte nun z.B. mit ''​ldapsearch''​ die oben eingegebenen Werte zurückliefern:​ +
- +
-  ldapsearch -x -W -b dc=linuxhotel,​dc=de -H ldap://localhost -D cn=admin,​dc=linuxhotel,​dc=de +
- +
-Die Benutzung der ldap-utils können sie mit Hilfe einer Konfigurationsdatei ''​$HOME/.ldaprc''​ ((das geht auch benutzerübergreifend,​ je nach Distribution ''/​etc/​ldap.conf'',​ ''/​etc/​ldap/​ldap.conf'',​ ''/​etc/​openldap/​ldap.conf''​)) vereinfachen:​ +
- +
-<​file>​ +
-BASE dc=linuxhotel,​dc=de +
-BINDDN ​cn=admin,​dc=linuxhotel,​dc=de +
-HOST localhost+
 </​file>​ </​file>​
 +  ldapsearch -LLL '​(olcSuffix=*)'​ olcSuffix
  
-Der obige Aufruf verkürzt sich dadurch zu: +Mehr dazu unter [[ldap-config]]
-  ldapsearch ​-x -W+
  
-==== Eigenschaften des LDAP-Server abfragen ​==== +==== Fehler beim Starten finden ​==== 
-  ​ldapsearch -x -W -b ''​ -s base '​+'​ +(unter SuSE /​usr/​lib/​openldap/​slapd) 
- +  ​slapd --1
-==== Schemata des LDAP-Server abfragen ==== +
-  ​ldapsearch ​-x -W -b '​cn=Subschema' ​-s base '​+'​+
  
 ====== Tips & Tricks ====== ====== Tips & Tricks ======
  
-===== Backup ​und Restore ​===== +===== LDAP Daten sichern ​und wieder herstellen ​===== 
-  /​etc/​init.d/slapd stop +(hier für DebianBei CentOS heißen Nutzer und Gruppe ldap statt openldap) 
-  slapcat -b dc=linuxhotel,​dc=de > sicherung.ldif+ 
 +  service ​slapd stop 
 +  slapcat -b "dc=linuxhotel,​dc=de" ​> sicherung.ldif
   less sicherung.ldif   less sicherung.ldif
   grep directory /​etc/​ldap/​slapd.conf   grep directory /​etc/​ldap/​slapd.conf
Zeile 172: Zeile 139:
   rm /​var/​lib/​ldap/​__db.*   rm /​var/​lib/​ldap/​__db.*
   vi sicherung.ldif   vi sicherung.ldif
-  slapadd ​sicherung.ldif +  ​# nur bei dynamischer config: 
-  slapindex+  ​slapadd ​-f sicherung.ldif 
 +  ​slapindex ​ # wird seit openldap2.4 nicht mehr benötigt
   chown -R openldap:​openldap /​var/​lib/​ldap/​*   chown -R openldap:​openldap /​var/​lib/​ldap/​*
-  ​/​etc/​init.d/​slapd start +  ​service ​slapd start
- +
- +
-===== vim ===== +
-Nützliche Optionen beim Editieren von LDIF Dateien: +
- +
-  * '':​set list''​  +
-  * '':​syntax on''​ +
-  * '':​set number''​ +
- +
-Oder eine Datei ''​~/​.vimrc''​ anlegen +
- +
-<​code>​ +
-set list +
-set number +
-syntax on +
-</​code>​ +
- +
-===== ldapadd ===== +
-LDIF-Dateien vor dem Einfügen testen: +
-  ldapadd -x -W -n < irgendwas.ldif+
  
-und erst dann wirklich einfügen+  # nur bei dynamischer config:  
-  ​ldapadd ​--W < irgendwas.ldif+  ​# slapcat ​-b cn=config > config-backup.ldif 
 +  # wenn auch die config wieder hergestellt werden muss: Reihenfolge beachten! 
 +  # slapadd -f config-backup.ldif && slapadd -f sicherung.ldif 
 +  # anschließend "chown -R openldap:​openldap /​etc/​ldap/​slapd.d/",​ für /​var/​lib/​ldap wie oben weiter
  
-====== weitere LDAP Clients ====== 
-  * [[http://​directory.apache.org/​studio/​|Apache Directory Studio]] 
-  * [[http://​phpldapadmin.sourceforge.net/​|phpLDAPadmin]] 
-  * [[http://​www.webmin.com/​standard.html|webmin]] 
-  * [[http://​www-unix.mcs.anl.gov/​~gawor/​ldap/​|LDAP Browser/​Editor]] 
-  * [[http://​luma.sourceforge.net/​|luma]] 
-  * ldapvi 
-  * shelldap ((Installation unter debian 6.0:  
-  apt-get install libio-socket-ssl-perl shelldap 
-)) 
lpi2/ldap.1443201521.txt.gz · Zuletzt geändert: 2016/03/07 07:07 (Externe Bearbeitung)