/usr/share/doc/HOWTO/de-html/DE-LDAP-HOWTO-6.html is in doc-linux-de 2003.10-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.65">
<TITLE>Linux LDAP HOWTO: Erstellen eines Beispielverzeichnisses </TITLE>
<LINK HREF="DE-LDAP-HOWTO-7.html" REL=next>
<LINK HREF="DE-LDAP-HOWTO-5.html" REL=previous>
<LINK HREF="DE-LDAP-HOWTO.html#toc6" REL=contents>
</HEAD>
<BODY>
<A HREF="DE-LDAP-HOWTO-7.html"><IMG SRC="next.png" ALT="Weiter"></A>
<A HREF="DE-LDAP-HOWTO-5.html"><IMG SRC="prev.png" ALT="Zurück"></A>
<A HREF="DE-LDAP-HOWTO.html#toc6"><IMG SRC="toc.png" ALT="Inhalt"></A>
<HR>
<H2><A NAME="DE-LDAP-HOWTO-beispielverzeichnis"></A> <A NAME="s6">6.</A> <A HREF="DE-LDAP-HOWTO.html#toc6">Erstellen eines Beispielverzeichnisses </A></H2>
<H2><A NAME="ss6.1">6.1</A> <A HREF="DE-LDAP-HOWTO.html#toc6.1">Erstellen der LDIF Dateien</A>
</H2>
<P>Nach der Installation und Konfiguration des LDAP Servers muß dieser mit Daten
gefüttert werden. Das folgende Beispiel erklärt den LDAP Server anhand
einer fiktiven Firma mit mehreren Abteilungen. Die einzelnen Felder müssen
den lokalen Gegebenheiten nur angepaßt werden, um eine simple
Konfiguration aufzusetzten.</P>
<P>Für das folgende Beispiel wird im Verzeichnis <CODE>/etc/openldap</CODE> das
Unterverzeichnis <CODE>ldif/</CODE> angelegt. In diesem Verzeichnis kann mit jedem
x-beliebigen Editor, der ASCII unterstützt, eine Datei mit dem Namen
<CODE>firmenstruktur.ldif</CODE> erstellt werden. Der Name und das
Verzeichnis für die Beispiel LDIF-Dateien sind beliebig. Es müssen für
den Fall, das andere Namen oder Pfade verwendet werden, diese nur an die
lokalen Gegebenheiten angepaßt werden.</P>
<P>Das Beispiel erstellt den DIT (Directory Information Tree) für die fiktive
Firma Structure Net in Deutschland; hoffentlich gibts die wirklich nicht.
Die Firma Structure Net bekommt drei Abteilungen spendiert: Sales, Development
und Support. Jeder Abteilung werden zwei Mitarbeiter zugeordnet. Daraus ergibt
sich folgende Struktur:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
DE
|
+-- Structure Net --+
|
+-- Sales --+-- Mitarbeiter 1 (Axel Hueser)
| |
| +-- Mitarbeiter 2 (Jared Wiener)
|
+-- Development --+-- Mitarbeiter 3 (Thomas Bendler)
| |
| +-- Mitarbeiter 4 (Thomas Lippert)
|
+-- Support --+-- Mitarbeiter 5 (Elmar Mueller)
|
+-- Mitarbeiter 6 (Enrico Lemke)
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Um das Beispiel übersichtlich zu gestalten und dem Nutzer zu zeigen, welche
Einträge für was verantwortlich sind, habe ich die Beispiel LDIF in eine Datei
für die Firmenstruktur und in eine Datei pro Abteilung aufgeteilt. Der
admin Account muß natürlich schon in der Firmenstrukur angegeben werden, da
sonst keine weiteren Einträge über <CODE>ldapadd</CODE> möglich sind; doch dazu
später mehr.</P>
<H3>Beispiel LDIF firmenstruktur.ldif</H3>
<P>
<BLOCKQUOTE><CODE>
<PRE>
dn: dc=structure-net, dc=de
objectclass: organization
objectclass: top
o: Structure Net
l: Hamburg
postalcode: 21033
streetadress: Billwiese 22
dn: ou=Sales, dc=structure-net, dc=de
objectclass: organizationalunit
ou: Sales
description: Verkauf
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
dn: ou=Development, dc=structure-net, dc=de
objectclass: organizationalunit
ou: Development
description: Verkauf
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
dn: ou=Support, dc=structure-net, dc=de
objectclass: organizationalunit
ou: Support
description: Verkauf
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
dn: uid=admin, dc=structure-net, dc=de
objectclass: person
objectclass: organizationalperson
objectclass: inetorgperson
cn: admin
cn: Systemverwalter
cn: Thomas Bendler
sn: Bendler
uid: admin
mail: tbendler@structure-net.de
l: Hamburg
postalcode: 21033
streetadress: billwiese 22
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
</PRE>
</CODE></BLOCKQUOTE>
</P>
<H3>Beispiel LDIF sales.ldif</H3>
<P>
<BLOCKQUOTE><CODE>
<PRE>
dn: uid=ahueser, ou=Sales, dc=structure-net, dc=de
objectclass: person
objectclass: organizationalperson
cn: Axel Hueser
sn: Hueser
uid: ahueser
mail: ahueser@structure-net.de
l: Hamburg
postalcode: 21033
streetadress: billwiese 22
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
dn: uid=jwiener, ou=Sales, dc=structure-net, dc=de
objectclass: person
objectclass: organizationalperson
cn: Jared Wiener
sn: Wiener
uid: jwiener
mail: jwiener@structure-net.de
l: Hamburg
postalcode: 21033
streetadress: billwiese 22
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
</PRE>
</CODE></BLOCKQUOTE>
</P>
<H3>Beispiel LDIF development.ldif</H3>
<P>
<BLOCKQUOTE><CODE>
<PRE>
dn: uid=tbendler, ou=Development, dc=structure-net, dc=de
objectclass: person
objectclass: organizationalperson
objectclass: inetorgperson
cn: tbendler
cn: Systemverwalter
cn: Thomas Bendler
sn: Bendler
uid: tbendler
mail: tbendler@structure-net.de
l: Hamburg
postalcode: 21033
streetadress: billwiese 22
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
dn: uid=tlippert, ou=Development, dc=structure-net, dc=de
objectclass: person
objectclass: organizationalperson
cn: Thomas Lippert
sn: Lippert
uid: tlippert
mail: tlippert@structure-net.de
l: Hamburg
postalcode: 21033
streetadress: billwiese 22
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
</PRE>
</CODE></BLOCKQUOTE>
</P>
<H3>Beispiel LDIF support.ldif</H3>
<P>
<BLOCKQUOTE><CODE>
<PRE>
dn: uid=emueller, ou=Support, dc=structure-net, dc=de
objectclass: person
objectclass: organizationalperson
cn: Elmar Mueller
sn: Mueller
uid: emueller
mail: emueller@structure-net.de
l: Hamburg
postalcode: 21033
streetadress: billwiese 22
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
dn: uid=elemke, ou=Support, dc=structure-net, dc=de
objectclass: person
objectclass: organizationalperson
cn: Enrico Lemke
sn: Lemke
uid: elemke
mail: elemke@structure-net.de
l: Hamburg
postalcode: 21033
streetadress: billwiese 22
telephonenumber: 040-7654321
facsmiletelephonenumber: 040-7654321
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Die vorgestellte Datenbank ist natürlich weder sonderlich umfangreich noch
besonders trickreich. Doppelte Datensätze wie z.B. Admin und Bendler, die sich
auf die selbe Person beziehen, können auch über Verweise aufgelöst werden. So
kann man z.B. eine Gruppe People erstellen, in der man alle bekannten Personen
unterbringt. In den Gruppen Sales, Development und Support trägt man dann
Verweise auf diese Personen ein.</P>
<H2><A NAME="ss6.2">6.2</A> <A HREF="DE-LDAP-HOWTO.html#toc6.2">Umwandeln der LDIF Datei in das LDBM Format</A>
</H2>
<P>Als nächstes muß die LDIF Datei ins LDBM Format konvertiert werden. Dazu
dient der Befehl <CODE>ldif2ldbm</CODE>. In der SuSE Distribution ist dieser unter
<CODE>/usr/sbin/</CODE> zu finden. Der Befehl lautet also:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
ldif2ldbm -i /etc/openldap/ldif/firmenstruktur.ldif \
-f /etc/openldap/slapd.conf
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Sollten sich irgendwelche Dateien nicht in den Standardpfaden befinden, so kann
man so nach den Dateien suchen lassen:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
find / -name <Dateiname>
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Ist die LDIF Datei konvertiert, muß der LDAP Server gestartet werden. SuSE
stellt dafür ein init-Skript zur Verfügung:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
/sbin/init.d/ldap start
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Wenn der LDAP Server wunschgemäß läuft, kann dieser auch automatisch gestartet
werden, indem man die Variable START_LDAP in der <CODE>rc.config</CODE> auf yes setzt.</P>
<P>Ist kein Startskript vorhanden, wird der LDAP Server mit folgendem Kommando
gestartet:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
slapd -f /usr/local/etc/openldap/slapd.conf
</PRE>
</CODE></BLOCKQUOTE>
</P>
<H2><A NAME="ss6.3">6.3</A> <A HREF="DE-LDAP-HOWTO.html#toc6.3">Testen des LDAP Servers</A>
</H2>
<P>Um den LDAP Server zu testen, kann man jetzt eine Anfrage an selbigen
schicken. Dies geschieht mit folgendem Befehl:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
ldapsearch objectclass=\*
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Der Server sollte nun eine Struktur, wie in der Datei <CODE>firmenstruktur.ldif</CODE>
beschrieben, als Rückantwort übergeben.</P>
<H2><A NAME="ss6.4">6.4</A> <A HREF="DE-LDAP-HOWTO.html#toc6.4">Hinzufügen von Datensätzen</A>
</H2>
<P>Nun gehts an das Hinzufügen von Datensätzen. Dazu werden die bereits erstellten
LDIF Dateien benutzt. Das Hinzufügen geschieht mit Hilfe des Befehls <CODE>ldapadd</CODE>.
Dies geschieht folgendermaßen:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
ldapadd -v -D dn="uid=admin,dc=structure-net,dc=de" \
-w secret -f /etc/openldap/ldif/sales.ldif
ldapadd -v -D dn="uid=admin,dc=structure-net,dc=de" \
-w secret -f /etc/openldap/ldif/development.ldif
ldapadd -v -D dn="uid=admin,dc=structure-net,dc=de" \
-w secret -f /etc/openldap/ldif/support.ldif
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Auf diese Weise können auch weitere Einträge hinzugefügt werden. Eine etwas
komfortablere Variante stellt das X.500 Webgateway, da welches als Frontend
beschrieben wird.</P>
<HR>
<A HREF="DE-LDAP-HOWTO-7.html"><IMG SRC="next.png" ALT="Weiter"></A>
<A HREF="DE-LDAP-HOWTO-5.html"><IMG SRC="prev.png" ALT="Zurück"></A>
<A HREF="DE-LDAP-HOWTO.html#toc6"><IMG SRC="toc.png" ALT="Inhalt"></A>
</BODY>
</HTML>
|