ADC

Selektive SSL-Protokollierung

In einer großen Bereitstellung mit Tausenden von virtuellen Servern werden alle SSL-bezogenen Informationen protokolliert. Früher war es nicht einfach, die Erfolge und Ausfälle der Clientauthentifizierung und des SSL-Handshakes für einige wichtige virtuelle Server zu filtern. Das Durchsuchen des gesamten Protokolls, um diese Informationen abzurufen, war eine zeitaufwändige und mühsame Aufgabe, da die Infrastruktur nicht die Kontrolle zum Filtern der Protokolle bot. Jetzt können Sie SSL-bezogene Informationen für einen bestimmten virtuellen Server oder für eine Gruppe virtueller Server in der protokollieren ns.log. Diese Informationen sind besonders hilfreich beim Debuggen von Fehlern.

Mit der Einstellung DEBUG werden alle SSL-bezogenen Informationen angemeldet ns.log. Wenn Sie jedoch ein SSL-Protokollprofil konfigurieren, werden nur Informationen protokolliert, die sich auf die Clientauthentifizierung und den SSL-Handshake beziehen. Führen Sie die folgenden Schritte aus, um diese Informationen zu protokollieren:

  1. Setzen Sie DEBUG für Syslog-Parameter.
  2. Konfigurieren Sie ein SSL-Protokollprofil. Aktivieren Sie nur die Protokollierung von Client-Authentifizierung und SSL-Handshake-Fehlern/-Erfolg und Fehlern. Alle vier werden protokolliert, wenn Sie das SSL-Protokollprofil an das SSL-Profil anhängen. Nur fehlgeschlagen/erfolgreich bei der Clientauthentifizierung und Fehlschläge werden protokolliert, wenn Sie das SSL-Protokollprofil mit der SSL-Aktion anhängen.
  3. Hängen Sie das SSL-Protokollprofil an ein SSL-Profil oder eine SSL-Aktion an.

Eine Beispielausgabe von ns.log für eine erfolgreiche Clientauthentifizierung finden Sie am Ende dieser Seite.

Setze DEBUG-Level

Setzen Sie die Syslog-Protokollebene auf DEBUG. Geben Sie in der Befehlszeile Folgendes ein:

set audit syslogParams -logLevel DEBUG

Wenn Debug festgelegt ist, sind SSL-Protokolle sowohl für Frontend (virtuelle Server) als auch für Backend (Dienste und Dienstgruppen) enthalten. Die selektive SSL-Protokollierung bietet jedoch nur die Kontrolle über das Frontend.

SSL-Protokollprofil

Ein SSL-Protokollprofil ermöglicht die Protokollierung der folgenden Ereignisse für einen virtuellen Server oder eine Gruppe virtueller Server:

  • Erfolgreiche und fehlgeschlagene Clientauthentifizierung oder nur Fehlschläge

  • SSL-Handshake erfolgreich und fehlschlägt oder nur Fehlschläge.

Standardmäßig sind alle Parameter deaktiviert.

Ein SSL-Protokollprofil kann in einem SSL-Profil oder in einer SSL-Aktion festgelegt werden. Wenn ein SSL-Profil festgelegt ist, können Sie sowohl die Clientauthentifizierung als auch die Erfolgs- und Fehlerinformationen des SSL-Handshakes protokollieren. Wenn eine SSL-Aktion festgelegt ist, können Sie nur Informationen zum Erfolg und zum Ausfall der Clientauthentifizierung protokollieren, da der Handshake abgeschlossen ist, bevor die Richtlinie ausgewertet wird.

Clientauthentifizierung und Erfolg und Fehler beim SSL-Handshake werden protokolliert, auch wenn Sie kein SSL-Protokollprofil konfigurieren. Eine selektive Protokollierung ist jedoch nur möglich, wenn ein SSL-Protokollprofil verwendet wird.

Hinweis:

Das SSL-Protokollprofil wird in Hochverfügbarkeits- und Cluster-Setups unterstützt.

Hinzufügen eines SSL-Protokollprofils über die CLI

Geben Sie in der Befehlszeile Folgendes ein:

add ssl logprofile <name> [-sslLogClAuth ( ENABLED | DISABLED )] [-ssllogClAuthFailures ( ENABLED | DISABLED )] [-sslLogHS ( ENABLED | DISABLED )] [-sslLogHSfailures ( ENABLED | DISABLED )]
<!--NeedCopy-->

Parameter:

Name:

Name für das SSL-Protokollprofil. Muss mit einem alphanumerischen ASCII-Zeichen oder Unterstrich (_) beginnen und darf nur alphanumerische ASCII-Zeichen, Unterstriche, Hash (#), Punkt (.), Leerzeichen, Doppelpunkt (:), at (@), Gleich (=) und Bindestrich (-) enthalten. Kann nicht geändert werden, nachdem das Profil erstellt wurde.

Name ist ein zwingendes Argument. Maximale Länge: 127

sslLogClAuth:

Protokolliert alle Clientauthentifizierungsereignisse Umfasst sowohl Erfolgs- als auch Misserfolgsereignisse

Mögliche Werte: ENABLED, DISABLED

Standardwert: DISABLED

ssllogClAuthFailures:

Protokolliert alle Ereignisse bei der Clientauthentifizierung

Mögliche Werte: ENABLED, DISABLED

Standardwert: DISABLED

sslLogHS:

Protokolliert alle SSL-Handshake-bezogenen Ereignisse. Umfasst sowohl Erfolgs- als auch Misserfolgsereignisse

Mögliche Werte: ENABLED, DISABLED

Standardwert: DISABLED

sslLogHSfailures:

Protokollieren Sie alle SSL-Handshake-bezogenen Fehler.

Mögliche Werte: ENABLED, DISABLED

Standardwert: DISABLED

Beispiel:

> add ssl logprofile ssllog10 -sslLogClAuth ENABLED -sslLogHS ENABLED

 Done

sh ssllogprofile ssllog10

1)      Name: ssllog10

        SSL log ClientAuth [Success/Failures] : ENABLED

        SSL log ClientAuth [Failures] : DISABLED

        SSL log Handshake [Success/Failures] : ENABLED

        SSL log Handshake [Failures] : DISABLED

 Done
<!--NeedCopy-->

Hinzufügen eines SSL-Protokollprofils über die grafische Benutzeroberfläche

Navigieren Sie zu System > Profile > SSL-Protokollprofil und fügen Sie ein Profil hinzu.

Ändern eines SSL-Protokollprofils über die CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

set ssl logprofile <name> [-sslLogClAuth ( ENABLED | DISABLED )][-ssllogClAuthFailures ( ENABLED | DISABLED )] [-sslLogHS ( ENABLED | DISABLED )] [-sslLogHSfailures ( ENABLED | DISABLED )]
<!--NeedCopy-->

Beispiel:

set ssllogprofile ssllog10 -ssllogClAuth en -ssllogClAuthFailures en -ssllogHS en -ssllogHSfailures en

Done

sh ssllogprofile ssllog10

    1)            Name: ssllog10

                    SSL log ClientAuth [Success/Failures] : ENABLED
                    SSL log ClientAuth [Failures] : ENABLED
                    SSL log Handshake [Success/Failures] : ENABLED
                    SSL log Handshake [Failures] : ENABLED
     Done
<!--NeedCopy-->

Ändern eines SSL-Protokollprofils über die grafische Benutzeroberfläche

  1. Navigieren Sie zu System > Profile > SSL-Protokollprofil, wählen Sie ein Profil aus und klicken Sie auf Bearbeiten.
  2. Nehmen Sie Änderungen vor und klicken Sie auf OK.

Zeigen Sie alle SSL-Protokollprofile über die CLI an

Geben Sie in der Befehlszeile Folgendes ein:

sh ssl logprofile
<!--NeedCopy-->

Beispiel:

sh ssl logprofile

    1)            Name: ssllogp1
                    SSL log ClientAuth [Success/Failures] : ENABLED
                    SSL log ClientAuth [Failures] : ENABLED
                    SSL log Handshake [Success/Failures] : DISABLED
                    SSL log Handshake [Failures] : ENABLED

    2)            Name: ssllogp2
                    SSL log ClientAuth [Success/Failures] : DISABLED
                    SSL log ClientAuth [Failures] : DISABLED
                    SSL log Handshake [Success/Failures] : DISABLED
                    SSL log Handshake [Failures] : DISABLED

    3)            Name: ssllogp3
                    SSL log ClientAuth [Success/Failures] : DISABLED
                    SSL log ClientAuth [Failures] : DISABLED
                    SSL log Handshake [Success/Failures] : DISABLED
                    SSL log Handshake [Failures] : DISABLED

    4)            Name: ssllog10
                    SSL log ClientAuth [Success/Failures] : ENABLED
                    SSL log ClientAuth [Failures] : ENABLED
                    SSL log Handshake [Success/Failures] : ENABLED
                    SSL log Handshake [Failures] : ENABLED
Done
<!--NeedCopy-->

Zeigen Sie alle SSL-Protokollprofile über die grafische Benutzeroberfläche an

Navigieren Sie zu System > Profile > SSL-Protokollprofil. Alle Profile sind aufgeführt.

Hängen Sie ein SSL-Protokollprofil an ein SSL-Profil an

Sie können ein SSL-Protokollprofil an ein SSL-Profil anhängen (festlegen), wenn Sie ein SSL-Profil erstellen, oder später, indem Sie das SSL-Profil bearbeiten. Sie können sowohl Clientauthentifizierung als auch Handshake-Erfolge und -Fehler protokollieren.

Wichtig:

Das standardmäßige SSL-Profil muss aktiviert sein, bevor Sie ein SSL-Protokollprofil anhängen können. Weitere Informationen zum Aktivieren des Standard-SSL-Profils finden Sie unter Standardprofil aktivieren.

Anhängen eines SSL-Protokollprofils an ein SSL-Profil über die CLI

Geben Sie in der Befehlszeile Folgendes ein:

set ssl profile <name> [-ssllogProfile <string>]
<!--NeedCopy-->

Beispiel:

set ssl profile fron_1 -ssllogProfile ssllog10
<!--NeedCopy-->

Anhängen eines SSL-Protokollprofils an ein SSL-Profil über die grafische Benutzeroberfläche

  1. Navigieren Sie zu System > Profile > SSL-Profil.
  2. Klicken Sie auf Bearbeiten und geben Sie im SSL-Protokollprofilein Profil an.

Anhängen eines SSL-Protokollprofils an eine SSL-Aktion

Sie können ein SSL-Protokollprofil nur beim Erstellen einer SSL-Aktion festlegen. Sie können eine SSL-Aktion nicht ändern, um das Protokollprofil festzulegen. Ordnen Sie die Aktion einer Richtlinie zu. Sie können nur Erfolge und Fehler der Clientauthentifizierung protokollieren.

Anhängen eines SSL-Protokollprofils an eine SSL-Aktion über die CLI

Geben Sie in der Befehlszeile Folgendes ein:

add ssl action <name> -clientAuth ( DOCLIENTAUTH | NOCLIENTAUTH ) -ssllogProfile <string>
<!--NeedCopy-->

Beispiel:

> add ssl action act1 -clientAuth DoCLIENTAUTH -ssllogProfile ssllog10

Done

> sh ssl action act1

    1)            Name: act1
                    Type: Client Authentication (DOCLIENTAUTH)
                    Hits: 0
                    Undef Hits: 0
                    Action Reference Count: 0
                    SSLlogProfile: ssllog10
Done
<!--NeedCopy-->

Anhängen eines SSL-Protokollprofils an eine SSL-Aktion über die grafische Benutzeroberfläche

  1. Navigieren Sie zu Traffic Management > SSL > Richtlinien und klicken Sie auf SSL-Aktionen.
  2. Klicken Sie auf Hinzufügen.
  3. Wählen Sie unter Clientauthentifizierung die Option AKTIVIERT
  4. Wählen Sie im SSL-Protokollprofil ein Profil aus der Liste aus, oder klicken Sie auf “+”, um ein Profil zu erstellen.
  5. Klicken Sie auf Erstellen.

Beispielausgabe aus der Protokolldatei

Im Folgenden finden Sie eine Beispielprotokollausgabe vonns.log für eine erfolgreiche Clientauthentifizierung.

Jan 24 16:24:25 <local0.debug> 10.102.57.80 01/24/2019:10:54:25 GMT  0-PPE-0 : default SSLLOG SSL_HANDSHAKE_SUCCESS 158 0 :  SPCBId 671 - ClientIP 10.102.1.98 - ClientPort 49451 - VserverServiceIP 10.102.57.82 - VserverServicePort 443 - ClientVersion TLSv1.2 - CipherSuite "AES-256-CBC-SHA TLSv1.2 Non-Export 256-bit" - Session New - CLIENT_AUTHENTICATED -SerialNumber "2A" - SignatureAlgorithm "sha1WithRSAEncryption" - ValidFrom "Sep 22 09:15:20 2008 GMT" - ValidTo "Feb  8 09:15:20 2036 GMT" - HandshakeTime 10 ms
Jan 24 16:24:25 <local0.debug> 10.102.57.80 01/24/2019:10:54:25 GMT  0-PPE-0 : default SSLLOG SSL_HANDSHAKE_ISSUERNAME 159 0 :  SPCBId 671 - IssuerName " C=IN,ST=KAR,O=Citrix R&D Pvt Ltd,CN=Citrix"
Jan 24 16:24:25 <local0.debug> 10.102.57.80 01/24/2019:10:54:25 GMT  0-PPE-0 : default SSLLOG SSL_HANDSHAKE_SUBJECTNAME 160 0 :  SPCBId 671 - SubjectName " C=IN,ST=KAR,O=Citrix Pvt Ltd,OU=A,CN=B"
Jan 24 16:24:25 <local0.debug> 10.102.57.80 01/24/2019:10:54:25 GMT  0-PPE-0 : default SSLLOG SSL_HANDSHAKE_SUCCESS 161 0 :  Backend SPCBId 674 - ServerIP 10.102.57.85 - ServerPort 443 - ProtocolVersion TLSv1.2 - CipherSuite "AES-256-CBC-SHA TLSv1.2 Non-Export 256-bit" - Session Reuse - SERVER_AUTHENTICATED -SerialNumber "3E" - SignatureAlgorithm "sha1WithRSAEncryption" - ValidFrom "Sep 24 06:40:37 2008 GMT" - ValidTo "Feb 10 06:40:37 2036 GMT" - HandshakeTime 1 ms
Jan 24 16:24:25 <local0.debug> 10.102.57.80 01/24/2019:10:54:25 GMT  0-PPE-0 : default SSLLOG SSL_HANDSHAKE_ISSUERNAME 162 0 :  SPCBId 674 - IssuerName " C=IN,ST=KAR,O=Citrix Pvt Ltd"
Jan 24 16:24:25 <local0.debug> 10.102.57.80 01/24/2019:10:54:25 GMT  0-PPE-0 : default SSLLOG SSL_HANDSHAKE_SUBJECTNAME 163 0 :  SPCBId 674 - SubjectName " C=IN,ST=P,L=Q,O=R"
<!--NeedCopy-->
Selektive SSL-Protokollierung