svn commit: r52795 - head/de_DE.ISO8859-1/books/handbook/network-servers
Bjoern Heidotting
bhd at FreeBSD.org
Sun Feb 3 17:54:36 UTC 2019
Author: bhd
Date: Sun Feb 3 17:54:35 2019
New Revision: 52795
URL: https://svnweb.freebsd.org/changeset/doc/52795
Log:
Update to r52704:
Rewrite the LDAP server section of the handbook.
Reviewed by: bcr
Differential Revision: https://reviews.freebsd.org/D19062
Modified:
head/de_DE.ISO8859-1/books/handbook/network-servers/chapter.xml
Modified: head/de_DE.ISO8859-1/books/handbook/network-servers/chapter.xml
==============================================================================
--- head/de_DE.ISO8859-1/books/handbook/network-servers/chapter.xml Sun Feb 3 12:41:05 2019 (r52794)
+++ head/de_DE.ISO8859-1/books/handbook/network-servers/chapter.xml Sun Feb 3 17:54:35 2019 (r52795)
@@ -5,7 +5,7 @@
$FreeBSD$
$FreeBSDde: de-docproj/books/handbook/network-servers/chapter.xml,v 1.103 2011/12/24 15:51:18 bcr Exp $
- basiert auf: r52450
+ basiert auf: r52704
-->
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0"
@@ -2379,12 +2379,21 @@ TWO (,hotel,test-domain)
<firstname>Tom</firstname>
<surname>Rhodes</surname>
</personname>
- <contrib>Geschrieben von </contrib>
+ <contrib>Ursprünglich beigetragen von </contrib>
</author>
</authorgroup>
<authorgroup>
<author>
<personname>
+ <firstname>Rocky</firstname>
+ <surname>Hotas</surname>
+ </personname>
+ <contrib>Aktualisiert von </contrib>
+ </author>
+ </authorgroup>
+ <authorgroup>
+ <author>
+ <personname>
<firstname>Björn</firstname>
<surname>Heidotting</surname>
</personname>
@@ -2487,35 +2496,38 @@ result: 0 Success
<indexterm><primary>LDAP Server</primary></indexterm>
<para>&os; integriert keinen <acronym>LDAP</acronym>-Server.
- Beginnen Sie die Konfiguration durch die Installation des
- Ports oder Pakets <package>net/openldap24-server</package>.
- Da der Port viele konfigurierbare Optionen hat, ist es
- empfehlenswert zu prüfen, ob die Installation des Pakets
- ausreichend ist. Wenn Sie irgendwelche Optionen ändern
- möchten, ist es besser den Port zu übersetzen. In den meisten
- Fällen sollten die Standardwerte ausreichend sein. Wenn
- Sie jedoch SQL-Unterstützung benötigen, muss diese Option
- aktiviert und der Port nach den Anweisungen in <xref
- linkend="ports-using"/> übersetzt werden.</para>
+ Beginnen Sie die Konfiguration mit der Installation des
+ Ports oder Pakets
+ <package>net/openldap-server</package>:</para>
- <para>Als nächstes muss ein Verzeichnis für Daten sowie ein
- Verzeichnis für die Zertifikate erstellt werden:</para>
+ <screen>&prompt.root; <userinput>pkg install openldap-server</userinput></screen>
- <screen>&prompt.root; <userinput>mkdir /var/db/openldap-data</userinput>
-&prompt.root; <userinput>mkdir /usr/local/etc/openldap/private</userinput></screen>
+ <para>Im <link
+ xlink:href="&url.articles.linux-users.en;/software.html">
+ Paket</link> sind eine große Anzahl an Optionen aktiviert.
+ Mit dem Befehl <command>pkg info openldap-server</command>
+ können diese überprüft werden. Falls die Optionen nicht
+ ausreichend sind (weil bspw. SQL-Unterstützung benötigt wird),
+ sollten Sie in Betracht ziehen, den Port mit dem
+ entsprechenden Framework neu zu übersetzen.</para>
- <para>Kopieren Sie die Konfigurationsdatei der Datenbank:</para>
+ <para>Während der Installation wird für die Daten das
+ Verzeichnis <filename>/var/db/openldap-data</filename>
+ erstellt. Das Verzeichnis für die Ablage der Zertifikate
+ muss manuell angelegt werden:</para>
- <screen>&prompt.root; <userinput>cp /usr/local/etc/openldap/DB_CONFIG.example /var/db/openldap-data/DB_CONFIG</userinput></screen>
+ <screen>&prompt.root; <userinput>mkdir /usr/local/etc/openldap/private</userinput></screen>
<para>Im nächsten Schritt wird die Zertifizierungsstelle
konfiguriert. Die folgenden Befehle müssen in
<filename>/usr/local/etc/openldap/private</filename>
ausgeführt werden. Dies ist wichtig, da die
Dateiberechtigungen restriktiv gesetzt werden und Benutzer
- keinen direkten Zugriff auf diese Daten haben sollten. Geben
- Sie folgenden Befehl ein, um die Zertifizierungsstelle zu
- erstellen und folgen Sie den Anweisungen:</para>
+ keinen direkten Zugriff auf diese Daten haben sollten.
+ Weitere Informationen über Zertifikate und deren Parameter
+ finden Sie im <xref linkend="openssl"/>. Geben Sie folgenden
+ Befehl ein, um die Zertifizierungsstelle zu erstellen und
+ folgen Sie den Anweisungen:</para>
<screen>&prompt.root; <userinput>openssl req -days <replaceable>365</replaceable> -nodes -new -x509 -keyout ca.key -out ../ca.crt</userinput></screen>
@@ -2536,7 +2548,9 @@ result: 0 Success
<para>Stellen Sie hierbei sicher, dass
<literal>Common Name</literal> richtig eingetragen wird.
- Anschließend muss der Schlüssel signiert werden:</para>
+ Die Zertifikatsregistrierungsanforderung muss mit dem
+ Schlüssel der Zertifizierungsstelle unterschrieben werden, um
+ als gültiges Zertifikat verwendet zu werden:</para>
<screen>&prompt.root; <userinput>openssl x509 -req -days <replaceable>365</replaceable> -in server.csr -out ../server.crt -CA ../ca.crt -CAkey ca.key -CAcreateserial</userinput></screen>
@@ -2550,179 +2564,367 @@ result: 0 Success
<para>Achten Sie wieder auf das Attribut
<literal>Common name</literal>. Stellen Sie außerdem sicher,
dass bei diesem Verfahren acht (8) neue Dateien erzeugt worden
- sind. Der nächste Schritt besteht darin,
- <filename>/usr/local/etc/openldap/slapd.conf</filename> zu
- editieren und folgende Optionen hinzuzufügen:</para>
+ sind.</para>
- <programlisting>TLSCipherSuite HIGH:MEDIUM:+SSLv3
-TLSCertificateFile /usr/local/etc/openldap/server.crt
-TLSCertificateKeyFile /usr/local/etc/openldap/private/server.key
-TLSCACertificateFile /usr/local/etc/openldap/ca.crt</programlisting>
+ <para>Der Daemon, auf dem der OpenLDAP-Server läuft, heißt
+ <filename>slapd</filename>. Die Konfiguration erfolgt über
+ <filename>slapd.ldif</filename>. Die alte
+ <filename>slapd.conf</filename> wird von OpenLDAP nicht mehr
+ verwendet.</para>
- <para>Danach bearbeiten Sie
- <filename>/usr/local/etc/openldap/ldap.conf</filename> und
- fügen folgende Zeilen hinzu:</para>
+ <para><link
+ xlink:href="http://www.openldap.org/doc/admin24/slapdconf2.html">Konfigurationsbeispiele</link>
+ für <filename>slapd.ldif</filename> finden sich auch in
+ <filename>/usr/local/etc/openldap/slapd.ldif.sample</filename>.
+ Optionen sind in slapd-config(5) dokumentiert. Jeder
+ Abschnitt in <filename>slapd.ldif</filename> wird, wie alle
+ anderen LDAP-Attributgruppen, durch einen DN eindeutig
+ identifiziert. Achten Sie darauf, dass keine Leerzeilen
+ zwischen der Anweisung <literal>dn:</literal> und dem
+ gewünschten Ende des Abschnitts verbleiben. Im folgenden
+ Beispiel wird TLS verwendet, um einen sicheren Kanal zu
+ implementieren. Der erste Abschnitt stellt die globale
+ Konfiguration dar:</para>
- <programlisting>TLS_CACERT /usr/local/etc/openldap/ca.crt
-TLS_CIPHER_SUITE HIGH:MEDIUM:+SSLv3</programlisting>
+ <programlisting>#
+# See slapd-config(5) for details on configuration options.
+# This file should NOT be world readable.
+#
+dn: cn=config
+objectClass: olcGlobal
+cn: config
+#
+#
+# Define global ACLs to disable default read access.
+#
+olcArgsFile: /var/run/openldap/slapd.args
+olcPidFile: /var/run/openldap/slapd.pid
+olcTLSCertificateFile: /usr/local/etc/openldap/server.crt
+olcTLSCertificateKeyFile: /usr/local/etc/openldap/private/server.key
+olcTLSCACertificateFile: /usr/local/etc/openldap/ca.crt
+#olcTLSCipherSuite: HIGH
+olcTLSProtocolMin: 3.1
+olcTLSVerifyClient: never</programlisting>
- <para>Kommentieren Sie die folgenden Einträge aus und setzen Sie
- sie auf die gewünschten Werte: <option>BASE</option>,
- <option>URI</option>, <option>SIZELIMIT</option> und
- <option>TIMELIMIT</option>. Setzen Sie bei
- <option>URI</option> <option>ldap://</option> und
- <option>ldaps://</option> ein. Fügen Sie danach zwei Einträge
- ein, die auf die Zertifizierungsstelle verweisen. Wenn Sie
- fertig sind, sollten die Einträge wie folgt aussehen:</para>
+ <para>Hier müssen die Zertifizierungsstelle, das
+ Serverzertifikat und die privaten Schlüssel des Servers
+ angegeben werden. Es wird empfohlen, den Clients die Wahl der
+ Sicherheits-Chiffre zu überlassen und die Option
+ <literal>olcTLSCipherSuite</literal> wegzulassen (inkompatibel
+ mit anderen TLS-Clients als <filename>openssl</filename>).
+ Mit der Option <literal>olcTLSProtocolMin</literal> benötigt
+ der Server nur eine minimale Sicherheitsstufe.
+ Diese Option wird empfohlen. Während die Verfizierung für den
+ Server verpflichtend ist, ist sie es nicht für den Client:
+ <literal>olcTLSVerifyClient: never</literal>.</para>
- <programlisting>BASE dc=example,dc=com
-URI ldap:// ldaps://
+ <para>Der zweite Abschnitt behandelt die Backend-Module und
+ kann wie folgt konfiguriert werden:</para>
-SIZELIMIT 12
-TIMELIMIT 15
+ <programlisting>#
+# Load dynamic backend modules:
+#
+dn: cn=module,cn=config
+objectClass: olcModuleList
+cn: module
+olcModulepath: /usr/local/libexec/openldap
+olcModuleload: back_mdb.la
+#olcModuleload: back_bdb.la
+#olcModuleload: back_hdb.la
+#olcModuleload: back_ldap.la
+#olcModuleload: back_passwd.la
+#olcModuleload: back_shell.la</programlisting>
-TLS_CACERT /usr/local/etc/openldap/ca.crt
-TLS_CIPHER_SUITE HIGH:MEDIUM:+SSLv3</programlisting>
+ <para>Der dritte Abschnitt widmet sich dem Laden der benötigten
+ ldif-Schemata, die von den Datenbanken verwendet werden
+ sollen. Diese Dateien sind essentiell.</para>
- <para>Anschließend sollte das Standardpasswort für den Server
- geändert werden:</para>
+ <programlisting>dn: cn=schema,cn=config
+objectClass: olcSchemaConfig
+cn: schema
- <screen>&prompt.root; <userinput>slappasswd -h "{SHA}" >> /usr/local/etc/openldap/slapd.conf</userinput></screen>
+include: file:///usr/local/etc/openldap/schema/core.ldif
+include: file:///usr/local/etc/openldap/schema/cosine.ldif
+include: file:///usr/local/etc/openldap/schema/inetorgperson.ldif
+include: file:///usr/local/etc/openldap/schema/nis.ldif</programlisting>
- <para>Dieser Befehl wird nach einem Passwort fragen und, wenn
- der Prozess nicht fehlschlägt, ein Passwort-Hash an das
- Ende von <filename>slapd.conf</filename> hinzufügen. Es
- werden verschiedene Hash-Formate unterstützt. Weitere
- Informationen hierzu finden Sie in der Manualpage von
- <command>slappasswd</command>.</para>
+ <para>Als nächstes folgt der Abschnitt zur
+ Frontend-Konfiguration:</para>
- <para>Als nächstes bearbeiten Sie
- <filename>/usr/local/etc/openldap/slapd.conf</filename> und
- fügen folgende Zeilen hinzu:</para>
+ <programlisting># Frontend settings
+#
+dn: olcDatabase={-1}frontend,cn=config
+objectClass: olcDatabaseConfig
+objectClass: olcFrontendConfig
+olcDatabase: {-1}frontend
+olcAccess: to * by * read
+#
+# Sample global access control policy:
+# Root DSE: allow anyone to read it
+# Subschema (sub)entry DSE: allow anyone to read it
+# Other DSEs:
+# Allow self write access
+# Allow authenticated users read access
+# Allow anonymous users to authenticate
+#
+#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
+#
+# if no access controls are present, the default policy
+# allows anyone and everyone to read anything but restricts
+# updates to rootdn. (e.g., "access to * by * read")
+#
+# rootdn can always read and write EVERYTHING!
+#
+olcPasswordHash: {SSHA}
+# {SSHA} is already the default for olcPasswordHash</programlisting>
- <programlisting>password-hash {sha}
-allow bind_v2</programlisting>
+ <para>Ein weiterer Abschnitt ist dem Konfigurations-Backend
+ gewidmet, der einzige Weg, später auf die
+ OpenLDAP-Serverkonfiguration zuzugreifen, ist als globaler
+ Superuser.</para>
- <para>Das Suffix in dieser Datei muss <option>BASE</option> aus
- <filename>/usr/local/etc/openldap/ldap.conf</filename>
- entsprechen. Zudem sollte die Option <option>rootdn</option>
- ebenfalls gesetzt werden. Ein guter Wert ist beispielsweise
- <option>cn=Manager</option>. Bevor die Datei gespeichert
- wird, setzen Sie die Passwortausgabe von
- <command>slappasswd</command> hinter die Option
- <option>rootpw</option>. Das Endergebnis sollte in etwa wie
- folgt aussehen:</para>
+ <programlisting>dn: olcDatabase={0}config,cn=config
+objectClass: olcDatabaseConfig
+olcDatabase: {0}config
+olcAccess: to * by * none
+olcRootPW: {SSHA}iae+lrQZILpiUdf16Z9KmDmSwT77Dj4U</programlisting>
- <programlisting>TLSCipherSuite HIGH:MEDIUM:+SSLv3
-TLSCertificateFile /usr/local/etc/openldap/server.crt
-TLSCertificateKeyFile /usr/local/etc/openldap/private/server.key
-TLSCACertificateFile /usr/local/etc/openldap/ca.crt
-rootpw {SHA}W6ph5Mm5Pz8GgiULbPgzG37mj9g=</programlisting>
+ <para>Der voreingestellte Benutzername für den Administrator
+ lautet <literal>cn=config</literal>. Geben Sie
+ <filename>slappasswd</filename> in eine Shell ein, wählen Sie
+ ein Passwort und verwenden Sie seinen Hash in
+ <literal>olcRootPW</literal>. Wenn diese Option jetzt nicht
+ angegeben ist, kann vor dem Import der
+ <filename>slapd.ldif</filename> niemand später den Abschnitt
+ <emphasis>global configuration</emphasis> ändern.</para>
- <para>Aktivieren Sie abschließend
- <application>OpenLDAP</application> in
- <filename>/etc/rc.conf</filename> und setzen Sie die
- <acronym>URI</acronym>:</para>
+ <para>Der letzte Abschnitt befasst sich mit dem
+ Datenbank-Backend:</para>
- <programlisting>slapd_enable="YES"
-slapd_flags="-4 -h ldaps:///"</programlisting>
+ <programlisting>#######################################################################
+# LMDB database definitions
+#######################################################################
+#
+dn: olcDatabase=mdb,cn=config
+objectClass: olcDatabaseConfig
+objectClass: olcMdbConfig
+olcDatabase: mdb
+olcDbMaxSize: 1073741824
+olcSuffix: dc=domain,dc=example
+olcRootDN: cn=mdbadmin,dc=domain,dc=example
+# Cleartext passwords, especially for the rootdn, should
+# be avoided. See slappasswd(8) and slapd-config(5) for details.
+# Use of strong authentication encouraged.
+olcRootPW: {SSHA}X2wHvIWDk6G76CQyCMS1vDCvtICWgn0+
+# The database directory MUST exist prior to running slapd AND
+# should only be accessible by the slapd and slap tools.
+# Mode 700 recommended.
+olcDbDirectory: /var/db/openldap-data
+# Indices to maintain
+olcDbIndex: objectClass eq</programlisting>
- <para>An dieser Stelle kann der Server gestartet und getestet
- werden:</para>
+ <para>Diese Datenbank enthält den
+ <emphasis>eigentlichen Inhalt</emphasis> des
+ <acronym>LDAP</acronym>-Verzeichnisses. Neben
+ <literal>mdb</literal> sind weitere Versionen
+ verfügbar. Dessen Superuser, nicht zu verwechseln mit dem
+ globalen, wird hier konfiguriert: ein Benutzername in
+ <literal>olcRootDN</literal> und der Passworthash in
+ <literal>olcRootPW</literal>; <filename>slappasswd</filename>
+ kann wie zuvor benutzt werden.</para>
- <screen>&prompt.root; <userinput>service slapd start</userinput></screen>
+ <para>Dieses <link
+ xlink:href="http://www.openldap.org/devel/gitweb.cgi?p=openldap.git;a=tree;f=tests/data/regressions/its8444;h=8a5e808e63b0de3d2bdaf2cf34fecca8577ca7fd;hb=HEAD">Repository</link>
+ enthält vier Beispiele für <filename>slapd.ldif</filename>.
+ Lesen Sie diese Seite, um eine bestehende
+ <filename>slapd.conf</filename> in
+ <filename>slapd.ldif</filename> zu konvertieren. Beachten
+ Sie, dass dies einige unbrauchbare Optionen
+ einführen kann.</para>
- <para>Wenn alles richtig konfiguriert ist, sollte eine Suche im
- Verzeichnis, wie in diesem Beispiel, eine erfolgreiche
- Verbindung mit einer Antwort liefern:</para>
+ <para>Wenn die Konfiguration abgeschlossen ist, muss
+ <filename>slapd.ldif</filename> in ein leeres Verzeichnis
+ verschoben werden. Folgendes ist die empfohlene
+ Vorgehensweise:</para>
- <screen>&prompt.root; <userinput>ldapsearch -Z</userinput>
-# extended LDIF
+ <screen>&prompt.root; <userinput>mkdir /usr/local/etc/openldap/slapd.d/</userinput></screen>
+ <para>Importieren Sie die Konfigurationsdatenbank:</para>
+
+ <screen>&prompt.root; <userinput>/usr/local/sbin/slapadd -n0 -F /usr/local/etc/openldap/slapd.d/ -l /usr/local/etc/openldap/slapd.ldif</userinput></screen>
+
+ <para>Starten Sie den <filename>slapd</filename>-Daemon:</para>
+
+ <screen>&prompt.root; <userinput>/usr/local/libexec/slapd -F /usr/local/etc/openldap/slapd.d/</userinput></screen>
+
+ <para>Die Option <literal>-d</literal> kann, wie in slapd(8)
+ beschrieben, zur Fehlersuche benutzt werden. Stellen Sie
+ sicher, dass der Server läuft und korrekt arbeitet:</para>
+
+ <screen>&prompt.root; <userinput>ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts</userinput>
+# extended LDIF
#
# LDAPv3
-# base <dc=example,dc=com> (default) with scope subtree
+# base <> with scope baseObject
# filter: (objectclass=*)
-# requesting: ALL
+# requesting: namingContexts
+#
+#
+dn:
+namingContexts: dc=domain,dc=example
+
# search result
-search: 3
-result: 32 No such object
+search: 2
+result: 0 Success
-# numResponses: 1</screen>
+# numResponses: 2
+# numEntries: 1</screen>
- <note>
- <para>Wenn der Befehl fehlschlägt, aber die Konfiguration
- richtig aussieht, stoppen Sie den
- <command>slapd</command>-Dienst. Starten Sie anschließend
- den Dienst mit
- <foreignphrase>Debugging</foreignphrase>-Optionen:</para>
+ <para>Dem Server muss noch vertraut werden. Wenn dies noch nie
+ zuvor geschehen ist, befolgen Sie diese Anweisungen.
+ Installieren Sie das Paket oder den Port OpenSSL:</para>
- <screen>&prompt.root; <userinput>service slapd stop</userinput>
-&prompt.root; <userinput>/usr/local/libexec/slapd -d -1</userinput></screen>
- </note>
+ <screen>&prompt.root; <userinput>pkg install openssl</userinput></screen>
- <para>Sobald der Dienst antwortet, kann das Verzeichnis mit dem
- Befehl <command>ldapadd</command> bestückt werden. In diesem
- Beispiel gibt es eine Datei mit einer Liste von Benutzern, die
- diesem Verzeichnis hinzugefügt werden. Die Einträge sollten
- das folgende Format haben:</para>
+ <para>Aus dem Verzeichnis, in dem <filename>ca.crt</filename>
+ gespeichert ist (in diesem Beispiel
+ <filename>/usr/local/etc/openldap</filename>), starten
+ Sie:</para>
- <programlisting>dn: dc=<replaceable>example</replaceable>,dc=<replaceable>com</replaceable>
-objectclass: dcObject
-objectclass: organization
-o: <replaceable>Example</replaceable>
-dc: <replaceable>Example</replaceable>
+ <screen>&prompt.root; <userinput>c_rehash .</userinput></screen>
-dn: cn=<replaceable>Manager</replaceable>,dc=<replaceable>example</replaceable>,dc=<replaceable>com</replaceable>
-objectclass: organizationalRole
-cn: <replaceable>Manager</replaceable></programlisting>
+ <para>Sowohl die CA als auch das Serverzertifikat werden nun in
+ ihren jeweiligen Rollen korrekt erkannt. Um dies zu
+ überprüfen, führen die folgenden Befehl aus dem Verzeichnis
+ der <filename>server.crt</filename> aus:</para>
- <para>Um diese Datei zu importieren, geben Sie den Dateinamen
- an. Bei dem folgenden Befehl werden Sie wieder zur Eingabe
- des Passworts aufgefordert, das Sie zuvor eingegeben haben.
- Die Ausgabe sollte wie folgt aussehen:</para>
+ <screen>&prompt.root; <userinput>openssl verify -verbose -CApath . server.crt</userinput></screen>
- <screen>&prompt.root; <userinput>ldapadd -Z -D "cn=<replaceable>Manager</replaceable>,dc=<replaceable>example</replaceable>,dc=<replaceable>com</replaceable>" -W -f <replaceable>import.ldif</replaceable></userinput>
-Enter LDAP Password:
-adding new entry "dc=example,dc=com"
+ <para>Falls <filename>slapd</filename> ausgeführt wurde, muss
+ der Daemon neu gestartet werden. Wie in
+ <filename>/usr/local/etc/rc.d/slapd</filename> angegeben,
+ müssen die folgenden Zeilen in
+ <filename>/etc/rc.conf</filename> eingefügt werden, um
+ <filename>slapd</filename> beim Booten ordnungsgemäß
+ auszuführen:</para>
-adding new entry "cn=Manager,dc=example,dc=com"</screen>
+ <programlisting>lapd_enable="YES"
+slapd_flags='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/
+ldap://0.0.0.0/"'
+slapd_sockets="/var/run/openldap/ldapi"
+slapd_cn_config="YES"</programlisting>
- <para>Stellen Sie mit einer Suche auf dem Server sicher, dass
- die Daten importiert wurden. Nutzen Sie dazu
- <command>ldapsearch</command>:</para>
+ <para><filename>slapd</filename> bietet beim Booten keine
+ Möglichkeit zur Fehlersuche. Überprüfen Sie dazu
+ <filename>/var/log/debug.log</filename>,
+ <command>dmesg -a</command> und
+ <filename>/var/log/messages</filename>.</para>
- <screen>&prompt.user; <userinput>ldapsearch -Z</userinput>
-# extended LDIF
-#
-# LDAPv3
-# base <dc=example,dc=com> (default) with scope subtree
-# filter: (objectclass=*)
-# requesting: ALL
-#
+ <para>Das folgende Beispiel fügt die Gruppe
+ <literal>team</literal> und den Benutzer
+ <literal>john</literal> zur
+ <acronym>LDAP</acronym>-Datenbank <systemitem
+ class="systemname">domain.example</systemitem>
+ hinzu, die bislang leer ist. Erstellen Sie
+ zunächst die Datei
+ <filename>domain.ldif</filename>:</para>
-# example.com
-dn: dc=example,dc=com
+ <screen>&prompt.root; <userinput>cat domain.ldif</userinput>
+dn: dc=domain,dc=example
objectClass: dcObject
objectClass: organization
-o: Example
-dc: Example
+o: domain.example
+dc: domain
-# Manager, example.com
-dn: cn=Manager,dc=example,dc=com
-objectClass: organizationalRole
-cn: Manager
+dn: ou=groups,dc=domain,dc=example
+objectClass: top
+objectClass: organizationalunit
+ou: groups
-# search result
-search: 3
-result: 0 Success
+dn: ou=users,dc=domain,dc=example
+objectClass: top
+objectClass: organizationalunit
+ou: users
-# numResponses: 3
-# numEntries: 2</screen>
+dn: cn=team,ou=groups,dc=domain,dc=example
+objectClass: top
+objectClass: posixGroup
+cn: team
+gidNumber: 10001
- <para>An dieser Stelle sollte der Server konfiguriert sein und
- ordnungsgemäß funktionieren.</para>
+dn: uid=john,ou=users,dc=domain,dc=example
+objectClass: top
+objectClass: account
+objectClass: posixAccount
+objectClass: shadowAccount
+cn: John McUser
+uid: john
+uidNumber: 10001
+gidNumber: 10001
+homeDirectory: /home/john/
+loginShell: /usr/bin/bash
+userPassword: secret</screen>
+
+ <para>Weitere Informationen finden Sie in der
+ OpenLDAP-Dokumentation. Benutzen Sie
+ <filename>slappasswd</filename>, um das Passwort
+ durch einen Hash in
+ <literal>userPassword</literal> zu ersetzen. Der in
+ <literal>loginShell</literal> angegebene Pfad muss in
+ allen Systemen existieren, in denen
+ <literal>john</literal> sich anmelden darf. Benutzen
+ Sie schließlich den <literal>mdb</literal>-Administrator,
+ um die Datenbank zu ändern:</para>
+
+ <screen>&prompt.root; <userinput>ldapadd -W -D "cn=mdbadmin,dc=domain,dc=example" -f domain.ldif</userinput></screen>
+
+ <para>Änderungen im Bereich
+ <emphasis>global configuration</emphasis> können nur vom
+ globalen Superuser vorgenommen werden. Angenommen die Option
+ <literal>olcTLSCipherSuite: HIGH:MEDIUM:SSLv3</literal> wurde
+ ursprünglich definiert und soll nun gelöscht werden.
+ Dazu erstellen Sie zunächst eine Datei mit folgendem
+ Inhalt:</para>
+
+ <screen>&prompt.root; <userinput>cat <replaceable>global_mod</replaceable></userinput>
+dn: cn=config
+changetype: modify
+delete: olcTLSCipherSuite</screen>
+
+ <para>Übernehmen Sie dann die Änderungen:</para>
+
+ <screen>&prompt.root; <userinput>ldapmodify -f global_mod -x -D "cn=config" -W</userinput></screen>
+
+ <para>Geben Sie bei Aufforderung das im Abschnitt
+ <emphasis>configuration backend</emphasis> gewählte
+ Passwort ein. Der Benutzername ist nicht erforderlich:
+ Hier repräsentiert <literal>cn=config</literal> den DN des zu
+ ändernden Datenbankabschnitts. Alternativ können Sie mit
+ <literal>ldapmodify</literal> eine einzelne Zeile der
+ Datenbank löschen, mit <literal>ldapdelete</literal> einen
+ ganzen Eintrag.</para>
+
+ <para>Wenn etwas schief geht oder der globale Superuser nicht
+ auf das Konfigurations-Backend zugreifen kann, ist es
+ möglich, die gesamte Konfiguration zu löschen und neu zu
+ schreiben:</para>
+
+ <screen>&prompt.root; <userinput>rm -rf /usr/local/etc/openldap/slapd.d/</userinput></screen>
+
+ <para><filename>slapd.ldif</filename> kann dann bearbeitet und
+ erneut importiert werden. Bitte folgenden Sie dieser
+ Vorgehensweise nur, wenn keine andere Lösung verfügbar
+ ist.</para>
+
+ <para>Dies ist nur die Konfiguration des Servers. Auf demselben
+ Rechner kann auch ein LDAP-Client mit eigener, separater
+ Konfiguration betrieben werden.</para>
</sect2>
</sect1>
More information about the svn-doc-head
mailing list