[AIX Solaris HP-UX Linux Windows][z/OS]

SSL-Anweisungen

SSL-Anweisungen (Secure Sockets Layer) sind die Konfigurationsparameter, die die SSL-Features in IBM HTTP Server steuern.

Die meisten SSL-Anweisungen in IBM HTTP Server weisen dasselbe Verhalten auf. Eine für eine bestimmte virtuelle Hostkonfiguration angegebene Anweisung überschreibt eine in der Basisserverkonfiguration angegebene Anweisung. Außerdem überschreibt eine für ein untergeordnetes Verzeichnis angegebene Anweisung eine Anweisung, die für das zugehörige übergeordnete Verzeichnis angegeben wurde. Es gibt jedoch Ausnahmen.

Wenn beispielsweise keine Anweisung für einen virtuellen Host angegeben ist, kann kann die in der Basisserverkonfiguration angegebene Anweisung in die Konfiguration des virtuellen Hosts kopiert werden. In diesem Fall überschreibt die Anweisung in der Basisserverkonfiguration die Konfiguration des virtuellen Hosts.
Achtung: Die Anweisung "SSLEnable" darf nicht in der Basisserverkonfiguration angegeben werden, wenn die Anweisung nicht automatisch in die Konfiguration eines bestimmten virtuellen Hosts kopiert werden soll.

Außerdem kann eine für ein untergeordnetes Verzeichnis angegebene Anweisung an die Anweisung, die für das zugehörige übergeordnete Verzeichnis angegeben wurde, angefügt werden. In diesem Fall überschreibt die Anweisung für das übergeordnete Verzeichnis die Anweisung für das untergeordnete Verzeichnis nicht, sondern wird an diese angehängt, und es werden beide Anweisungen auf das untergeordnete Verzeichnis angewendet.

Die folgende Liste enthält die SSL-Anweisungen für IBM HTTP Server.

SSLOCSPResponderURL

Die Anweisung "SSLOCSPResponderURL" ermöglicht die Überprüfung von Clientzertifikaten über einen statisch konfigurierten OCSP-Responder (Online Certificate Status Protocol).
Name Beschreibung
Syntax

[AIX Solaris HP-UX Linux Windows] SSLOCSPResponderURL<URL>

Geltungsbereich Virtueller Host
Standardeinstellung Inaktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host
Werte Ein vollständig qualifizierter URL, der auf einen OCSP-Responder verweist, z. B. http://hostname:2560/.

Selbst wenn die CRL-Prüfung konfiguriert ist, wird die OCSP-Prüfung vor der CRL-Prüfung durchgeführt. Die CRL-Prüfung findet nur statt, wenn das Ergebnis der CRL-Prüfung unbekannt oder nicht schlüssig ist.

Wenn SSLOCSPResponderURL gesetzt ist, verwendet IBM® HTTP Server den angegebenen URL, um den Status des Zertifikatswiderrufs zu prüfen, wenn ein SSL-Clientzertifikat bereitgestellt wird.

Wenn SSLOCSPEnable und SSLOCSPResponderURL konfiguriert sind, wird zuerst der mit SSLOCSPResponderURL definierte Responder geprüft. Falls der Widerrufstatus unbekannt oder nicht schlüssig ist, überprüft IBM HTTP Server die OCSP-Responder für SSLOCSPEnable.
Fehler vermeiden Fehler vermeiden: In manchen Fällen ist IBM HTTP Server möglicherweise nicht in der Lage, den Widerrufstatus eines Clientzertifikats zu bestimmen, weil der Back-End-Server, die Quelle der Widerrufdaten, nicht verfügbar ist. Sie müssen Folgendes beachten:
  • Es muss ein statisches CRL-Repository (SSLCRLHost) konfiguriert sein, damit andere URI-Formate in den CRLDistributionPoint-Feldern geprüft werden können.
  • Wenn Ihre Zertifikate das LDAP- oder das HTTP-URI-Format der CertificateDistributionPoint- oder AIA-Erweiterungen haben, müssen Sie sicherstellen, dass das IBM HTTP-Server-System in der Lage ist, abgehende Verbindungen dieses Typs herzustellen. Möglicherweise müssen Sie dazu die Einstellungen Ihrer Firewall anpassen.
  • [AIX Solaris HP-UX Linux Windows] Die Anweisung "SSLUnknownRevocationStatus" wird für solche Fälle bereitgestellt, in denen behebbare Fehler in IBM HTTP Server bei der Kommunikation mit dem Back-End-Server auftreten und IBM HTTP Server den Widerrufstatus eines Zertifikats nicht bestimmen kann. Standardmäßig wird die Verarbeitung des Handshakes fortgesetzt, sofern der Back-End-Server nicht erfolgreich anzeigen kann, dass das Zertifikat widerrufen ist.
  • [z/OS] Die CRL-Abfrage ist nur bei einem explizit konfigurierten LDAP-Server möglich, und der SSL-Handshake scheitert, wenn der Back-End-Server nicht erreichbar ist.
gotcha

SSLOCSPEnable

Die Anweisung "SSLOCSPEnable" ermöglicht die Überprüfung von Clientzertifikaten über OCSP-Responder, die in der AIA-Erweiterung (Authority Information Access) ihres Zertifikats definiert sind.
Name Beschreibung
Syntax

[AIX Solaris HP-UX Linux Windows] SSLOCSPEnable

Geltungsbereich Virtueller Host
Standardeinstellung Inaktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host
Werte Ohne

Wenn SSLOCSPEnable gesetzt ist und eine SSL-Clientzertifizierungskette eine AIA-Erweiterung enthält, wendet sich IBM HTTP Server an den in der AIA-Erweiterung angegebenen OCSP-Responder, um den Widerrufstatus des Clientzertifikats zu prüfen.

Wenn die OCAP- und die CRL-Prüfung konfiguriert sind, wird die OCSP-Prüfung vor der CRL-Prüfung durchgeführt. Die CRL-Prüfung findet nur statt, wenn das Ergebnis der OCSP-Prüfung unbekannt oder nicht schlüssig ist.

Wenn SSLOCSPEnable und SSLOCSPResponderURL konfiguriert sind, wird zuerst der mit SSLOCSPResponderURL definierte Responder geprüft. Falls der Widerrufstatus unbekannt oder nicht schlüssig ist, überprüft IBM HTTP Server die OCSP-Responder für SSLOCSPEnable.

Anweisung Keyfile

Die Anweisung "Keyfile" legt die zu verwendende Schlüsseldatei fest.
Achtung: Diese Anweisung kann von der Basisserverkonfiguration überschrieben werden.
Name Beschreibung
Syntax
[AIX][Solaris][HP-UX][Linux][Windows] Keyfile [/prompt] /vollständig qualifizierter Pfad der Schlüsseldatei/keyfile.kdb
[z/OS] Achtung: Die Funktion /prompt wird nur bei der Ausführung über eine USS-Shell und nicht bei der Ausführung über einen gestarteten JCL-Job unterstützt. Wenn Sie die Funktion /prompt über einen gestarteten JCL-Job verwenden, tritt ein Konfigurationsfehler auf.
[z/OS] Sie können einen im HFS (Hierarchical File System) oder im SAF (System Authorization Facility) gespeicherten Schlüsselring verwenden. Geben Sie zur Verwendung eines in HFS gespeicherten Schlüsselrings Folgendes ein:
  • Keyfile /vollständig qualifizierter Pfad der Schlüsseldatei/keyfile.kdb
Geben Sie zur Verwendung eines in SAF gespeicherten Schlüsselrings Folgendes ein:
  • Keyfile /saf WASKeyring
    Wichtig: Bei SAF-Schlüsselringen gilt Folgendes:
    • Bei der Verwendung von SAF gibt es keine Stashdatei, und der Zugriff wird durch SAF-Regeln gesteuert. Wenn Sie versuchen, das Argument "keyfile/prompt/saf" zu verwenden, wird das Argument deshalb nicht unterstützt. Die Verwendung dieses Arguments führt zu einem Konfigurationsfehler.
    • Die ID, die zum Starten von IBM HTTP Server verwendet wird, muss auf den in dieser Anweisung genannten Schlüsselring zugreifen können. Ist dies nicht möglich, schlägt die SSL-Initialisierung fehl.
Geltungsbereich Globaler Server oder virtueller Host
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Dateiname der Schlüsseldatei.

[AIX Solaris HP-UX Linux Windows] Wenn Sie die Option prompt verwenden, fordert IBM HTTP Server Sie beim Start auf, das Kennwort für die Schlüsseldatei anzugeben.

[z/OS] Verwenden Sie Zugriffschutz für das Dateisystem für die Einschränkung von Zugriffen. Mit den SAF-Schlüsselringen (System Authorization Facility) können Sie den Zugriff auf SSL-Zertifikate einschränken.

[z/OS] Wichtig: Das z/OS-System unterstützt keine Schlüsseldateien, die auf anderen Plattformen erstellt wurden. Schlüsseldateien, die für z/OS-Systeme verwendet werden, müssen auf der Plattform z/OS erstellt werden.
Sie können nur eine einzige der folgenden Konfigurationen für den Schlüsseldateityp verwenden.
  • [AIX Solaris HP-UX Linux Windows] Certificate Management Services (CMS)
  • [z/OS] CMS oder Resource Access Control Facility (RACF)

Anweisung SSLAcceleratorDisable

Die Anweisung "SSLAcceleratorDisable" inaktiviert die Beschleunigereinheit.
Name Beschreibung
Syntax SSLAcceleratorDisable
Geltungsbereich Virtuell und global
Standardeinstellung Beschleunigereinheit ist aktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host
Werte Ohne. Sie können die Anweisung an jeder Stelle in der Konfigurationsdatei einfügen, auch in der Zeilengruppe eines virtuellen Hosts. Wenn das System während der Initialisierung feststellt, dass eine Beschleunigereinheit auf der Maschine installiert ist, verwendet das System diesen Beschleuniger, um die Anzahl sicherer Transaktionen zu erhöhen. Für diese Anweisung sind keine Argumente verfügbar.
[AIX Solaris HP-UX Linux Windows]

Anweisung SSLAllowNonCriticalBasicConstraints

Die Anweisung "SSLAllowNonCriticalBasicConstraints" unterstützt die Kompatibilität mit einem Aspekt der von der japanischen Regierung ausgegebenen Spezifikation "GPKI", der mit RFC3280 in Konflikt steht.
Name Beschreibung
Syntax SSLAllowNonCriticalBasicConstraints on|off
Geltungsbereich Globaler Server oder virtueller Server
Standardeinstellung Off
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Ohne. Diese Anweisung ändert das Verhalten des Algorithmus für Zertifikatvalidierung so, dass eine nicht kritische Erweiterung der Basisvorgaben in einem CA-Ausstellerzertifikat keinen Validierungsfehler verursacht. Dies unterstützt die Kompatibilität mit einem Aspekt der von der japanischen Regierung ausgegebenen Spezifikation "GPKI", der mit RFC3280 in Konflikt steht.
Achtung: RFC3280 legt fest, dass diese Erweiterung als kritische Erweiterung in allen CA-Zertifikaten erscheinen muss, die öffentliche Schlüssel für die Validierung digitaler Signaturen in Zertifikaten enthalten.
[AIX][HP-UX][Linux][Solaris][z/OS]

Anweisung SSLCacheDisable

Die Anweisung "SSLCacheDisable" inaktiviert den Cache für externe SSL-Sitzungs-IDs.
Name Beschreibung
Syntax SSLCacheDisable
Geltungsbereich Eine Anweisung pro physischer Serverinstanz; nur zulässig außerhalb der Zeilengruppen für virtuelle Hosts
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Nicht zulässig
Werte Ohne.
[AIX][HP-UX][Linux][Solaris][z/OS]

Anweisung SSLCacheEnable

Die Anweisung "SSLCacheEnable" aktiviert den Cache für externe SSL-Sitzungs-IDs.
Name Beschreibung
Syntax SSLCacheEnable
Geltungsbereich Eine Anweisung pro physischer Serverinstanz; nur zulässig außerhalb der Zeilengruppen für virtuelle Hosts
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Nicht zulässig
Werte Ohne
[AIX][HP-UX][Linux][Solaris][z/OS]

Anweisung SSLCacheErrorLog

Die Anweisung "SSLCacheErrorLog" legt den Dateinamen für den Sitzungs-ID-Cache fest.
Name Beschreibung
Syntax SSLCacheErrorLog /usr/HTTPServer/logs/sidd_logg
Geltungsbereich Serverkonfiguration außerhalb des virtuellen Hosts.
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Nicht zulässig
Werte Ein gültiger Dateiname.
[AIX][HP-UX][Linux][Solaris][z/OS]

Anweisung SSLCachePath

Die Anweisung SSLCachePath gibt den Pfad des Dämons für das Caching von Sitzungs-IDs an. Sofern nicht mehrere IHS-Instanzen mit mehreren Parametern des Typs ServerRoot oder -d eine Installation gemeinsam nutzen, muss diese Anweisung nicht angegeben werden.

Wenn, wie zuvor beschrieben, mehrere IHS-Instanzen mit einem alternativen Serverstammverzeichnis verwendet werden, muss diese Anweisung verwendet werden, um für diese IHS-Instanz den Pfad zur Binärdatei bin/sidd im Stammverzeichnis der Einzelinstallation anzugeben, und nicht die getrennten (einzelnen) Serverstammverzeichnisse, die standardmäßig verwendet werden.

Wenn mehrere Instanzen verwendet werden, gibt es keinen triftigen Grund, die Binärdatei bin/sidd zu kopieren oder mit dieser Anweisung eine andere Datei als die Datei bin/sidd, die unter dem Serverstammverzeichnis installiert ist, anzugeben. Es ist nicht erforderlich, für die verschiedenen IHS-Instanzen, die dieselben Binärdateien verwenden, unterschiedliche Werte für diese Anweisung zu verwenden.

Name Beschreibung
Syntax SSLCachePath /usr/HTTPServer/bin/sidd
Geltungsbereich Serverkonfiguration außerhalb des virtuellen Hosts.
Standardeinstellung <Serverstammverzeichnis>/bin/sidd
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Nicht zulässig
Werte Ein gültiger Pfadname.
[AIX][HP-UX][Linux][Solaris][z/OS]

Anweisung SSLCachePortFilename

Die Anweisung The SSLCachePortFilename legt den Dateinamen für den UNIX-Domänensocket fest, der für die Kommunikation zwischen Serverinstanzen und dem Dämon für das Caching von Sitzungs-IDs verwendet wird. Sie müssen diese Anweisung definieren, wenn Sie beide Instanzen von IBM HTTP Server aus demselben Installationsverzeichnis ausführen und beide Instanzen für SSL konfiguriert sind. Andernfalls müssen Sie diese Anweisung nicht definieren.
Name Beschreibung
Syntax SSLCachePath /usr/HTTPServer/logs/sidd
Geltungsbereich Serverkonfiguration außerhalb des virtuellen Hosts.
Standardeinstellung Wenn diese Anweisung nicht definiert, aber der Cache aktiviert ist, versucht der Server, die Datei <Serverstammverzeichnis>/logs/siddport zu verwenden.
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Nicht zulässig
Werte Ein gültiger Pfadname. Der Web-Server löscht diese Datei beim Starten.
[AIX][HP-UX][Linux][Solaris][z/OS]

Anweisung SSLCacheTraceLog

Die Anweisung "SSLCacheTraceLog" gibt die Datei an, in die die Tracenachrichten für Sitzungs-IDs geschrieben werden. Ohne diese Anweisung ist der Trace inaktiviert.
Name Beschreibung
Syntax SSLCacheTraceLog /usr/HTTPServer/logs/sidd-trace.log
Geltungsbereich Serverkonfiguration außerhalb des virtuellen Hosts.
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Nicht zulässig
Werte Ein gültiger Pfadname.

Anweisung SSLCipherBan

Die Anweisung "SSLCipherBan" verweigert den Zugriff auf ein Objekt, wenn der Client für die Verbindungsherstellung eine der angegebenen Verschlüsselungen verwendet. Die Anforderung schlägt mit dem Statuscode 403 fehl.
Achtung: Wenn diese Anweisung für ein untergeordnetes Verzeichnis angegeben wird, wird die für das übergeordnete Verzeichnis angegebene Anweisung nicht überschrieben. Stattdessen werden beide Anweisungen auf das untergeordnete Verzeichnis angewendet.
Name Beschreibung
Syntax SSLCipherBan <Verschlüsselungsspezifikation>
Geltungsbereich Mehrere Instanzen pro Verzeichniszeilengruppen
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Zulässig pro Verzeichniszeilengruppe. Die Prioritätsreihenfolge ist absteigend.
Werte Die Werte können Sie dem Artikel zur SSL-Verschlüsselungsspezifikation entnehmen.

Anweisung SSLCipherRequire

Die Anweisung "SSLCipherRequire" beschränkt den Zugriff auf Objekte auf Clients, die ihre Verbindung mit einer der angegebenen Verschlüsselungen hergestellt haben. Wenn der Zugriff verweigert wird, schlägt die Anforderung mit dem Statuscode 403 fehl.
Achtung: Wenn diese Anweisung für ein untergeordnetes Verzeichnis angegeben wird, wird die für das übergeordnete Verzeichnis angegebene Anweisung nicht überschrieben. Stattdessen werden beide Anweisungen auf das untergeordnete Verzeichnis angewendet.
Name Beschreibung
Syntax SSLCipherRequire <Verschlüsselungsspezifikation>
Geltungsbereich Mehrere Instanzen pro Verzeichniszeilengruppen
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Zulässig pro Verzeichniszeilengruppe.
Werte Die Werte können Sie dem Artikel zur SSL-Verschlüsselungsspezifikation entnehmen.

Anweisung SSLCipherSpec

Die Anweisung "SSLCipherSpec" ermöglicht Ihnen, die SSL-Verschlüsselungen anzupassen, die während des Handshakes unterstützt werden. Sie können die Gruppe der SSL-Verschlüsselungen und die Rangfolge der SSL-Verschlüsselungen festlegen.

[AIX Solaris HP-UX Linux Windows] Auf verteilten Plattformen hat jedes Protokoll eine eigene geordnete Liste mit Verschlüsselungen. Die unterstützten Protokolle sind SSL Version 2, SSL Version 3, TLS Version 1.0, TLS Version 1.1 und TLS Version 1.2.

[z/OS] Unter z/OS gibt es nur zwei Listen mit aktivierten Verschlüsselungen, eine für SSL Version 2 und eine für die anderen Protokolle. Die unterstützten Protokolle sind SSL Version 2, SSL Version 3 und TLS Version 1.0.

Für SSL Version 2 werden standardmäßig keine Verschlüsselungen verwendet, d. h., das Protokoll ist inaktiviert. Die anderen Protokolle verwenden standardmäßig eine Gruppe von SSL-Verschlüsselungen, von der Verschlüsselungen mit Nullwert, Exportverschlüsselungen und schwache Verschlüsselungen ausgeschlossen sind.

Wenn Sie die Form von SSLCipherSpec mit nur einem einzigen Argument verwenden, wird die angegebene Verschlüsselung in allen Protokollen aktiviert, für die diese gültig ist. Wenn eine solche Änderung zum ersten Mal für ein Protokoll vorgenommen wird, werden die Standardverschlüsselungen für das Protokoll verworfen.

Wenn Sie die Form von SSLCipherSpec mit mehreren Argumenten verwenden und den Namen eines SSL-Protokolls (oder "ALL") als erstes Argument angeben, können Sie eine erweiterte Syntax verwenden und die folgenden Vorteile nutzen:

  • Es können mehrere Verschlüsselungen mit jedem Vorkommen von SSLCipherSpec aufgelistet werden.
  • Es können einzelne Verschlüsselungen aus der aktuellen Gruppe aktivierter Verschlüsselungen entfernt werden, indem dem Verschlüsselungsnamen "-" vorangestellt wird.
  • Wenn eine bestimmte Protokollverschlüsselungsliste zum ersten Mal geändert wird, kann die angegebene Verschlüsselung am Ende der Standardverschlüsselungen hinzugefügt werden, anstatt diese zu ersetzen, indem dem Verschlüsselungsnamen "+" vorangestellt wird.

Wenn Sie "ALL" als Protokollnamen angeben, wird das definierte Hinzufügen bzw. Entfernen für jeden Verschlüsselungsnamen auf jedes Protokoll angewendet, in dem diese Verschlüsselung gültig ist.

Mit SSLCipherSpec ALL NONE können Sie alle Verschlüsselungslisten mit einem einzigen Befehl leeren. Die Verwendung dieses Befehls ist eine empfehlenswerte Methode, mit der eine Konfiguration jederzeit gestartet werden kann, wenn die Standardverschlüsselungen nicht verwendet werden sollen.

Name Beschreibung
[z/OS] Syntax [z/OS] SSLCipherSpec Kurzname oder SSLCipherSpec ausgeschriebener Name
[AIX Solaris HP-UX Linux Windows] Syntax [AIX Solaris HP-UX Linux Windows] SSLCipherSpec [Protokollname] [+|-]Kurzname|ausgeschriebener Name [[+|-]Kurzname|ausgeschriebener Name ...]
Geltungsbereich Virtueller Host
Standardeinstellung Wenn Sie keinen Wert angeben, verwendet der Server alle verfügbaren Verschlüsselungsspezifikationen, die nicht null, keine Exportverschlüsselungen und keine schwachen Verschlüsselungen sind.
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Zulässig. Die Prioritätsreihenfolge ist absteigend.
[AIX Solaris HP-UX Linux Windows] Werte für den Protokollnamen auf verteilten Plattformen [AIX Solaris HP-UX Linux Windows] SSLv2, SSLv3, TLSv10, TLSv11, TLSv12, ALL
[z/OS] Werte für den Protokollnamen unter z/OS [z/OS] SSLv2, SSLv3, TLSv10, ALL
Werte für Verschlüsselungsnamen Die Werte können Sie dem Artikel zur SSL-Verschlüsselungsspezifikation entnehmen.
Beispiel 1
Wenn Sie nur einige wenige Verschlüsselungen auswählen möchten, empfiehlt es sich, beim Start alle Verschlüsselungslisten zurückzusetzen und dann die Verschlüsselungen hinzuzufügen, die Sie verwenden möchten:
# Alle Verschlüsselungen aus den Verschlüsselungslisten löschen
SSLCipherSpec ALL NONE
# Bestimmte Verschlüsselungen hinzufügen
SSLCipherSpec ALL +SSL_RSA_WITH_3DES_EDE_CBC_SHA SSLCipherSpec
ALL +TLS_RSA_WITH_AES_256_CBC_SHA 
Beispiel 2 Wenn Sie die meisten Standardverschlüsselungen bis auf eine oder zwei verwenden möchten, können Sie die nicht gewünschten Verschlüsselungen aus allen Listen entfernen, in denen diese Verschlüsselungen momentan enthalten sind:
# Einige bestimmte Verschlüsselungen aus den Protokollen
# löschen, in denen sie gültig sind:
SSLCipherSpec ALL -SSL_RSA_WITH_RC4_128_MD5
SSLCipherSpec ALL -SSL_RSA_WITH_RC4_128_SHA 

Anweisung "SSLClientAuth"

Die Anweisung "SSLClientAuth" legt den zu verwendenden Modus für die Clientauthentifizierung fest. Die gültigen Werte sind 0/none, 1/optional und 2/erforderlich.
Name Beschreibung
Syntax SSLClientAuth <erforderliche Stufe> [crl]
Geltungsbereich Virtueller Host
Standardeinstellung SSLClientAuth none
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host
Werte
  • 0/None: Es wird kein Clientzertifikat angefordert.
  • 1/Optional: Es wird zwar ein Clientzertifikat angefordert, aber es ist keins erforderlich.
  • 2/Required: Es ist ein gültiges Clientzertifikat erforderlich.
  • Required_reset: Der Server fordert von allen Clients ein gültiges Zertifikat an. Ist kein Zertifikat vorhanden, sendet der Server ein SSL-Alert an den Client. Durch diesen Alert wird dem Client mitgeteilt, dass der SSL-Fehler auf das Clientzertifikat zurückzuführen ist, und bewirkt, dass bei nachfolgendem Zugriff des Browsers die Clientzertifikatsinformationen erneut angefordert werden. Diese Option setzt die Verwendung von GSKit Version 7.0.4.19 oder höher oder z/OS V1R8 oder höher voraus.
    Wichtig: Es wird keine numerische Option bereitgestellt, und deshalb sieht diese Option nicht wie die vorhandenen Optionen aus.
  • CRL: Aktiviert oder inaktiviert die Verwendung einer Zertifikatswiderrufliste (CRL) in einem virtuellen SSL-Host. Wenn Sie CRL verwenden, müssen Sie crl als zweites Argument für "SSLClientAuth" angeben. Beispiel: SSLClientAuth 2 crl. Wenn Sie crl nicht angeben, können Sie keine Zertifikatswiderrufliste in einem virtuellen SSL-Host verwenden.
  • noverify: Ermöglicht die erfolgreiche Durchführung des SSL-Handshakes und den Aufbau einer Verbindung, selbst wenn das vom Client bereitgestellte Zertifikat die Gültigkeitsprüfung nicht besteht (z. B. weil es abgelaufen ist oder widerrufen wurde). Verwenden Sie diese Anweisung mit SSLClientAuthVerify, um eine benutzerfreundliche Webseite anstelle der Standardfehlernachricht des Browsers anzuzeigen. Diese Option ist nur mit Optional gültig. Verwenden Sie SSLClientAuthVerify, um alle Anforderungen, die über die mit dem ungültigen Clientzertifikat empfangen werden, als fehlgeschlagen einzustufen.

Die Angabe von 0/None schließt die Angabe der Option crl aus.

Required_reset Der Server fordert von allen Clients ein gültiges Zertifikat an. Ist kein Zertifikat vorhanden, sendet der Server ein SSL-Alert an den Client. Durch diesen Alert wird dem Client mitgeteilt, dass der SSL-Fehler auf das Clientzertifikat zurückzuführen ist, und bewirkt, dass bei nachfolgendem Zugriff des Browsers die Clientzertifikatsinformationen erneut angefordert werden. Diese Option setzt die Verwendung von GSKit Version 7.0.4.19 oder höher oder z/OS V1R8 oder höher voraus.
Fehler vermeiden Fehler vermeiden: In manchen Fällen ist IBM HTTP Server möglicherweise nicht in der Lage, den Widerrufstatus eines Clientzertifikats zu bestimmen, weil der Back-End-Server, die Quelle der Widerrufdaten, nicht verfügbar ist. Sie müssen Folgendes beachten:
  • Es muss ein statisches CRL-Repository (SSLCRLHost) konfiguriert sein, damit andere URI-Formate in den CRLDistributionPoint-Feldern geprüft werden können.
  • Wenn Ihre Zertifikate das LDAP- oder das HTTP-URI-Format der CertificateDistributionPoint- oder AIA-Erweiterungen haben, müssen Sie sicherstellen, dass das IBM HTTP-Server-System in der Lage ist, abgehende Verbindungen dieses Typs herzustellen. Möglicherweise müssen Sie dazu die Einstellungen Ihrer Firewall anpassen.
  • [AIX Solaris HP-UX Linux Windows] Die Anweisung "SSLUnknownRevocationStatus" wird für solche Fälle bereitgestellt, in denen behebbare Fehler in IBM HTTP Server bei der Kommunikation mit dem Back-End-Server auftreten und IBM HTTP Server den Widerrufstatus eines Zertifikats nicht bestimmen kann. Standardmäßig wird die Verarbeitung des Handshakes fortgesetzt, sofern der Back-End-Server nicht erfolgreich anzeigen kann, dass das Zertifikat widerrufen ist.
  • [z/OS] Die CRL-Abfrage ist nur bei einem explizit konfigurierten LDAP-Server möglich, und der SSL-Handshake scheitert, wenn der Back-End-Server nicht erreichbar ist.
gotcha

Anweisung "SSLClientAuthGroup"

Die Anweisung "SSLClientAuthGroup" definiert eine benannte Ausdrucksgruppe mit spezifischen Attribut/Wert-Paaren für Clientzertifikate. Diese benannte Gruppe kann von den SSLClientAuthRequire-Anweisungen verwendet werden. Der Client muss ein Zertifikat, das diesen Ausdruck übergibt, bereitstellen, bevor der Server den Zugriff auf die geschützte Ressource zulässt.

Name Beschreibung
Syntax SSLClientAuthGroup Gruppenname Attributausdruck
Geltungsbereich Serverkonfiguration, virtueller Host.
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Zulässig.
Überschreiben Ohne
Werte Logischer Ausdruck, der aus Attributprüfungen besteht, die mit AND, OR, NOT und runden Klammern verknüpft sind. Beispiel:
SSLClientAuthGroup IBMUSpeople (Org
=  IBM) AND (Country = US)

Der folgende Abschnitt beschreibt Beispiele mit gültigen logischen Ausdrücken. Beispiel: SSLClientAuthGroup ((CommonName = "Fred Smith") OR (CommonName = "John Deere")) AND (Org = IBM) bedeutet, dass das Objekt nicht bereitgestellt wird, es sein denn, das Clientzertifikat enthält den allgemeinen Namen Fred Smith oder John Deere und die Organisation IBM. Die einzigen gültigen Vergleichsoperatoren für Attributprüfungen sind gleich und ungleich (= und !=). Sie können die Attributprüfungen mit AND, OR oder NOT (auch &&, || und !) miteinander verknüpfen. Alle Vergleiche, die Sie mit AND, OR oder NOT verknüpfen, müssen in runde Klammern eingeschlossen werden. Wenn der Wert des Attributs ein nicht alphanumerisches Zeichen enthält, müssen Sie den Wert mit Anführungszeichen begrenzen.

Diese Liste enthält Attributwerte, die Sie für diese Anweisung angeben können:
Tabelle 1. Attributwerte für die Anweisung "SSLClientAuthGroup". In der Tabelle ist jeder Attributwert als ausgeschriebener Name und als Kurzname aufgelistet.
Vollständiger Name Kurzname
CommonName CN
Country C
Email E
IssuerCommonName ICN
IssuerEmail IE
IssuerLocality IL
IssuerOrg IO
IssuerOrgUnit IOU
IssuerPostalCode IPC
IssuerStateOrProvince IST
Locality L
Org O
OrgUnit OU
PostalCode PC
StateOrProvince ST

Sie können mit dieser Anweisung den vollständigen oder den Kurznamen angeben.

Der Benutzer gibt einen logischen Ausdruck bestimmter Attribute für das Clientzertifikat an. Sie können mehrere logische Ausdrücke mit AND, OR und NOT verwenden, wenn Sie Gruppierungen von Attributwerten für Clientzertifikate angeben müssen. Alle Vergleiche, die Sie mit AND, OR oder NOT verknüpfen, müssen in runde Klammern eingeschlossen werden. Zu den gültigen Operatoren gehören '=' und '!='. Beispiel:
SSLClientAuthGroup IBMpeople Org = IBM)
oder
SSLClientAuthGroup NotMNIBM (ST != MN) && (Org = IBM) 

Ein Gruppenname darf keine Leerzeichen enthalten. Weitere Informationen finden Sie im Artikel Anweisung "SSLClientAuthRequire".

Anweisung "SSLClientAuthRequire"

Die Anweisung "SSLClientAuthRequire" gibt Attributwerte oder Gruppen von Attributwerten an, die auf der Basis eines Clientzertifikats validiert werden müssen, bevor der Server den Zugriff auf die geschützte Ressource zulässt.

Name Beschreibung
Syntax SSLClientAuthRequire Attributausdruck
Geltungsbereich Serverkonfiguration, virtueller Host
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Zulässig. Die Funktion verknüpft diese Anweisungen mit "AND".
Überschreiben AuthConfig
Werte Logischer Ausdruck, der aus Attributprüfungen besteht, die mit AND, OR, NOT und runden Klammern verknüpft sind. Beispiel:
SSLClientAuthRequire (group != IBMpeople) 
 && (ST = M)

Wenn das Zertifikat, das Sie erhalten haben, kein bestimmtes Attribut hat, wird nicht geprüft, ob eine Attributübereinstimmung vorliegt. Selbst wenn der angegebene Abgleichwert " " ist, ist dies nicht unbedingt dasselbe, als wäre kein Attribut angegeben. Jedes mit der Anweisung "SSLClientAuthRequire" angegebene Attribut, das nicht im Zertifikat enthalten ist, führt dazu, dass die Anforderung zurückgewiesen wird.

Die Liste enthält Attributwerte, die Sie für diese Anweisung angeben können:
Tabelle 2. Attributwerte für die Anweisung "SSLClientAuthRequire". In der Tabelle ist jeder Attributwert als ausgeschriebener Name und als Kurzname aufgelistet.
Vollständiger Name Kurzname
CommonName CN
Country C
Email E
IssuerCommonName ICN
IssuerEmail IE
IssuerLocality IL
IssuerOrg IO
IssuerOrgUnit IOU
IssuerPostalCode IPC
IssuerStateOrProvince IST
Locality L
Org O
OrgUnit OU
PostalCode PC
StateOrProvince ST

Sie können mit dieser Anweisung den vollständigen oder den Kurznamen angeben.

Der Benutzer gibt einen logischen Ausdruck bestimmter Attribute für das Clientzertifikat an. Sie können mehrere logische Ausdrücke mit AND, OR und NOT verwenden, wenn Sie Gruppierungen von Attributwerten für Clientzertifikate angeben müssen. Alle Vergleiche, die Sie mit AND, OR oder NOT verknüpfen, müssen in runde Klammern eingeschlossen werden. Zu den gültigen Operatoren gehören '=' und '!='. Sie können auch einen Gruppennamen angeben, der mit Anweisung "SSLClientAuthGroup" konfiguriert wurde, um eine Gruppe von Attributen zu konfigurieren.

Sie können mehrere SSLClientAuthRequire-Anweisungen für denselben Bereich angeben. Die logischen Ausdrücke der einzelnen Anweisungen werden verwendet, um die Zugriffsberechtigungen für die einzelnen Zertifikate auszuwerten, und die Ergebnisse der einzelnen Auswertungen werden durch ein logisches UND miteinander verknüpft. Beispiel:
SSLClientAuthRequire
((CommonName="John Doe") || (StateOrProvince=MN)) && (Org
!=IBM)  
oder
SSLClientAuthRequire
(group!=IBMpeople) && (ST=MN)
Kurznamen und ausgeschriebene Namen können in Anführungszeichen gesetzt werden. Beispiel:
SSLClientAuthRequire (group != IBMpeople) && ("ST= MN")
Weitere Informationen hierzu finden Sie im Artikel Anweisung "SSLClientAuthGroup".

Anweisung "SSLClientAuthVerify"

Die Anweisung "SSLClientAuthVerify" steuert, ob IBM HTTP Server Anforderungen nicht bearbeitet, wenn ein Clientzertifikat empfangen, aber nicht validiert werden kann (z. B., weil das Kennwort abgelaufen ist oder widerrufen wird).

Name Beschreibung
Syntax SSLClientAuthVerify statuscode|OFF
Geltungsbereich Globaler Server oder virtueller Host
Standardeinstellung 500
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro Verzeichniszeilengruppe.
Werte HTTP-Antwortstatuscode oder OFF

Verwenden Sie diese Anweisung mit SSLClientAuth Optional Noverify, um eine benutzerfreundliche Webseite aufzurufen, anstatt die Standardfehlernachricht des Browsers anzuzeigen.

Wenn Sie einen virtuellen Host mit SSLClientAuth Optional Noverify konfigurieren, kann eine SSL-Verbindung hergestellt werden, wenn ein Clientzertifikat empfangen wird, das aber nicht validiert werden kann (z. B., weil das Zertifikat abgelaufen ist oder widerrufen wird).

Verwenden Sie diese Anweisung in einem Kontext wie Location oder Directory, um Anforderungen, die in dieser Verbindung mit einem bestimmten Fehlercode empfangen werden, als fehlgeschlagen zu kennzeichnen oder durch Angabe von OFF festzulegen, dass sie normal behandelt werden.

Wenn Sie ein angepasstes Fehlerdokument für diesen Status bereitstellen, kann der Administrator die Seite, die dem Benutzer angezeigt wird, steuern, z. B., um dem Benutzer mitzuteilen, dass sein Zertifikat ungültig ist, und ihm weitere Anweisungen anzuzeigen.

Wenn das Fehlerdokument eine interne Umleitung an einen anderen URL in demselben virtuellen Host ist, müssen Sie auch sicherstellen, dass der URL SSLClientAuthVerify OFF in seinem Kontext hat, so dass er nicht sofort als fehlgeschlagen eingestuft wird. Im Folgenden finden Sie ein Beispiel für dieses Szenario.

Der angegebene Statuscode muss ein Antwortcode sein, der in HTTP gültig ist und von IBM HTTP Server erkannt wird. Die gültigen Werte sind 100 bis 599 und sind gewöhnlich in einem RFC oder einem Standardentwurf definiert. Wenn Sie sich nicht sicher sind, verwenden Sie einen Statuscode in einer Testumgebung, und prüfen Sie dann mit apachectl -t, ob er gültig ist. Andere Codes, die nicht verwendet werden und sich eignen würden, sind 418, 419, 420 und 421.

Da das Clientzertifikat ungültig ist, enthält das Fehlerdokument keine der verfügbaren Umgebungsvariablen, die Informationen zu diesem Clientzertifikat enthalten. Die Ursache für den Fehler bei der Gültigkeitsprüfung des Clientzertifikats ist in der Umgebungsvariablen SSL_LAST_VALIDATION_ERROR enthalten. Infrage kommende Variablen sind GSKVAL_ERROR_REVOKED_CERT und GSKVAL_ERROR_CERT_EXPIRED. Wenn das Zertifikat mehrere Gültigkeitsfehler aufweist, ist die gemeldete Ursache häufig GSKVAL_ERROR_CA_MISSING_CRITICAL_BASIC_CONSTRAINT.

Jedesmal, wenn die Gültigkeitsprüfung eines Clientzertifikats fehlschlägt, werden zwei Nachrichten im Fehlerprotokoll auf der Protokollstufe loglevel Error protokolliert. Die zweite Nachricht enthält die Ursache, z. B.:

[Tue Jun 08 08:54:25 2010] [error] [client 9.37.243.128] [9e44c28] [731] SSL0208E: SSL Handshake Failed, Certificate validation error. [9.37.243.128:60347 -> 9.37.243.67:443] [08:54:25.000223331]
[Tue Jun 08 08:54:25 2010] [error] [client 9.37.243.128] [9e44c28] [731] Certificate validation error 
   during handshake, last PKIX/RFC3280 certificate validation error was 
   GSKVAL_ERROR_CA_MISSING_CRITICAL_BASIC_CONSTRAINT 
   [9.37.243.128:60347 -> 9.37.243.67:443] [08:54:25.000223331]
Beispielkonfiguration:
<VirtualHost *:443
SSLClientAuth Optional Noverify
<Location />
SSLClientAuthVerify 419
</Location>
ErrorDocument 419 /error419.html
<Location /error419.html>
SSLClientAuthVerify OFF
</Location>
</VirtualHost>

Anweisung SSLCRLHostname

Die Anweisung "SSLCRLHostname" gibt den TCP/IP-Namen oder die TCP/IP-Adresse des LDAP-Servers an, auf dem die CRL-Datenbank (Certificate Revocation List, Zertifikatswiderrufsliste) gespeichert ist.

Name Beschreibung
Syntax <SSLCRLHostName <TCP/IP-Name oder Adresse>
Geltungsbereich Globaler Server oder virtueller Host
Standardeinstellung Inaktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte TCP/IP-Name oder -Adresse des LDAP-Servers

Verwenden Sie die Anweisung "SSLCRLHostname" zusammen mit den Anweisungen "SSLCRLPort", "SSLCRLUserID" und "SSLStashfile" für die statische Konfiguration eines LDAP-basierten CRL-Repositorys. Diese Anweisungen müssen für die Abfrage des LDAP-basierten CRL-Repositorys nur verwendet werden, wenn eine explizite "CRLDistributionPoint X.509v3"-Zertifikatserweiterung fehlt oder wenn der in der Erweiterung angegebene Server nicht reagiert (nicht verfügbar ist).

Wenn eine "CRLDistributionPoint"-Erweiterung im Zertifikat enthalten ist und der in der Erweiterung angegebene Server reagiert (verfügbar ist), wird der mit "CRLDistributionPoint" angegebene LDAP-Server anonym, ohne Verwendung dieser Anweisungen, abgefragt.

Anweisung SSLCRLPort

Die Anweisung "SSLCRLPort" gibt den Port des LDAP-Servers an, in dem die CRL-Datenbank gespeichert ist.

Name Beschreibung
Syntax SSLCRL<Port>
Geltungsbereich Globaler Server oder virtueller Host
Standardeinstellung Inaktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Port des LDAP-Servers, Standardeinstellung = 389

Verwenden Sie die Anweisung "SSLCRLPort" zusammen mit den Anweisungen "SSLCRLUserID", "SSLCRLHostname" und "SSLStashfile" für die statische Konfiguration eines LDAP-basierten CRL-Repositorys. Diese Anweisungen müssen für die Abfrage des LDAP-basierten CRL-Repositorys nur verwendet werden, wenn eine explizite "CRLDistributionPoint X.509v3"-Zertifikatserweiterung fehlt oder wenn der in der Erweiterung angegebene Server nicht reagiert (nicht verfügbar ist).

Wenn eine "CRLDistributionPoint"-Erweiterung im Zertifikat enthalten ist und der in der Erweiterung angegebene Server reagiert (verfügbar ist), wird der mit "CRLDistributionPoint" angegebene LDAP-Server anonym, ohne Verwendung dieser Anweisungen, abgefragt.

Anweisung SSLCRLUserID

Die Anweisung "SSLCRLUserID" gibt die Benutzer-ID an, die an den LDAP-Server mit der CRL-Datenbank gesendet wird.

Name Beschreibung
Syntax SSLCRLUserID <[Eingabeaufforderung] <Benutzer-ID>
Geltungsbereich Globaler Server oder virtueller Host
Standardeinstellung Wenn Sie keine Benutzer-ID angeben, wird standardmäßig "anonymous" verwendet.
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Benutzer-ID des LDAP-Servers. Wenn Sie die Option prompt verwenden, fordert der HTTP-Server Sie beim Start auf, das Kennwort für den Zugriff auf den LDAP-Server einzugeben.

Verwenden Sie die Anweisung "SSLCRLUserID" zusammen mit den Anweisungen "SSLCRLPort", "SSLCRLHostname" und "SSLStashfile" für die statische Konfiguration eines LDAP-basierten CRL-Repositorys. Diese Anweisungen müssen für die Abfrage des LDAP-basierten CRL-Repositorys nur verwendet werden, wenn eine explizite "CRLDistributionPoint X.509v3"-Zertifikatserweiterung fehlt oder wenn der in der Erweiterung angegebene Server nicht reagiert (nicht verfügbar ist).

Wenn eine "CRLDistributionPoint"-Erweiterung im Zertifikat enthalten ist und der in der Erweiterung angegebene Server reagiert (verfügbar ist), wird der mit "CRLDistributionPoint" angegebene LDAP-Server anonym, ohne Verwendung dieser Anweisungen, abgefragt.

Anweisung SSLDisable

Mit der Anweisung SSLDisable können Sie SSL für den virtuellen Host inaktivieren.
Name Beschreibung
Syntax SSLDisable
Geltungsbereich Globaler Server oder virtueller Host
Standardeinstellung Inaktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Ohne

Anweisung SSLEnable

Mit der Anweisung SSLEnable können Sie SSL für den virtuellen Host aktivieren.
Achtung: Diese Anweisung darf nicht in der Basisserverkonfiguration angegeben werden, wenn die Anweisung nicht automatisch in die Konfiguration eines bestimmten virtuellen Hosts kopiert werden soll.
Name Beschreibung
Syntax SSLEnable
Geltungsbereich Globaler Server oder virtueller Host
Standardeinstellung Inaktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Ohne

Anweisung SSLFakeBasicAuth

Die Anweisung "SSLFakeBasicAuth" aktiviert die Unterstützung für manipulierte Basisauthentifizierung.

Wenn diese Unterstützung aktiviert ist, kann der DN des Clientzertifikats als Benutzerteil in das Benutzer/Kennwort-Paar für die Basisauthentifizierung aufgenommen werden. Verwenden Sie für das Kennwort password.
Achtung: Diese Anweisung kann von der Basisserverkonfiguration überschrieben werden.
Name Beschreibung
Syntax SSLFakeBasicAuth
Geltungsbereich Wird in einer Verzeichniszeilengruppe zusammen mit den Anweisungen AuthName, AuthType und require verwendet.
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro Verzeichniszeilengruppe.
Werte Ohne
[AIX Solaris HP-UX Linux Windows]

Anweisung SSLFIPSDisable

Die Anweisung "SSLFIPSDisable" inaktiviert Federal Information Processing Standards (FIPS).
Name Beschreibung
Syntax SSLFIPSDisable
Geltungsbereich Virtuell und global
Standardeinstellung Inaktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Ohne

Anweisung SSLFIPSEnable

Die Anweisung "SSLFIPSEnable" aktiviert Federal Information Processing Standards (FIPS).

Diese Anweisung ist gültig für verteilte Plattformen.

[z/OS] Fehler vermeiden Fehler vermeiden: Diese Anweisung wird auf der Plattform z/OS mit folgenden Einschränkungen unterstützt.
  • Die Anweisung ist nur im gloabalen Bereich gültig.
  • Wenn Sie den Wert der Anweisung ändern, müssen Sie IBM HTTP Server stoppen und erneut starten, damit der neue Wert wirksam wird. Der neue Wert wird nicht wirksam, wenn Sie einen Neustart durchführen.
gotcha
Name Beschreibung
Syntax SSLFIPSEnable
Geltungsbereich Virtuell und global
Standardeinstellung Inaktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Ohne
Achtung: Die Werte können Sie dem Artikel zur SSL-Verschlüsselungsspezifikation entnehmen.

Anweisung SSLInsecureRenegotiation

Die Anweisung "SSLInsecureRenegotiation" bestimmt, ob eine nicht sichere (gemäß RFC5746) SSL-Neuvereinbarung zugelassen wird. Jede Art der SSL-Neuvereinbarung ist nicht üblich, und der Standardwert dieser Anweisung (off) sollte nicht geändert werden.

[AIX Solaris HP-UX Linux Windows]
Achtung: Vor Version 8.0.0.1 hat der Server RFC5746-Unterstützung und akzeptiert Neuvereinbarungsanforderungen. Ab Version 8.0.0.1 werden sichere Neuvereinbarungsanforderungen ohne vorherige Aktivierung der Anweisung SSLRenegotiation nicht akzeptiert.

Wenn on angegeben ist, wird eine nicht sichere SSL-Neuvereinbarung zugelassen. Wenn off angegeben ist (Standardeinstellung), wird eine nicht sichere SSL-Neuvereinbarung nicht zugelassen.

Name Beschreibung
Syntax SSLInsecureRenogotiation on|off
Geltungsbereich Virtuelle Hosts
Standardeinstellung Off
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte on|off
[AIX Solaris HP-UX Linux Windows]

Anweisung SSLPKCSDriver

Die Anweisung "SSLPKCSDriver" gibt den vollständig qualifizierten Namen des Moduls oder Treibers für den Zugriff auf die PKCS11-Einheit an.

Name Beschreibung
Syntax Vollständig qualifizierter Name des Moduls, das für den Zugriff auf die PKCS11-Einheit verwendet wird>. Falls das Modul im Benutzerpfad enthalten ist, geben Sie einfach den Namen des Moduls an.
Geltungsbereich Globaler Server oder virtueller Host
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Pfad und Name des PKCS11-Moduls oder -Treibers.
Im Folgenden sind die Standardpositionen der Module für die einzelnen PKCS11-Einheiten aufgelistet:
  • nCipher
    • AIX: /opt/nfast/toolkits/pkcs11/libcknfast.so
    • HP: /opt/nfast/toolkits/pkcs11/libcknfast.sl
    • Solaris: /opt/nfast/toolkits/pkcs11/libcknfast.so
    • Windows: c:\nfast\toolkits\pkcs11\cknfast.dll
  • IBM 4758
    • AIX: /usr/lib/pkcs11/PKCS11_API.so
    • Windows: $PKCS11_HOME\bin\nt\cryptoki.dll
  • IBM E-Business Cryptographic Accelerator
    • AIX: /usr/lib/pkcs11/PKCS11_API.so

Anweisung SSLProtocolDisable

Mit der Anweisung "SSLProtocolDisable" können Sie SSL-Protokolle angeben, die der Client für einen bestimmten virtuellen Host nicht verwenden darf. Diese Anweisung muss im Container <Virtueller_Host> enthalten sein.

Die unterstützten Protokolle für einen virtuellen Host werden unabhängig voneinander unterstützt. Wenn alle unterstützten Protokolle inaktiviert sind, können Clients keinen SSL-Handshake durchführen.
Name Beschreibung
Syntax SSLProtocolDisable <Protokollname>
Geltungsbereich Virtueller Host
Standardeinstellung Inaktiviert
Achtung: Das Protokoll SSL Version 2 wird standardmäßig zusammen mit anderen Methoden inaktiviert.
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Es sind mehrere Instanzen pro virtuellem Host zulässig.
Werte Die folgenden Werte sind für diese Anweisung verfügbar:
  • SSLv2
  • SSLv3
  • TLS
  • TLSv1
  • [AIX Solaris HP-UX Linux Windows] TLSv1.1
  • [AIX Solaris HP-UX Linux Windows] TLSv1.2

Der Wert TLS inaktiviert alle TLS-Versionen.

Der Wert TLSv1 inaktiviert TLS Version 1.0.

[AIX Solaris HP-UX Linux Windows] Der Wert TLSv1.1 inaktiviert TLS Version 1.1.

[AIX Solaris HP-UX Linux Windows] Der Wert TLSv1.2 inaktiviert TLS Version 1.2.

Im folgenden Beispiel wird die Unterstützung für mehrere Protokolle in einem virtuellen Host inaktiviert.
<VirtualHost	*:443> SSLEnable SSLProtocolDisable	SSLv2
SSLv3 (alle weitere Anweisungen) </VirtualHost>
Achtung: Für jeden Versuch, eine SSL-Verbindung aufzubauen, wird SSL0230I protokolliert, wenn der Client und der Server nicht mindestens eine Kombination aus Protokoll und Verschlüsselung gemeinsam haben.
[8.5.0.1 oder höher]

Anweisung "SSLProtocolEnable"

Die Anweisung "SSLProtocolEnable" kann für die Aktivierung einzelner SSL-Protokolle verwendet werden.

[AIX Solaris HP-UX Linux Windows] Auf verteilten Plattformen ist der Nutzen dieser Anweisung begrenzt, da alle nützlichen Protokolle standardmäßig automatisch aktiviert werden.

[z/OS] Unter z/OS kann diese Anweisung verwendet werden, wenn der z/OS-Service Unterstützung für TLSv1.1 und TLSv1.2 bereitstellt. Die Protokolle TLSv1.1 und TLSv1.2 sind in einem IBM HTTP Server unter z/OS nicht standardmäßig aktiviert.

Syntax SSLSuiteBMode
Geltungsbereich Virtueller Host
Standardeinstellung Nicht zugewiesen
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Es sind mehrere Instanzen pro virtuellem Host zulässig.

Anweisung SSLProxyEngine

Die Anweisung "SSLProxyEngine" steuert, ob der Server SSL für Proxy-Verbindungen verwendet. Sie müssen SSLProxyEngine on einstellen, wenn Ihr Server als Reverse Proxy für eine SSL-Ressource eingesetzt wird.
Name Beschreibung
Syntax SSLProxyEngine on|off
Geltungsbereich IP-basierte virtuelle Hosts
Standardeinstellung Off
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte on|off

Anweisung "SSLRenegotiation"

Die Anweisung "SSLRenegotiation" steuert die IBM HTTP Server-Unterstützung der TLS-Neuvereinbarung (Transport Layer Security). Die Anweisung steuert die Arten der TLS-Neuvereinbarung, die IBM HTTP Server ermöglicht. Mit der TLS-Neuvereinbarung können Clients einen neuen SSL-Handshake für eine vorhandene sichere Verbindung einleiten, ein Vorgang, der selten von den üblichen Browser-basierten Clients verwendet wird.
Name Beschreibung
Syntax SSLRenegotiation on|off|LEGACY_AND_RFC5746
Standardeinstellung Off
Modul mod_ibm_ssl
Kontext Virtueller Host
Status Erweiterung
Werte on|off|LEGACY_AND_RFC5746
OFF (Standardwert)
Neuvereinbarung ist nicht zulässig.
ON
Sichere Neuvereinbarung gemäß aktueller Definition durch RFC5746 ist zulässig.
LEGACY_AND_RFC5746
Sowohl sichere Neuvereinbarung als auch die traditionelle nicht sichere Neuvereinbarung sind zulässig.
Kompatibilität
  • Diese Anweisung ersetzt die Anweisung "SSLInsecureRenegotiation" in IBM HTTP Server 8.0 und höher.
  • Seit IBM HTTP Server 8.0.0.0 ist der Standardwert ON (RFC5746-Neuvereinbarungen werden akzeptiert).
  • Vor Version 7.0.0.21 hat das GSKit-Sicherheitsbibliothekspaket RFC5746 nicht erkannt und die Einstellung "ON" bezog sich auf die traditionelle nicht sichere Neuvereinbarung.
  • Die Unterstützung der Option LEGACY_AND_RFC5746 beginnt mit IBM HTTP Server 7.0.0.21 und höher.

Anweisung SSLServerCert

Die Anweisung "SSLServerCert" legt das für diesen virtuellen Host zu verwendende Serverzertifikat fest.
Name Beschreibung
Syntax SSLServerCert [Eingabeaufforderung] Kennsatz_des_Zertifikats; für PKCS11-Einheit - SSLServerCert Tokenkennsatz:Schlüsselkennsatz
Geltungsbereich IP-basierte virtuelle Hosts
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Zertifikatkennsatz. Wenn Sie die Option /prompt zum Aktivieren des HTTP-Servers verwenden, fordert der HTTP-Server Sie beim Start zur Eingabe des Kennworts für das Verschlüsselungstoken auf. Schließen Sie den Zertifikatkennsatz nicht in Trennzeichen ein. Der Kennsatz muss in einer Zeile angegeben werden. Führende und abschließende Leerzeichen werden ignoriert.

Anweisung SSLStashfile

Die Anweisung "SSLStashfile" gibt den Pfad und den Dateinamen der Datei an, die das verschlüsselte Kennwort zum Öffnen der PKCS11-Einheit enthält.

Name Beschreibung
Syntax SSLStashFile /usr/HTTPServer/mystashfile.sth
Geltungsbereich Virtueller Host und globaler Server
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte Dateiname einer verdeckten LDAP- und/oder PKCS11-Datei, die mit dem Befehl sslstash erstellt wurde.

Die SSLStashFile zeigt nicht auf eine Stashdatei für die verwendete Schlüsseldatei, da diese automatisch basierend auf dem Namen der Schlüsseldatei ermittelt wird und einen anderen Typ hat als die Stashdatei.

Verwenden Sie den Befehl sslstash im Verzeichnis "bin" von IBM HTTP Server, um die Stashdatei mit dem CRL-Kennwort zu erstellen. Das Kennwort, das Sie mit dem Befehl sslstash angeben, muss dasselbe sein, dass Sie für die Anmeldung am LDAP-Server bzw an der Verschlüsselungshardware verwenden.

Die Stashdatei, die vom Befehl "sslstash" verwendet wird, ist vollkommen unabhängig von der Stashdatei, die einer CMS-Schlüsseldatei (*.kdb) oft zugeordnet ist. Beachten Sie daher Folgendes:
  • Überschreiben Sie keine vorhandene Datei mit der Erweiterung "*.sth", wenn Sie den Befehl "sslstash" absetzen.
  • Wählen Sie für die Ausgabe des Befehls "sslstash" niemals einen Dateinamen, der dem einer CMS-Schlüsseldatei (*.kdb) entspricht.

Syntax: sslstash [-c] <Verzeichnis_mit_Kennwortdatei_und_Dateiname> <Funktionsname> <Kennwort

Für diese Angaben gilt Folgendes:
  • -c: Erstellt eine neue Stashdatei. Falls Sie diese Option nicht angeben, wird eine vorhandene Datei aktualisiert.
  • Datei: Steht für den vollständig qualifizierten Namen der zu erstellenden bzw. zu aktualisierenden Datei.
  • Funktion: Gibt die Funktion an, für die das Kennwort verwendet werden soll. Die gültigen Werte sind crl und crypto.
  • Kennwort: Steht für das verdeckt zu speichernde Kennwort.
Achtung: Lesen Sie hierzu auch den Artikel SSL-Zertifikatswiderruflisten.

Verwenden Sie die Anweisung "SSLStashFile" zusammen mit den Anweisungen "SSLCRLPort", "SSLCRLHostname" und "SSLCRLUserID" für die statische Konfiguration eines LDAP-basierten CRL-Repositorys. Diese Anweisungen müssen für die Abfrage des LDAP-basierten CRL-Repositorys nur verwendet werden, wenn eine explizite "CRLDistributionPoint X.509v3"-Zertifikatserweiterung fehlt oder wenn der in der Erweiterung angegebene Server nicht reagiert (nicht verfügbar ist).

Wenn eine "CRLDistributionPoint"-Erweiterung im Zertifikat enthalten ist und der in der Erweiterung angegebene Server reagiert (verfügbar ist), wird der mit "CRLDistributionPoint" angegebene LDAP-Server anonym, ohne Verwendung dieser Anweisungen, abgefragt.

[8.5.0.2 oder höher]

SSLSuiteBMode

Die Anweisung "SSSLSuiteBMode" kann verwendet werden, um den übergeordneten virtuellen Host so zu konfigurieren, dass die Suite B für TLS verwendet wird.

Das Profil der Suite B verringert die Anzahl der vom Server verwendeten Signaturalgorithmen und Verschlüsselungsspezifikationen erheblich. Die zulässigen Algorithmen und Verschlüsselungen basieren auf bestimmten Standards und ändern sich mit diesen im Laufe der Zeit. Die Argumente "128" und "192" beziehen sich auf die zwei die Sicherheitsstufen, die in RFC 6460 erläutert werden.

Wenn Sie diese Anweisung angeben, werden die meisten zuvor definierten SSL-Anweisungen außer Kraft gesetzt. Die SSLAttributeSet-Einstellung wird von dieser Einstellung nicht außer Kraft gesetzt, da sie eine höhere Priorität hat. Alle Profile der Suite B setzen voraus, dass die Zertifikatskette für den Server starke ECC-Signaturen verwendet. RFC 6460 hält die Einschränkungen des Profils der Suite B fest.

Syntax SSLSuiteBMode
Geltungsbereich Virtueller Host
Standardeinstellung Nicht zugewiesen
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host

Anweisung SSLTrace

Die Anweisung "SSLTrace" aktiviert die Debugprotokollierung in mod_ibm_ssl. Sie wird zusammen mit der Anweisung LogLevel verwendet. Zum Aktivieren der Debug-Protokollierung in "mod_ibm_ssl" setzen Sie die Anweisung "LogLevel" auf "debug", und fügen Sie die Anweisung "SSLTrace" dem globalen Bereich in der Konfigurationsdatei von IBM HTTP Server hinter der Anweisung "LoadModule" für "mod_ibm_ssl" hinzu. Diese Anweisung wird normalerweise auf Anforderung des IBM Support zum Untersuchen eines potenziellen Problems in mod_ibm_ssl verwendet. Von der Aktivierung dieser Anweisung während des normalen Betriebs wird abgeraten.

Name Beschreibung
Syntax SSLTrace
Geltungsbereich Global
Standardeinstellung Debug-Protokollierung für mod_ibm_ssl ist nicht aktiviert
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Ignoriert
Werte Ohne
Achtung: Weitere Informationen finden Sie auch auf der Webseite LogLevel Directive.
[AIX Solaris HP-UX Linux Windows]

SSLUnknownRevocationStatus

Die Anweisung "SSLUnknownRevocationStatus" gibt an, wie IBM HTTP Server reagiert, wenn IBM HTTP Server den Widerrufstatus nicht problemlos bestimmen kann, der über CRL oder OCSP empfangen wird.

Name Beschreibung
Syntax SSLUnknownRevocationStatus ignore | log | log_always | deny
Geltungsbereich Virtueller Host
Standardeinstellung ignore
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host
Werte
ignore
Gibt an, dass eine Nachricht der Debugstufe ausgegeben wird, wenn ein Handshake durchgeführt wird und der Widerrufstatus nicht bekannt ist. Diese Nachricht wird bei der Fortsetzung der SSL-Sitzung nicht erneut ausgegeben.
log
Gibt an, dass eine Nachricht der Benachrichtigungsstufe ausgegeben wird, wenn ein Handshake durchgeführt wird und der Widerrufstatus nicht bekannt ist. Diese Nachricht wird bei der Fortsetzung der SSL-Sitzung nicht erneut ausgegeben.
log_always
Gibt an, dass eine Nachricht der Benachrichtigungsstufe ausgegeben wird, wenn ein Handshake durchgeführt wird und der Widerrufstatus nicht bekannt ist. IBM HTTP Server gibt dieselbe Nachricht für nachfolgende Handshakes aus.
deny
Gibt an, dass eine Nachricht der Benachrichtigungsstufe ausgegeben wird, wenn ein Handshake durchgeführt wird, der Widerrufstatus nicht bekannt ist, die Sitzung nicht fortsetzbar ist und die HTTPS-Verbindung sofort geschlossen wird.IBM HTTP Server gibt dieselbe Nachricht für nachfolgende Handshakes aus.
config: Wenn eine Nachricht für UnknownRevocationStatus protokolliert wird, wird die Variable SSL_UNKNOWNREVOCATION_SUBJECT, eine interne SSL-Umgebungsvariable, gesetzt. Sie können diese Variable mit der folgenden Syntax protokollieren:
%{SSL_UNKNOWNREVOCATION_SUBJECT}e
Sie können die Variable auch in mod_rewrite-Ausdrücken verwenden, wenn die Anweisung "SSLUnknownRevocationStatus" einen anderen Wert hat als "deny". Verwenden Sie den folgenden Variablennamen:
%{ENV:SSL_UNKNOWNREVOCATION_SUBJECT}

Anweisung SSLV2Timeout

Mit der Anweisung SSLV2Timeout können Sie das Zeitlimit für Session-IDs der SSL Version 2 festlegen.

Name Beschreibung
Syntax SSLV2Timeout 60
Geltungsbereich Globaler Server oder virtueller Host
Standardeinstellung 40
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte 0 bis 100 Sekunden

Anweisung SSLV3Timeout

Mit der Anweisung SSLV3Timeout können Sie das Zeitlimit für Sitzungs-IDs von SSL Version 3 und TLS festlegen.

Name Beschreibung
Syntax SSLV3Timeout 1000
Geltungsbereich Globaler Server oder virtueller Host

[Windows] Sie können die Anweisung auf einen virtuellen Host oder global anwenden.

[AIX][HP-UX][Linux][Solaris] Ein virtueller Host als Geltungsbereich ist nur gültig, wenn auch die Anweisung SSLCacheDisable verwendet wird. Andernfalls ist nur der globale Geltungsbereich zulässig.

Standardeinstellung 120
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro virtuellem Host und globalem Server
Werte 0 bis 86400 Sekunden

Anweisung SSLVersion

Die Anweisung "SSLVersion" bewirkt, dass ein Objektzugriff mit dem Antwortcode 403 zurückgewiesen wird, wenn der Client die Verbindung mit einer anderen Version des SSL-Protokolls herstellt als der angegebenen.

In den meisten Fällen ist die Anweisung "SSLProtocolDisable" die bessere Wahl als die Anweisung "SSLVersion", um die Verwendung einer bestimmten SSL-Protokollversion sicherzustellen. Die Anweisung "SSLProtocolDisable" ermöglicht dem Client-Browser, eine andere Protokollversion zu vereinbaren, sofern dies möglich ist, wohingegen die Anweisung "SSLVersion" bewirkt, dass IBM HTTP Server eine Antwort 403 sendet, was den Benutzer verwirren kann.

Name Beschreibung
Syntax SSLVersion ALL
Geltungsbereich Zulässig pro Verzeichniszeilengruppe.
Standardeinstellung Ohne
Modul mod_ibm_ssl
Mehrere Instanzen in der Konfigurationsdatei Eine Instanz pro <Directory>- oder <Location>-Zeilengruppe.
Werte [AIX Solaris HP-UX Linux Windows] SSLV2|SSLV3|TLS|TLSV1|TLSV11|TLSV12|ALL [z/OS] SSLV2|SSLV3|TLS|TLSV1|ALL
Referenzartikel    

Nutzungsbedingungen für Information Center | Feedback

Letzte Aktualisierung: October 08, 2014 06:53 AM EDT
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=ihs-dist&topic=rihs_ssldirs
Dateiname: rihs_ssldirs.html