选择性 SSL 日志记录
在包含数千台虚拟服务器的大型部署中,所有与 SSL 相关的信息都会被记录下来。早些时候,筛选一些关键虚拟服务器的客户端身份验证和 SSL 握手成功和失败并不容易。仔细阅读整个日志以获取此信息是一项耗时且繁琐的任务,因为基础架构没有提供过滤日志的控制。现在,您可以在 ns.log
中记录特定虚拟服务器或一组虚拟服务器的 SSL 相关信息。此信息在调试失败时特别有用。
使用 DEBUG 设置,所有与 SSL 相关的信息都将记录在 ns.log
中。但是,在配置 SSL 日志配置文件时,仅记录与客户端身份验证和 SSL 握手相关的信息。要记录此信息,请执行以下步骤:
- 在 syslog 参数上设置 DEBUG。
- 配置 SSL 日志配置文件。仅启用客户端身份验证和 SSL 握手失败/成功和失败的记录。当您将 SSL 日志配置文件与 SSL 配置文件关联时,会记录所有四个配置文件。仅当您将 SSL 日志配置文件与 SSL 操作关联时,才会记录客户端身份验证失败/成功和失败。
- 将 SSL 日志配置文件附加到 SSL 配置文件或 SSL 操作。
有关成功的客户端身份验证,请参阅本页末尾的示例 ns.log 输出。
设置调试级别
将 syslog 日志级别设置为 DEBUG。在命令提示符下,键入:
set audit syslogParams -logLevel DEBUG
设置调试时,将包括前端(虚拟服务器)和后端(服务和服务组)的 SSL 日志。但是,选择性 SSL 日志记录仅提供对前端的控制。
SSL 日志配置文件
SSL 日志配置文件可控制记录虚拟服务器或一组虚拟服务器的以下事件:
-
客户端身份验证成功和失败,或仅失败。
-
SSL 握手成功和失败,或仅限失败。
默认情况下,所有参数都处于禁用状态。
可以在 SSL 配置文件或 SSL 操作上设置 SSL 日志配置文件。如果设置为 SSL 配置文件,则可以记录客户端身份验证和 SSL 握手成功和失败信息。如果设置为 SSL 操作,则只能记录客户端身份验证成功和失败信息,因为在评估策略之前握手已完成。
即使未配置 SSL 日志配置文件,也会记录客户端身份验证和 SSL 握手成功和失败。但是,只有在使用 SSL 日志配置文件时才可能进行选择性日志记录。
注意:
高可用性和群集设置支持 SSL 日志配置文件。
使用 CLI 添加 SSL 日志配置文件
在命令提示符下,键入:
add ssl logprofile <name> [-sslLogClAuth ( ENABLED | DISABLED )] [-ssllogClAuthFailures ( ENABLED | DISABLED )] [-sslLogHS ( ENABLED | DISABLED )] [-sslLogHSfailures ( ENABLED | DISABLED )]
<!--NeedCopy-->
参数:
姓名:
SSL 日志配置文件的名称。必须以 ASCII 字母数字或下划线 (_) 字符开头,且必须仅包含 ASCII 字母数字、下划线、哈希 (#)、句点 (.)、空格、冒号 (:)、at (@)、等于 (=) 和连字符 (-)。创建配置文件后无法更改。
名称是一个强制性参数。最大长度:127
sslLogClAuth
:
记录所有客户端验证事件。包括成功和失败事件。
可能的值:ENABLED、DISABLED
默认值: 已禁用
ssllogClAuthFailures
:
记录所有客户端验证失败事件。
可能的值:ENABLED、DISABLED
默认值: 已禁用
sslLogHS
:
记录所有与 SSL 握手相关的事件。包括成功和失败事件。
可能的值:ENABLED、DISABLED
默认值: 已禁用
sslLogHSfailures
:
记录所有与 SSL 握手相关的失败事件。
可能的值:ENABLED、DISABLED
默认值: 已禁用
示例:
> 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-->
使用 GUI 添加 SSL 日志配置文件
导航到 系统 > 配置文件 > SSL 日志配置 文件并添加配置文件。
使用 CLI 修改 SSL 日志配置文件
在命令提示符下,键入:
set ssl logprofile <name> [-sslLogClAuth ( ENABLED | DISABLED )][-ssllogClAuthFailures ( ENABLED | DISABLED )] [-sslLogHS ( ENABLED | DISABLED )] [-sslLogHSfailures ( ENABLED | DISABLED )]
<!--NeedCopy-->
示例:
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-->
使用 GUI 修改 SSL 日志配置文件
- 导航到 系统 > 配置文件 > SSL 日志配置文件,选择一个配置文件,然后单击 编辑。
- 进行更改,然后单击 确定。
使用 CLI 查看所有 SSL 日志配置文件
在命令提示符下,键入:
sh ssl logprofile
<!--NeedCopy-->
示例:
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-->
使用 GUI 查看所有 SSL 日志配置文件
导航到 系统 > 配置文件 > SSL 日志配置文件。列出了所有配置文件。
将 SSL 日志配置文件附加到 SSL 配置文件
您可以在创建 SSL 配置文件时在 SSL 配置文件上附加(设置)SSL 日志配置文件,或稍后通过编辑 SSL 配置文件。您可以记录客户端身份验证和握手成功和失败。
重要:
必须先启用默认 SSL 配置文件,然后才能附加 SSL 日志配置文件。有关启用默认 SSL 配置文件的详细信息,请参阅 启用默认配置文件。
使用 CLI 将 SSL 日志配置文件附加到 SSL 配置文件
在命令提示符下,键入:
set ssl profile <name> [-ssllogProfile <string>]
<!--NeedCopy-->
示例:
set ssl profile fron_1 -ssllogProfile ssllog10
<!--NeedCopy-->
使用 GUI 将 SSL 日志配置文件附加到 SSL 配置文件
- 导航到 系统 > 配置文件 > SSL 配置文件。
- 单击 编辑 ,然后在 SSL 日志配置文件中,指定配置文件。
将 SSL 日志配置文件附加到 SSL 操作
只能在创建 SSL 操作时设置 SSL 日志配置文件。您无法修改 SSL 操作来设置日志配置文件。将操作与策略关联。您只能记录客户端身份验证的成功和失败。
使用 CLI 将 SSL 日志配置文件附加到 SSL 操作
在命令提示符下,键入:
add ssl action <name> -clientAuth ( DOCLIENTAUTH | NOCLIENTAUTH ) -ssllogProfile <string>
<!--NeedCopy-->
示例:
> 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-->
使用 GUI 将 SSL 日志配置文件附加到 SSL 操作
- 导航到 流量管理 > SSL > 策略 ,然后单击 SSL 操作。
- 单击添加。
- 在客户端身份验证中,选择 启用。
- 在 SSL 日志配置文件中,从列表中选择一个配置文件,或单击“+”创建配置文件。
- 单击创建。
来自日志文件的示例输出
以下是成功 ns.log
进行客户端身份验证的示例日志输出。
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-->