Eine übersicht über das Themengebiet gibt es in LDAP. Dies ist eine mögliche Fortsetzung von LDAP-Server. Gezeigt wird, wie man manuell eine Kopie der Daten des Master-LDAP-Servers in Betrieb nimmt.

Für den produktiven Einsatz innerhalb des OpenNewsNetwork ist das Verfahren nicht zu brauchen, eignet sich aber perfekt für Experimente mit einem eigenen Server.

Export von ldap1.open-news-network.org

Zunächst einmal braucht man einen Account auf ldap1.open-news-network.org. Anonym geht gar nichts, und nur mit administrativen Privilegien bekommt man auch die Passwörter.

Export über phpLDAPadmin

Die Funktion Export von http://ldap1.open-news-network.org/phpldapadmin/

Server: My LDAP Server
Base DN: dc=open-news-network,dc=org
Search Scope: Sub (entire subtree)
Search Filter: (objectClass=*)
Save as file [X]

Export über ldapsearch


ldapsearch -h ldap1.open-news-network.org -x -D "cn=USERNAME,dc=open-news-network,dc=org" -W -b 'dc=open-news-network,dc=org' '(objectclass=*)' > /export.ldif

USERNAME ist Platzhalter für den tatsächlichen Kontonamen.

Manueller Import

In der resultierenden Datei muss man die ersten Einträge entfernen. Die relevanten Benutzerkonten sehen so aus:

# Entry 5: uid=testuser,dc=open-news-network,dc=org
dn:uid=testuser,dc=open-news-network,dc=org
cn: Example
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
ou: People
sn: testuser
givenName: testuser
uid: testuser
userPassword: password

Man kann nun alle Zeilen davor händisch entfernen. Oder sed benutzen. Der Import sieht dann so aus:

sed -n '/uid/,$p' export.ldif | ldapadd -x -D "cn=admin,dc=open-news-network,dc=org" -W

Ansehen kann man sich die importierten Einträge so:

ldapsearch -x -b 'dc=open-news-network,dc=org' '(objectclass=*)'