Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
centos:ldap_c7:data [16.07.2015 21:47. ] – Datenerstbefüllung des OpenLDAP Servers unter CentOS 7.x #OpenLDAP #CentOS7 #dokuwiki django | centos:ldap_c7:data [22.07.2019 15:03. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 4: | Zeile 4: | ||
Nachdem wir die [[centos: | Nachdem wir die [[centos: | ||
- | Wir werden im ersten Schritt unseren OpenLDAP-Verzeichnisdienst mit Schemen befüllen, die wir im späteren Betrieb benötigen werden. Für die Befüllung mit Nutzdaten, die aus Distinguished Names (DN) und einem eindeutigen Objektnamen bestehen, müssen hierzu in den **Directory Information Tree** (**DIT**), einer hierarchischen Baumstruktur eingefügt werden. | + | Wir werden im ersten Schritt unseren OpenLDAP-Verzeichnisdienst mit Schemen befüllen, die wir im späteren Betrieb benötigen werden. Für die Befüllung mit Nutzdaten, die aus **Distinguished Names** (**DN**) und einem eindeutigen Objektnamen bestehen, müssen hierzu in den **Directory Information Tree** (**DIT**), einer hierarchischen Baumstruktur eingefügt werden. |
===== Schemata ===== | ===== Schemata ===== | ||
Zeile 3936: | Zeile 3936: | ||
Jul 16 23:40:26 vml000037 slapd[14264]: | Jul 16 23:40:26 vml000037 slapd[14264]: | ||
Jul 16 23:40:26 vml000037 slapd[14264]: | Jul 16 23:40:26 vml000037 slapd[14264]: | ||
+ | |||
+ | ===== DIT Indizes ===== | ||
+ | ==== Abfrage der Indizes ==== | ||
+ | Wollen wir später einzelne Index Felder im **DIT** anpassen, müssen wir natürlich wissen wie die derzeitigen Felder indiziert wurden. Hierzu lassen wir uns die existierende Indizierung der Felder anzeigen. | ||
+ | |||
+ | Hierzu nutzen wir nun folgenden Befehlsaufruf. | ||
+ | # | ||
+ | |||
+ | Enter LDAP Password: | ||
+ | < | ||
+ | # | ||
+ | # LDAPv3 | ||
+ | # base < | ||
+ | # filter: (objectclass=*) | ||
+ | # requesting: ALL | ||
+ | # | ||
+ | |||
+ | # {2}hdb, config | ||
+ | dn: olcDatabase={2}hdb, | ||
+ | objectClass: | ||
+ | objectClass: | ||
+ | olcDatabase: | ||
+ | olcDbDirectory: | ||
+ | olcSuffix: dc=nausch, | ||
+ | olcRootDN: cn=Manager, | ||
+ | olcRootPW: {SSHA}lfeku/ | ||
+ | olcDbIndex: objectClass eq,pres | ||
+ | olcDbIndex: ou, | ||
+ | |||
+ | # search result | ||
+ | search: 2 | ||
+ | result: 0 Success | ||
+ | |||
+ | # numResponses: | ||
+ | # numEntries: 1</ | ||
+ | |||
+ | Für die Felder **objectClass** und **ou, | ||
+ | |||
+ | * **olcDbIndex: | ||
+ | * **olcDbIndex: | ||
+ | |||
+ | Dies entspricht nachfolgender Tabelle. | ||
+ | ^ **Felder** | ||
+ | | ::: ^ // | ||
+ | | **objectClass** | ||
+ | | **ou** | ||
+ | | **cn** | ||
+ | | **mail** | ||
+ | | **surname** | ||
+ | | **givenname** | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Erfolgt ein Zugriff auf ein Fled im OpenLDAP-Verzeichnisbaum bei dem kein Index definiert wurde, wird dazu im LDAP-Log // | ||
+ | Jul 17 12:32:53 vml000037 slapd[14264]: | ||
+ | |||
+ | ==== Setzen der Indizes (LDIF) ==== | ||
+ | Für die Felder in der folgenden Tabelle wollen wir nun noch Indizes erstellen. | ||
+ | |||
+ | ^ **Felder** | ||
+ | | ::: | ||
+ | | **uidNumber** | ||
+ | | **gidNumber** | ||
+ | | **loginShell** | ||
+ | | **uid** | ||
+ | | **memberUid** | ||
+ | | **nisMapName** | ||
+ | | **nisMapEntry** | ||
+ | | **uniqueMember** | ||
+ | |||
+ | Zu dieser Tabelle erstellen wir uns nun eine passende LDIF-Datei. | ||
+ | # vim / | ||
+ | |||
+ | <file ldif / | ||
+ | # Erstellen von zusätzlichen Indizes für Felder im DIT | ||
+ | # https:// | ||
+ | |||
+ | dn: olcDatabase={2}hdb, | ||
+ | changetype: modify | ||
+ | add: olcDbIndex | ||
+ | olcDbIndex: uidNumber, | ||
+ | olcDbIndex: uid, | ||
+ | olcDbIndex: nisMapName, | ||
+ | olcDbIndex: uniqueMember eq,pres | ||
+ | </ | ||
+ | |||
+ | Anschließend importieren wir diese Daten in unseren **DIT**. | ||
+ | # ldapmodify -Y EXTERNAL -H ldapi:/// -f / | ||
+ | |||
+ | SASL/ | ||
+ | SASL username: gidNumber=0+uidNumber=0, | ||
+ | SASL SSF: 0 | ||
+ | modifying entry " | ||
+ | |||
+ | |||
+ | ==== Überprüfen der gesetzten Indizes ==== | ||
+ | Zu guter letzt lassen wir uns erneut anzeigen für welche Felder im **DIT** Indizies gesetzt sind. Dazu verwenden wir folgenden Befehl. | ||
+ | # | ||
+ | |||
+ | Enter LDAP Password: | ||
+ | < | ||
+ | # | ||
+ | # LDAPv3 | ||
+ | # base < | ||
+ | # filter: (objectclass=*) | ||
+ | # requesting: ALL | ||
+ | # | ||
+ | |||
+ | # {2}hdb, config | ||
+ | dn: olcDatabase={2}hdb, | ||
+ | objectClass: | ||
+ | objectClass: | ||
+ | olcDatabase: | ||
+ | olcDbDirectory: | ||
+ | olcSuffix: dc=nausch, | ||
+ | olcRootDN: cn=Manager, | ||
+ | olcRootPW: {SSHA}lfeku/ | ||
+ | olcDbIndex: objectClass eq,pres | ||
+ | olcDbIndex: ou, | ||
+ | olcDbIndex: uidNumber, | ||
+ | olcDbIndex: uid, | ||
+ | olcDbIndex: nisMapName, | ||
+ | olcDbIndex: uniqueMember eq,pres | ||
+ | |||
+ | # search result | ||
+ | search: 2 | ||
+ | result: 0 Success | ||
+ | |||
+ | # numResponses: | ||
+ | # numEntries: 1</ | ||
====== Links ====== | ====== Links ====== | ||
* **⇐ [[centos: | * **⇐ [[centos: | ||
- | * **⇒ [[centos: | + | * **⇒ [[centos: |
* **[[centos: | * **[[centos: | ||
* **[[wiki: | * **[[wiki: | ||
* **[[http:// | * **[[http:// | ||
- | ~~DISCUSSION~~ | ||
- | ~~AUTOTWEET: | ||