OpenLDAP Server neue Struktur

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

OpenLDAP Server neue Struktur

Beitrag von pangu » 17.11.2012 21:25:34

Hi Leute,

ch kämpf hier grad mit der Übernahme einer LDAP-Datenbank aus einem alten Suse-Server. Vorab einige Infos:

Alter Server:
OS= SLES9 Kernel 2.6.5-.7.308
Paket = openldap2-2.2.24-4.5 (laut rpm -qa |grep ldap)
Verzeichnisstruktur:
# ls -l /etc/openldap/
ldap.conf
<dir> schema
slapd.conf
Und dann gibts noch das Verzeichnis unter /var/lib/ldap

Neuer Server:
OS= Debian Squeeze 64bit Kernel 2.6.32-5-amd64
Paket = OpenLDAP Server (slapd) 2.4.23-7.2
Verzeichnisstruktur:
# ls -l /etc/ldap
<dir> sasl2
<dir> schema
<dir> slapd.d
Und dann gibts auch hier das Verzeichnis unter /var/lib/ldap

Ich steh nun vor dem Problem, dass ich es nicht schaffe, auf dem neuen Squeeze mit dem neueren LDAP-Server die Datenbank zum Laufen zu kriegen. Laut Debian-Wiki gibts nun mit dem neueren LDAP-Server keine slapd.conf mehr, stattdessen landen die Konfigurationen in /etc/ldap/slapd.d/.
Ich habe auf dem alten Server mit slapcat > sicherung.ldif den Inhalt ausgelesen und diese Sicherung auf den neuen Server rüberkopiert. Dann habe ich auf dem frisch installierten neuen Server mit dem neueren Slapd versucht, diese sicherung.ldif zu importieren. Dabei habe ich erstmal den LDAP-Server mit /etc/init.d/slapd stop heruntergefahren und anschliessend mit dem Befehl slapadd -l sicherung.ldif versucht, meine Daten zu importieren. Das kommt dabei raus:

Code: Alles auswählen

# slapadd -l sicherung.ldif
=> hdb_tool_entry_put: id2entry_add failed: DB_KEYEXIST: Key/data pair already exists (-30995)
=> hdb_tool_entry_put: txn_aborted! DB_KEYEXIST: Key/data pair already exists (-30995)
slapadd: could not add entry dn="dc=mycompany,dc=de" (line=1): txn_aborted! DB_KEYEXIST: Key/data pair already exists (-30995)
_                       0.06% eta        elapsed            none spd 829.1 k/s
Closing DB...
meine sicherung.ldif vom alten OpenLDAP-Server sieht so aus (die ersten Blöcke):
dn: dc=mycompany,dc=de
objectClass: dcObject
objectClass: organization
o: mycompany
dc: mycompany
structuralObjectClass: organization
entryUUID: e06578f4-fd2e-102a-9fd0-afb2bd69c403
creatorsName: cn=root,dc=mycompany,dc=de
createTimestamp: 20061031132427Z
entryCSN: 20061031132427Z#000000#00#000000
modifiersName: cn=root,dc=mycompany,dc=de
modifyTimestamp: 20061031132427Z

dn: ou=users,dc=mycompany,dc=de
objectClass: top
objectClass: organizationalUnit
ou: users
structuralObjectClass: organizationalUnit
entryUUID: e06ed98a-fd2e-102a-9fd1-afb2bd69c403
creatorsName: cn=root,dc=mycompany,dc=de
createTimestamp: 20061031132427Z
entryCSN: 20061031132427Z#000001#00#000000
modifiersName: cn=root,dc=mycompany,dc=de
modifyTimestamp: 20061031132427Z

dn: ou=groups,dc=mycompany,dc=de
objectClass: top
objectClass: organizationalUnit
ou: groups
structuralObjectClass: organizationalUnit
entryUUID: e070fcb0-fd2e-102a-9fd2-afb2bd69c403
creatorsName: cn=root,dc=mycompany,dc=de
createTimestamp: 20061031132427Z
entryCSN: 20061031132427Z#000002#00#000000
modifiersName: cn=root,dc=mycompany,dc=de
modifyTimestamp: 20061031132427Z

dn: ou=machines,dc=mycompany,dc=de
objectClass: top
objectClass: organizationalUnit
ou: machines
structuralObjectClass: organizationalUnit
entryUUID: e072803a-fd2e-102a-9fd3-afb2bd69c403
creatorsName: cn=root,dc=mycompany,dc=de
createTimestamp: 20061031132427Z
entryCSN: 20061031132427Z#000003#00#000000
modifiersName: cn=root,dc=mycompany,dc=de
modifyTimestamp: 20061031132427Z

dn: ou=idmap,dc=mycompany,dc=de
objectClass: top
objectClass: organizationalUnit
ou: idmap
structuralObjectClass: organizationalUnit
entryUUID: e07451bc-fd2e-102a-9fd4-afb2bd69c403
creatorsName: cn=root,dc=mycompany,dc=de
createTimestamp: 20061031132427Z
entryCSN: 20061031132427Z#000004#00#000000
modifiersName: cn=root,dc=mycompany,dc=de
modifyTimestamp: 20061031132427Z
[...]
Liegt es irgendwie an dem fehlenden Samba-Schema auf dem neuen Server? Hab daraufhin laut der oben verlinkten Debian-Wiki das samba.schema aus dem Paket samba-doc extrahiert und in /etc/ldap/schema hineinkopiert, und dann eine /etc/ldap/slapd.conf erstellt mit der Zeile "include /etc/ldap/schema/samba.schema" hinzugefügt. Laut Wiki ist diese slapd.conf noch kompatibel.Aber das hat auch nicht viel gebracht... Oder liegt es daran, dass auf der neuen Debian-Box bei der Installation des Pakets SLAPD automatisch meine Domain übernommen wurde? somit existiert diese schon bereits, kann es daran liegen?

Könnte mir jemand bitte freundlicherweise hier unterstützen ? ich steck hier grad irgendwie fest :( Danke und schönes Wochenende an Alle...
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Re: OpenLDAP Server neue Struktur

Beitrag von pangu » 18.11.2012 21:08:11

ich krieg's um Verrecken nicht hin. Hab jetzt übers weekend mittlerweile Tod und Teufel probiert, aber ich krieg meinen Inhalt nicht in den neuen LDAP-Server transferiert. Hab auch einfachhalber die /etc/default/slapd angepasst und das /etc/ldap/slapd.conf angegeben, damit ich dies als meine Datenbank verwende, statt dem neuen slapd.d Modus. Aber selbst damit krieg ichs nicht gebacken. Slapadd will nicht, dann habe ich es so versucht:

auf dem alten Server meine Daten ausgelesen mit:

Code: Alles auswählen

ldapsearch -LLL -Wx -D "cn=admin,dc=domain" -b "dc=domain" > domain.ldif
und auf dem neuen dann:

Code: Alles auswählen

ldapmodify -Wx -D "cn=admin,dc=domain" -a -f domain.ldif
Damit spreche ich nicht die Database-Backends an, sondern kommuniziere direkt mit dem slapd-server. Aber das will auch nicht :(

Ich hoffe irgendeine LDAP-Profi hier kann mir unter die Arme greifen und mir dabei behilflich sein. Bin für jeden Hilfestellung sehr dankbar.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

Benutzeravatar
r900
Beiträge: 1053
Registriert: 09.10.2011 20:06:11
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Stockholm

Re: OpenLDAP Server neue Struktur

Beitrag von r900 » 18.11.2012 21:16:15

pangu hat geschrieben:ich krieg's um Verrecken nicht hin. Hab jetzt übers weekend mittlerweile Tod und Teufel probiert,
Wie sieht es hiermit aus: http://www.openldap.org/lists/openldap- ... 00266.html
(zweites Ergebnis bei :google: )
Demnach bedeutet die Fehlermeldung dass der Eintrag bereits existiert, so liest sich die Meldung ja eigentlich auch. Und die Lösung wäre:
slapadd is really designed for initial loads, to an otherwise empty directory.
Perhaps you forgot to "rm /var/lib/ldap/*" first (you're only in testing, I hope...or have a recent slapcat for a restore?)

Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Re: OpenLDAP Server neue Struktur

Beitrag von pangu » 19.11.2012 10:26:57

Hi r900,

das hatte ich alles schon geöffnet. Es gab mehrere Probleme, und ich musste erstmal das elend lange Manual von openldap.org durchlesen (das was ich eben benötigte). Letztendlich musste ich folgendes tun, da meine alte Konfiguration eine bdb Datenbank war: auf dem neuen Server musste ich erstmal manuell das bdb_backend Modul laden. Weiter Fallstricke waren: die Verzeichnisse auf dem neuen Server lauten anders, und auch das der Module. Ich musste das manuell raussuchen und auch ein wichtiger Punkt war: die Schema-Files mussten die des neuen Serveers sein, und nicht die vom alten Server. Da war mein Denkfehler, denn ich hatte die alten mitübernommen :(

Letztendlich konnte ich mit slapadd zum Ziel gelangen. Jetzt plage ich mich weiter mit dem Samba4 classic domain upgrade tool herum :)

Bis dann, danke und Grüße,
Pangu.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

Antworten