第 16 章 配置子系统日志
证书系统子系统创建日志文件,记录与活动相关的事件,如管理、使用服务器支持的任何协议的通信,以及子系统使用的各种其他进程。在子系统实例运行时,它会在其管理的所有组件上保留信息和错误消息的日志。另外,Apache 和 Tomcat Web 服务器会生成错误和访问日志。
每个子系统实例维护自己的日志文件,用于安装、审计和其他日志记录功能。
日志插件模块是作为 Java™ 类实施的监听程序,并在配置框架中注册。
除审计日志外,所有日志文件和轮转日志文件都位于 pki_subsystem_log_path 中指定的任何目录中,而实例是使用 pkispawn 创建时在
pki_subsystem_log_path
中指定的任何目录中。 常规审计日志位于带有其他类型的日志的日志目录中,而签名的审计日志则写入 /var/log/pki/instance_name/subsystem_name/signedAudit
。可以通过修改配置来更改日志的默认位置。
16.1. 关于证书系统日志
证书系统子系统保留几种不同类型的日志,它们根据子系统类型、服务类型和单个日志设置提供特定信息。可以为实例保留的日志类型取决于它所在的子系统类型。
16.1.1. 签名的审计日志
证书系统为所有事件维护审计日志,如请求、发布和撤销证书并发布 CRL。这些日志然后被签名。这允许检测到授权访问或活动。然后,外部审核员可以在需要时审核系统。分配的 auditor 用户帐户是唯一能够查看已签名的审计日志的帐户。此用户的证书用于签名和加密日志。审计日志记录配置为指定日志记录的事件。
签名的审计日志写入
/var/log/pki/instance_name/subsystem_name/signedAudit
。但是,可以通过修改配置来更改日志的默认位置。
如需更多信息,请参阅 第 16.3.2 节 “使用签名的审计日志”。
16.1.2. 调试日志
调试日志(默认启用)会针对所有子系统进行维护,具有不同程度和信息类型。
调试日志包含子系统所执行的每个操作的非常具体的信息,包括运行、连接信息和服务器请求和响应消息的插件和 servlet。
第 16.2.1.1 节 “正在记录的服务” 中会简要讨论记录到调试日志的常规服务类型。这些服务包括授权请求、处理证书请求、证书状态检查以及归档和恢复密钥,以及访问 Web 服务。
CA、IADP、KRA 和 TKS 记录的调试日志记录有关子系统进程的详细信息。每个日志条目都有一个以下格式:
[date:time] [processor]: servlet: message
消息 可以是子系统的返回消息,也可以是包含提交到子系统的值。
例如,TKS 记录了此消息用于连接 LDAP 服务器:
[10/Jun/2020:05:14:51][main]: Established LDAP connection using basic authentication to host localhost port 389 as cn=Directory Manager
处理器 是主 的,消息 是服务器有关 LDAP 连接的消息,且没有 servlet。
另一方面,CA 会记录有关证书操作以及子系统连接的信息:
[06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.requestowner$ value=KRA-server.example.com-8443
在本例中,处理器 是 CA 代理端口上的 HTTP 协议,而它指定了 servlet 处理配置集,其中包含提供配置文件参数(请求的子系统所有者)及其值(KRA 启动请求)。
例 16.1. CA 证书请求日志消息
[06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.profileapprovedby$ value=admin [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.cert_request$ value=MIIBozCCAZ8wggEFAgQqTfoHMIHHgAECpQ4wDDEKMAgGA1UEAxMBeKaBnzANBgkqhkiG9w0BAQEFAAOB... [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.profile$ value=true [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.cert_request_type$ value=crmf [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.requestversion$ value=1.0.0 [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.req_locale$ value=en [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.requestowner$ value=KRA-server.example.com-8443 [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.dbstatus$ value=NOT_UPDATED [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.subject$ value=uid=jsmith, e=jsmith@example.com [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.requeststatus$ value=begin [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.auth_token.user$ value=uid=KRA-server.example.com-8443,ou=People,dc=example,dc=com [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.req_key$ value=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDreuEsBWq9WuZ2MaBwtNYxvkLP^M HcN0cusY7gxLzB+XwQ/VsWEoObGldg6WwJPOcBdvLiKKfC605wFdynbEgKs0fChV^M k9HYDhmJ8hX6+PaquiHJSVNhsv5tOshZkCfMBbyxwrKd8yZ5G5I+2gE9PUznxJaM^M HTmlOqm4HwFxzy0RRQIDAQAB [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.auth_token.authmgrinstname$ value=raCertAuth [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.auth_token.uid$ value=KRA-server.example.com-8443 [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.auth_token.userid$ value=KRA-server.example.com-8443 [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.requestor_name$ value= [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.profileid$ value=caUserCert [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.auth_token.userdn$ value=uid=KRA-server.example.com-4747,ou=People,dc=example,dc=com [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.requestid$ value=20 [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.auth_token.authtime$ value=1212782378071 [06/Jun/2020:14:59:38][http-8443;-Processor24]: ProfileSubmitServlet: key=$request.req_x509info$ value=MIICIKADAgECAgEAMA0GCSqGSIb3DQEBBQUAMEAxHjAcBgNVBAoTFVJlZGJ1ZGNv^M bXB1dGVyIERvbWFpbjEeMBwGA1UEAxMVQ2VydGlmaWNhdGUgQXV0aG9yaXR5MB4X^M DTA4MDYwNjE5NTkzOFoXDTA4MTIwMzE5NTkzOFowOzEhMB8GCSqGSIb3DQEJARYS^M anNtaXRoQGV4YW1wbGUuY29tMRYwFAYKCZImiZPyLGQBARMGanNtaXRoMIGfMA0G^M CSqGSIb3DQEBAQUAA4GNADCBiQKBgQDreuEsBWq9WuZ2MaBwtNYxvkLPHcN0cusY^M 7gxLzB+XwQ/VsWEoObGldg6WwJPOcBdvLiKKfC605wFdynbEgKs0fChVk9HYDhmJ^M 8hX6+PaquiHJSVNhsv5tOshZkCfMBbyxwrKd8yZ5G5I+2gE9PUznxJaMHTmlOqm4^M HwFxzy0RRQIDAQABo4HFMIHCMB8GA1UdIwQYMBaAFG8gWeOJIMt+aO8VuQTMzPBU^M 78k8MEoGCCsGAQUFBwEBBD4wPDA6BggrBgEFBQcwAYYuaHR0cDovL3Rlc3Q0LnJl^M ZGJ1ZGNvbXB1dGVyLmxvY2FsOjkwODAvY2Evb2NzcDAOBgNVHQ8BAf8EBAMCBeAw^M HQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMEMCQGA1UdEQQdMBuBGSRyZXF1^M ZXN0LnJlcXVlc3Rvcl9lbWFpbCQ=
同样, OCSP 显示 OCSP 请求信息:
[07/Jul/2020:06:25:40][http-11180-Processor25]: OCSPServlet: OCSP Request: [07/Jul/2020:06:25:40][http-11180-Processor25]: OCSPServlet: MEUwQwIBADA+MDwwOjAJBgUrDgMCGgUABBSEWjCarLE6/BiSiENSsV9kHjqB3QQU
16.1.2.1. 安装日志
所有子系统都会保留安装日志。
每次通过初始安装创建子系统时,或使用 pkispawn 创建额外的实例,它是安装含有完整调试输出的安装文件,包括任何错误,如果安装成功,则 URL 和 PIN 到实例的配置接口。该文件在实例的
/var/log/pki/
目录中创建,其名称格式为 pki-subsystem_name-spawn.timestamp.log
。
安装日志中的每一行都遵循安装过程中的步骤。
例 16.2. CA 安装日志
... 2015-07-22 20:43:13 pkispawn : INFO ... finalizing 'pki.server.deployment.scriptlets.finalization' 2015-07-22 20:43:13 pkispawn : INFO ....... cp -p /etc/sysconfig/pki/tomcat/pki-tomcat/ca/deployment.cfg /var/log/pki/pki-tomcat/ca/archive/spawn_deployment.cfg.20150722204136 2015-07-22 20:43:13 pkispawn : DEBUG ........... chmod 660 /var/log/pki/pki-tomcat/ca/archive/spawn_deployment.cfg.20150722204136 2015-07-22 20:43:13 pkispawn : DEBUG ........... chown 26445:26445 /var/log/pki/pki-tomcat/ca/archive/spawn_deployment.cfg.20150722204136 2015-07-22 20:43:13 pkispawn : INFO ....... generating manifest file called '/etc/sysconfig/pki/tomcat/pki-tomcat/ca/manifest' 2015-07-22 20:43:13 pkispawn : INFO ....... cp -p /etc/sysconfig/pki/tomcat/pki-tomcat/ca/manifest /var/log/pki/pki-tomcat/ca/archive/spawn_manifest.20150722204136 2015-07-22 20:43:13 pkispawn : DEBUG ........... chmod 660 /var/log/pki/pki-tomcat/ca/archive/spawn_manifest.20150722204136 2015-07-22 20:43:13 pkispawn : DEBUG ........... chown 26445:26445 /var/log/pki/pki-tomcat/ca/archive/spawn_manifest.20150722204136 2015-07-22 20:43:13 pkispawn : INFO ....... executing 'systemctl enable pki-tomcatd.target' 2015-07-22 20:43:13 pkispawn : INFO ....... executing 'systemctl daemon-reload' 2015-07-22 20:43:13 pkispawn : INFO ....... executing 'systemctl restart pki-tomcatd@pki-tomcat.service' 2015-07-22 20:43:14 pkispawn : INFO END spawning subsystem 'CA' of instance 'pki-tomcat' 2015-07-22 20:43:14 pkispawn : DEBUG
16.1.2.2. Tomcat 错误和访问日志
CA、KRA、TKS、TKS 和 TPS 子系统将 Tomcat Web 服务器实例用于其代理和终端实体的接口。
错误和访问日志由 Tomcat Web 服务器创建,该服务器随证书系统一起安装并提供 HTTP 服务。错误日志包含服务器遇到的 HTTP 错误消息。访问日志通过 HTTP 接口列出访问活动。
Tomcat 创建的日志:
- admin.timestamp
- catalina.timestamp
- catalina.out
- host-manager.timestamp
- localhost.timestamp
- localhost_access_log.timestamp
- manager.timestamp
这些日志在证书系统中不可用或可配置;它们只能在 Apache 或 Tomcat 中进行配置。有关配置这些日志的详情,请查看 Apache 文档。
16.1.2.3. 自我测试日志
当服务器启动或手动运行时,在自tests 运行期间获取的自tests 日志消息。可以通过打开此日志来查看测试。此日志无法通过控制台进行配置,只能通过更改
CS.cfg
文件中的设置来配置。有关如何通过编辑 CS.cfg
文件来配置日志的说明,请参阅 Red Hat Certificate System Planning、安装和部署指南中的 启用 Publishing Queue 部分。
本节中有关日志的信息与此日志无关。有关 self-tests 的更多信息,请参阅 第 14.9 节 “运行自测试”。