<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.de.xsl"?>
<modulesynopsis metafile="mod_ldap.xml.meta">

<name>mod_ldap</name>
<description>LDAP-Verbindungs-Pooling und Zwischenspeicherung der
Ergebnisse f&uuml;r die Verwendung durch andere LDAP-Module</description>
<status>Experimentell</status>
<sourcefile>util_ldap.c</sourcefile>
<identifier>ldap_module</identifier>
<compatibility>Verf&uuml;gbar ab Version 2.0.41</compatibility>

<summary>
    <p>Dieses Modul soll die Leistung von Websites verbessern, die auf
    Backend-Verbindungen zu LDAP-Servern angewiesen sind (LDAP steht
    f&uuml;r Lightweight Directory Access Protocol). Neben den Funktionen der
    LDAP-Standardbibliotheken enth&auml;lt dieses Modul einen LDAP-
    Verbindungspool und einen LDAP-Zwischenspeicher.</p>

    <p>Um dieses Modul zu aktivieren, muss die LDAP-Unterst&uuml;tzung
    beim Kompilieren mit eingebunden werden. Hierf&uuml;r wird das Flag
    <code>--with-ldap</code> in das <code>./configure</code>-Skript
    eingef&uuml;gt.</p>

    <p>F&uuml;r die SSL-Unterst&uuml;tzung muss das Modul 
<module>mod_ldap</module>
    mit folgenden LDAP-SDKs gebunden werden:
    <a href="http://www.openldap.org/";>
    OpenLDAP-SDK</a> (Version 1.x und 2.x),
    <a href="http://developer.novell.com/ndk/cldap.htm";>Novell LDAP-SDK</a>
    oder das <a href="http://www.iplanet.com/downloads/developer/";>
    iPlanet-SDK</a> (Netscape).</p>

</summary>

<section id="exampleconfig"><title>Beispielkonfiguration</title>
    <p>Im folgenden Beispiel wird die HTTP-Basic-Authentifizierung &uuml;ber das
    Modul <module>mod_auth_ldap</module> mit
    <module>mod_ldap</module> beschleunigt.</p>

    <example>
      # Aktivierung des LDAP-Verbndungspools und des Cache<br />
      # Aktivierung des LDAP-Cache-Status-Handlers<br />
      # Hierf&uuml;r m&uuml;ssen mod_ldap und mod_auth_ldap<br />
      # geladen werden. &Auml;ndern Sie "yourdomain.example.com" f&uuml;r<br />
      # Ihre Dom&auml;ne.<br />
      <br />
      LDAPSharedCacheSize 200000<br />
      LDAPCacheEntries 1024<br />
      LDAPCacheTTL 600<br />
      LDAPOpCacheEntries 1024<br />
      LDAPOpCacheTTL 600<br />
      <br />
      &lt;Location /ldap-status&gt;<br />
      <indent>
        SetHandler ldap-status<br />
        Order deny,allow<br />
        Deny from all<br />
        Allow from yourdomain.example.com<br />
        AuthLDAPEnabled on<br />
        AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one<br />
        AuthLDAPAuthoritative on<br />
        require valid-user<br />
      </indent>
      &lt;/Location&gt;
    </example>
</section>

<section id="pool"><title>LDAP-Verbindungspool</title>

    <p>LDAP-Verbindungen werden Anfrage f&uuml;r Anfrage in den Pool
    gestellt. Auf diese Weise kann der LDAP-Server verbunden bleiben und
    ist bereit f&uuml;r die n&auml;chste Anfrage, ohne dass Verbindungen 
aufgehoben,
    hergestellt und erneut gebunden werden m&uuml;ssen. Die Leistungsvorteile 
sind
    mit denen der HTTP-Keepalives vergleichbar.</p>

    <p>Bei einem sehr besch&auml;ftigten Server ist es m&ouml;glich, dass viele 
Anfragen
    auf die gleiche LDAP-Serververbindung gleichzeitig zugreifen m&ouml;chten.
    Ist eine LDAP-Verbindung in Benutzung, erzeugt der Apache neben der
    urspr&uuml;nglichen eine neue Verbingung. Dadurch kann der Verbindungspool
    nicht zu einem Engpass werden.</p>

    <p>Das Verbindungs-Pooling muss nicht manuell in der Apache-Konfiguration
    vorgenommen werden. Jedes Modul, das dieses Modul f&uuml;r den Zugriff auf
    LDAP-Dienste nutzt, bedient sich des Verbindungspools.</p>
</section>

<section id="cache"><title>LDAP-Cache</title>

    <p>Um eine Leistungssteigerung zu erreichen, benutzt das Modul
    <module>mod_ldap</module> eine aggressive Caching-Strategie, die die Anzahl
    der notwendigen Kontaktaufnahmen mit dem LDAP-Server verringert.
    Durch das Caching kann der Durchsatz leicht verdoppelt oder verdreifacht
    werden, wenn der Apache Seiten liefert, die durch
    <code>mod_auth_ldap</code> gesch&uuml;tzt sind. Au&szlig;erdem wird die
    Belastung des LDAP-Servers deutlich gesenkt.</p>

    <p>Das Modul <module>mod_ldap</module> unterst&uuml;tzt mit einem
    <em>Search/Bind-Cache</em> und mit zwei <em>Operation-Caches</em>
    w&auml;hrend der Vergleichsphase zwei Arten von LDAP-Caching w&auml;hrend
    des Suchens und Bindens. Jede LDAP-URL,
    die vom Server benutzt wird, besitzt jeweils drei eigene Caches.</p>

    <section id="search-bind"><title>Der Search/Bind-Cache</title>
      <p>Das Suchen und das anschlie&szlig;ende Binden ist der 
zeitaufw&auml;ndigste
      Teil einer LDAP-Operation, insbesondere dann, wenn es sich um ein
      gro&szlig;es Verzeichnis handelt. Der Search/Bind-Cache speichert alle 
Suchen mit
      erfolgreichem Binden zwischen. Negative Ergebnisse (erfolglose Suchen oder
      erfolgloses Binden) werden nicht zwischengespeichert. Dahinter steht der
      Gedanke, dass Verbindungen mit ung&uuml;ltigen Beglaubigungsangaben nur 
einen
      geringen Prozentsatz der gesamten Anzahl der Verbindungen ausmachen,
      so dass weniger Cache-Speicher benutzt wird, wenn ung&uuml;ltige
      Beglaubigungsangaben nicht zwischengespeichert werden.</p>

      <p><module>mod_ldap</module> speichert den Benutzernamen, den DN
      (Distinguished Name), das Passwort f&uuml;r die Bindung sowie den 
Zeitpunkt
      des Bindens im Cache. Wird eine neue Verbindung mit dem gleichen
      Benutzernamen eingerichtet, vergleicht <module>mod_ldap</module>
      das Passwort der neuen Verbindung mit dem Passwort im Cache. Stimmen
      sie &uuml;berein und ist der Cache-Eintrag nicht zu alt, &uuml;berspringt
      <module>mod_ldap</module> die Such- und Bindephase.</p>

      <p>Der Such- und Binde-Cache wird mit den Direktiven
      <directive module="mod_ldap">LDAPCacheEntries</directive> und
      <directive module="mod_ldap">LDAPCacheTTL</directive>
      kontrolliert.</p>
    </section>

    <section id="opcaches"><title>Operation-Caches</title>
      <p>W&auml;hrend des Attribut- und Distinguished-Name-Vergleichs verwendet
      <module>mod_ldap</module> zwei Operation-Caches zur
      Zwischenspeicherung der Vergleichsoperationen. Im ersten Cache werden
      die Ergebnisse von Vergleichen zur &Uuml;berpr&uuml;fung der LDAP-
      Gruppenmitgliedschaft zwischengespeichert. Im zweiten Cache werden die
      Ergebnisse von Vergleichen zwischen Distinguished-Names abgelegt.</p>

      <p>Das Verhalten beider Zwischenspeicher wird mit den Anweisungen
      <directive module="mod_ldap">LDAPOpCacheEntries</directive>
      und <directive module="mod_ldap">LDAPOpCacheTTL</directive>
      kontrolliert.</p>
    </section>

    <section id="monitoring"><title>Den Cache &uuml;berwachen</title>
      <p><module>mod_ldap</module> verf&uuml;gt &uuml;ber einen Content-Handler
      mit der Bezeichnung <code>ldap-status</code>, mit dem Administratoren
      die Cache-Leistung &uuml;berwachen k&ouml;nnen. Mit den folgenden 
Anweisungen
      kann auf die Cache-Informationen von <module>mod_ldap</module>
      zugegriffen werden:</p>

      <example>
        &lt;Location /server/cache-info&gt;<br />
        <indent>
          SetHandler ldap-status<br />
        </indent>
        &lt;/Location&gt;
      </example>

      <p>&Uuml;ber die URL <code>http://servername/cache-info</code> erh&auml;lt
      der Administrator einen Statusbericht f&uuml;r jeden vom Modul
      <module>mod_ldap</module>  benutzten Cache. Unterst&uuml;tzt der Apache
      die gemeinsame Speichernutzung nicht, dann besitzt jede<code>httpd</code>-
      Instanz einen eigenen Cache, so dass das erneute Laden der URL jeweils
      unterschiedliche Informationen liefert, je nach dem, welche
      <code>httpd</code>-Instanz die Anfrage verarbeitet.</p>
    </section>
</section>

<section id="usingssltls"><title>SSL verwenden</title>

    <p>Die M&ouml;glichkeit, SSL-Verbindungen zu einem LDAP-Server
    herzustellen, wird mit den Anweisungen
    <directive module="mod_ldap">LDAPTrustedCA</directive> und
    <directive module="mod_ldap">LDAPTrustedCAType</directive> gesteuert.
    Diese Direktiven geben die Zertifikatsdatei oder Datenbank sowie den
    Zertifikatstyp an. Enth&auml;lt eine LDAP-URL <em>ldaps://</em>, dann 
richtet
    <module>mod_ldap</module> eine sichere Verbindung zum
    LDAP-Server ein.</p>

    <example>
      # Einrichtung einer SSL-LDAP-Verbindung.<br />
      # mod_ldap und mod_auth_ldap m&uuml;ssen geladen sein. &Auml;ndern Sie<br 
/>
      # "yourdomain.example.com" f&uuml;r Ihre Dom&auml;ne.<br />
      <br />
      LDAPTrustedCA /certs/certfile.der<br />
      LDAPTrustedCAType DER_FILE<br />
      <br />
      &lt;Location /ldap-status&gt;<br />
      <indent>
        SetHandler ldap-status<br />
        Order deny,allow<br />
        Deny from all<br />
        Allow from yourdomain.example.com<br />
        AuthLDAPEnabled on<br />
        AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one<br />
        AuthLDAPAuthoritative on<br />
        require valid-user<br />
      </indent>
      &lt;/Location&gt;
    </example>

    <p>Wenn <module>mod_ldap</module> mit dem
    Netscape/iPlanet LDAP-SDK gebunden ist, wird mit SSL-Servern nur
    kommuniziert, wenn der Server &uuml;ber ein von einer bekannten
    Zertifizierungsinstanz (CA) gezeichnetes Zertifikat verf&uuml;gt. 
Hierf&uuml;r muss dem
   Modul <module>mod_ldap</module> in der Konfiguration mitgeteilt werden,
   wo eine Datenbank mit den bekannten CAs zu finden ist. Diese Datenbank
   hat das gleiche Format wie die <code>cert7.db</code>-Datei des
   Netscape Communicator. Am einfachsten wird auf diese Datei zugegriffen,
   indem eine neue Kopie Netscape gestartet und auf die
   <code>$HOME/.netscape/cert7.db</code>-Datei zugegriffen wird.</p>

</section>

<directivesynopsis>
<name>LDAPSharedCacheSize</name>
<description>Die gr&ouml;&szlig;e der drei gemeinsam genutzten Cache-Speicher
in Byte</description>
<syntax>LDAPSharedCacheSize <var>Byte</var></syntax>
<default>LDAPSharedCacheSize 102400</default>
<contextlist><context>server config</context></contextlist>

<usage>
    <p>Legt die Gr&ouml;&szlig;e des gemeinsam genutzten Cache-Speichers in 
Byte fest.
    Die Voreinstellung sind 100 kByte.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>LDAPCacheEntries</name>
<description>Maximale Anzahl der Eintr&auml;ge im prim&auml;ren
LDAP-Cache</description>
<syntax>LDAPCacheEntries <var>Anzahl</var></syntax>
<default>LDAPCacheEntries 1024</default>
<contextlist><context>server config</context></contextlist>

<usage>
    <p>Gibt die maximale Anzahl der Eintr&auml;ge im prim&auml;ren LDAP-Cache 
an. Dieser
    Cache enth&auml;lt die Ergebisse erfolgereicher Suchen und erfolgreichen
    Bindens. Der Wert <code>0</code> schaltet das Search/Bind-Caching aus.
    Die Voreinstellung l&auml;sst 1.024 Eintr&auml;ge zu.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>LDAPCacheTTL</name>
<description>Der Zeitraum, &uuml;ber den ein Eintrag g&uuml;ltig 
bleibt.</description>
<syntax>LDAPCacheTTL <var>Sekunden</var></syntax>
<default>LDAPCacheTTL 600</default>
<contextlist><context>server config</context></contextlist>

<usage>
    <p>Gibt den Zeitraum in Sekunden an, &uuml;ber den ein Eintrag im
    Search/Bind-Cache g&uuml;ltig bleibt. Die Vorgabe liegt bei 600 Sekunden
    oder 10 Minuten.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>LDAPOpCacheEntries</name>
<description>Die Anzahl der Eintr&auml;ge f&uuml;r Vergleichsoperationen im 
Cache</description>
<syntax>LDAPOpCacheEntries <var>Anzahl</var></syntax>
<default>LDAPOpCacheEntries 1024</default>
<contextlist><context>server config</context></contextlist>

<usage>
    <p>Gibt die Anzahl der Eintr&auml;ge an, die <module>mod_ldap</module>
    f&uuml;r die Zwischenspeicherung von LDAP-Vergleichsoperationen verwendet.
    Die Voreinstellung sind 1.024 Eintr&auml;ge. Der Wert <code>0</code> 
deaktiviert
    das Operation-Caching.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>LDAPOpCacheTTL</name>
<description>Der Zeitraum, &uuml;ber den  Eintr&auml;ge im Operation-Cache
g&uuml;ltig bleiben.</description>
<syntax>LDAPOpCacheTTL <var>Sekunden</var></syntax>
<default>LDAPOpCacheTTL 600</default>
<contextlist><context>server config</context></contextlist>

<usage>
    <p>Gibt den Zeitraum in Sekunden an, &uuml;ber den Eintr&auml;ge im
    Operation-Cache g&uuml;ltig sind. Die Voreinstellung sind 600 Sekunden.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>LDAPTrustedCA</name>
<description>Die Datei oder Datenbank mit dem Zertifikat der
Zertifizierungsinstanz</description>
<syntax>LDAPTrustedCA <var>Verzeichnispfad/Dateiname</var></syntax>
<contextlist><context>server config</context></contextlist>

<usage>
    <p>Gibt den Pfad und Dateinamen zum Zertifikat der CA an, das
    <module>mod_ldap</module> bei der Einrichtung einer
    SSL-Verbindung zu einem LDAP-Server benutzen soll. Wird das
    Netscape/iPlanet Directory-SDK benutzt, lautet der Dateiname
   <code>cert7.db</code>.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>LDAPTrustedCAType</name>
<description>Der Type der CA-Datei</description>
<syntax>LDAPTrustedCAType <var>Typ</var></syntax>
<contextlist><context>server config</context></contextlist>

<usage>
    <p>Folgende Typen k&ouml;nnen angegeben werden:<br />
          DER_FILE      - Bin&auml;res DER-Format<br />
          BASE64_FILE   - Base64-Textformat<br />
          CERT7_DB_PATH - Netscape Zertifikat-Datenbankdatei ")</p>
</usage>
</directivesynopsis>

</modulesynopsis>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to