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 [2016/03/07 07:33]
ingo_wichmann [Schemata hinzufügen]
lpi2:ldap [2024/03/21 10:58] (aktuell)
ingo_wichmann [CentOS (7)]
Zeile 2: Zeile 2:
 ===== Benötigte Pakete ===== ===== Benötigte Pakete =====
 Debian: Debian:
-  slapd+  slapd ldap-utils
 SuSE: (( Bug in openSuSE 12.3 und 13.1 https://​bugzilla.novell.com/​show_bug.cgi?​id=777418 )) SuSE: (( Bug in openSuSE 12.3 und 13.1 https://​bugzilla.novell.com/​show_bug.cgi?​id=777418 ))
   openldap2   openldap2
Zeile 29: Zeile 29:
 <code bash>​DEBCONF</​code>​ <code bash>​DEBCONF</​code>​
  
-==== CentOS (7) ==== 
-  ​ 
-  shopt -s dotglob 
-  rm -rf /​var/​lib/​ldap/​* 
-  rm -rf /​etc/​openldap/​slapd.d/​* 
-  cp -a /​usr/​share/​openldap-servers/​slapd.ldif /​usr/​share/​openldap-servers/​slapd.ldif.orig 
-  vim  /​usr/​share/​openldap-servers/​slapd.ldif 
-<file ldif> 
-olcAccess: to dn.base=""​ by * read 
-olcAccess: to dn.base="​cn=Subschema"​ by * read 
-olcAccess: to * 
-        by self write 
-        by users read 
-        by anonymous auth 
-# 
-# Server status monitoring 
-# 
- 
-dn: olcDatabase=monitor,​cn=config 
-objectClass:​ olcDatabaseConfig 
-olcDatabase:​ monitor 
-olcAccess: to *  
-  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 
- 
-# 
-# Backend database definitions 
-# 
- 
-dn: olcDatabase=hdb,​cn=config 
-objectClass:​ olcDatabaseConfig 
-objectClass:​ olcHdbConfig 
-olcDatabase:​ hdb 
-olcSuffix: dc=linuxhotel,​dc=de 
-olcRootDN: cn=admin,​dc=linuxhotel,​dc=de 
-olcDbDirectory:​ /​var/​lib/​ldap 
-olcDbIndex: objectClass eq,pres 
-olcDbIndex: ou,​cn,​mail,​surname,​givenname eq,pres,sub 
-</​file>​ 
- 
-  /​usr/​libexec/​openldap/​convert-config.sh -f /​usr/​share/​openldap-servers/​slapd.ldif 
-  cp /​usr/​share/​openldap-servers/​DB_CONFIG.example /​var/​lib/​ldap/​DB_CONFIG 
-  systemctl start slapd 
-  systemctl enable slapd 
- 
-===== root-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 ===== 
-  * [[http://​tools.ietf.org/​html/​draft-howard-rfc2307bis-01|rfc2307bis-01]] (expired: 20.08.2005){{:​rfc2307bis-draft01.ldif|}} ​ 
-  * [[http://​tools.ietf.org/​html/​draft-howard-rfc2307bis-02|rfc2307bis-02]] (expired: 10.02.2010) 
-  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 ​ 
- 
-{{:​yast.ldif|}} 
- 
-  ldapsearch -b cn=schema,​cn=config -LLL dn 
  
 ===== erste LDAP Einträge ===== ===== erste LDAP Einträge =====
Zeile 126: Zeile 59:
 ===== 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 178: Zeile 93:
   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.1457335996.txt.gz · Zuletzt geändert: 2016/03/07 07:33 von ingo_wichmann