13.3. 在 CS.cfg 文件中配置日志
在安装过程中,您可以通过直接编辑实例的 CS.cfg 来配置日志记录。
停止子系统实例。
# systemctl stop pki-tomcatd-nuxwdog@instance_name.service-
打开
/var/lib/pki/<instance_name>/<subsystem_type>/conf目录中的CS.cfg文件。 - 创建新日志。
要配置日志实例,请修改与该日志关联的参数。这些参数以
log.instance开头。Expand 表 13.3. 日志条目参数 参数 描述 type
日志文件的类型,如
signedAudit。enable
设置日志是否活跃。只有启用的日志才会记录事件。
level
在文本字段中设置日志级别。必须在字段中输入该级别,没有选择菜单。日志级别设置是一个数字值,如 第 13.1.2 节 “日志级别(消息类别)” 中列出的。
fileName
日志文件的完整路径,包括文件名。子系统用户应具有文件的读/写权限。
bufferSize
日志的缓冲区大小(KB)。缓冲区达到这个大小后,缓冲区的内容将被清除并复制到日志文件中。默认大小为 512 KB。有关缓冲的日志的更多信息,请参阅 第 13.1.3 节 “buffered 和 unbuffered 日志记录”。
flushInterval
在缓冲区内容被清除并添加到日志文件中之前的时间(以秒为单位)。默认间隔为 5 秒。
maxFileSize
日志文件的大小(KB)在轮转前可能会变为。达到这个大小后,文件将复制到轮转的文件,日志文件将启动新的文件。有关日志文件轮转的详情,请参考 第 13.1.4 节 “日志文件轮转”。默认大小为 2000 KB。
rolloverInterval
服务器轮转活跃日志文件的频率。可用的选择包括每小时、每天、每周、每月和年的选择。默认值为 2592000,代表每月的月数。如需更多信息,请参阅 第 13.1.4 节 “日志文件轮转”。
register [a]
此变量默认设为
false,因为功能改进,应该保留它。self-test 信息仅记录到由selftests.container.logger.fileName指定的日志文件。logSigning [b]
启用签名的日志记录。启用此参数后,为 signedAuditCertNickname 参数提供一个值。这个选项意味着日志只能被审核员查看。该值可以是
true或false。signedAuditCertNickname [c]
用于为审计日志签名的证书的别名。这个证书的私钥必须可以被子系统访问,才能为日志签名。
events [d]
指定将哪些事件记录到审计日志中。日志事件用逗号分开,没有空格。
[a]注册仅用于自我测试日志。[b]LogSigning仅用于审计日志。[c]signedAuditCertNickname仅适用于审计日志。[d]事件仅用于审计日志。- 保存该文件。
启动子系统实例。
# systemctl start pki-tomcatd@instance_name.service或者,如果使用 Nuxwdog watchdog:
# systemctl start pki-tomcatd-nuxwdog@instance_name.service
13.3.1. 启用和配置签名的审计日志 复制链接链接已复制到粘贴板!
13.3.1.1. 启用签名的审计日志记录 复制链接链接已复制到粘贴板!
默认情况下,会在安装时启用审计日志记录。但是,需要在安装后手动启用日志签名。
要显示当前的审计日志记录配置,请使用以下命令:
pki-server subsystem-audit-config-show -i < instance_name>。例如,对于 CA 子系统:
# pki-server ca-audit-config-show -i rhcs10-RSA-SubCA Enabled: True Log File: var/lib/pki/rhcs10-RSA-SubCA/logs/ca/signedAudit/ca_audit Buffer Size (bytes): 512 Flush Interval (seconds): 5 Max File Size (bytes): 2000 Rollover Interval (seconds): 2592000 Expiration Time (seconds): 0 Log Signing: False Signing Certificate: NHSM-CONN-XC:auditSigningCert cert-rhcs10-RSA-SubCA CA要启用签名的审计日志记录,请使用
pki-server实用程序将-- logSigning 选项设置为true:# pki-server subsystem-audit-config-mod --logSigning True -i instance_name停止实例:
# systemctl stop pki-tomcatd@instance_name.service或者,如果使用 Nuxwdog watchdog:
# systemctl stop pki-tomcatd-nuxwdog@instance_name.service运行
pki-server & lt;subsystem>-audit-config-mod命令,例如 CA 子系统:# pki-server ca-audit-config-mod --logSigning True -i rhcs10-RSA-SubCA ... Log Signing: True ...启动实例:
# systemctl start pki-tomcatd@instance_name.service或者,如果使用 Nuxwdog watchdog:
# systemctl start pki-tomcatd-nuxwdog@instance_name.service
13.3.1.2. 配置审计事件 复制链接链接已复制到粘贴板!
13.3.1.2.1. 启用和禁用审计事件 复制链接链接已复制到粘贴板!
有关启用和禁用审计事件的详情,请参阅管理指南中的 控制台中的 12.1.2.3 配置签名审计日志 (Common criteria Edition)。
另外,可以将审计事件过滤器设置为精细的选择。请参阅 第 13.3.1.2.2 节 “过滤审计事件”。
有关证书系统中可审计事件的完整列表,请参阅管理指南中的附录 E Audit 事件 附录(Common criteria Edition)。
13.3.1.2.2. 过滤审计事件 复制链接链接已复制到粘贴板!
在证书系统管理员可以设置过滤器来配置根据事件属性在审计文件中记录哪些审计事件。
过滤器的格式与 LDAP 过滤器相同。但是,证书系统只支持以下过滤器:
| 类型 | æ ¼å¼� | 示例 |
|---|---|---|
| 存在 | (属性 swig) | (ReqID=*) |
| ç›¸ç‰ | (属性=值) | (outcome=Failure) |
| 子字符串 | (属性=initial*any*…*any*final) | (SubjectID=*admin*) |
| AND 操作 | (&(filter_1)(filter_2)…(filter_n)) | (&(SubjectID=admin)(Outcome=Failure)) |
| 或者 操作 | (|(filter_1)(filter_2)…(filter_n)) | (|(SubjectID=admin)(Outcome=Failure)) |
| 未 操作 | (! (filter)) | (!(SubjectID=admin)) |
有关 LDAP 过滤器的详情,请参阅 Red Hat Directory Server Administration Guide 中的 Using Compound Search Filters。
例 13.2. 过滤审计事件
显示配置文件证书请求的当前设置:
$ pki-server ca-audit-event-show PROFILE_CERT_REQUEST -i <instance_name> Event Name: PROFILE_CERT_REQUEST Enabled: True Filter: None显示已处理的证书请求的当前设置:
$ *pki-server ca-audit-event-show CERT_REQUEST_PROCESSED -i <instance_name>* Event Name: CERT_REQUEST_PROCESSED Enabled: True Filter: None要只记录失败的事件,用于处理的证书请求和事件,该请求将
InfoName字段设置为rejectReason或cancelReason:停止证书系统:
# systemctl stop pki-tomcatd@instance_name.service或者,如果使用 Nuxwdog watchdog:
# systemctl stop pki-tomcatd-nuxwdog@instance_name.service对配置文件证书请求运行以下命令:
$ pki-server ca-audit-event-update PROFILE_CERT_REQUEST --filter "(Outcome=Failure)" i <instance_name> ... Filter: (Outcome=Failure)这会在 CA 的
CS.cfg中生成以下条目:log.instance.SignedAudit.filters.PROFILE_CERT_REQUEST=(Outcome=Failure)运行以下命令处理的证书请求:
$ pki-server ca-audit-event-update CERT_REQUEST_PROCESSED --filter "(|(InfoName=rejectReason)(InfoName=cancelReason))" i <instance_name> ... Filter: (|(InfoName=rejectReason)(InfoName=cancelReason))这会在 CA 的
CS.cfg中生成以下条目:log.instance.SignedAudit.filters.CERT_REQUEST_PROCESSED=(|(InfoName=rejectReason)(InfoName=cancelReason))启动证书系统:
# systemctl start pki-tomcatd@instance_name.service或者,如果使用 Nuxwdog watchdog:
# systemctl start pki-tomcatd-nuxwdog@instance_name.service
13.3.2. 配置自测试 复制链接链接已复制到粘贴板!
self-tests 功能和单独的 self-tests 在 CS.cfg 文件中注册和配置。如果启用了自我测试,则会为按需或启动列出该自测试,并且为空或设置为 critical。
Critical 自我测试在自测试的名称后面有一个冒号,并且单词 critical。否则,什么都不处于此位置。当关键自测试在需求自我tests 期间失败时,服务器将关闭;当关键自测试在启动过程中失败时,服务器将不会启动。
在安装实例时,实施的自助扩展会自动注册和配置。注册和配置的自tests 与子系统类型相关联。
通过更改 CS.cfg 文件中的相应设置来更改自我测试的关键性。
13.3.2.1. 默认在启动时自助测试 复制链接链接已复制到粘贴板!
启动时默认启用以下自助tests。
对于 CA 子系统,启动时默认启用以下自助tests:
-
caPresence- 用于验证 CA 子系统是否存在。 -
CAValidity- 用于确定 CA 子系统当前是否有效且未过期。这包括检查 CA 证书的过期时间。 SystemCertsVerification- 用于确定系统证书当前是否有效,且尚未过期或已被撤销。对于 CA 子系统,仅执行每个证书的有效性测试,离开证书验证测试,这可能会导致 OCSP 请求。此行为可使用以下配置参数覆盖:selftests.plugin.SystemCertsVerification.FullCAandOCSPVerify=true默认情况下,如果根本不存在此配置参数,则此配置参数被视为
false。
对于 KRA 子系统,启用了以下-self-tests :
-
KRAPresence- 用于验证 KRA 子系统是否存在。 -
SystemCertsVerification- 用于确定系统证书当前是否有效,且尚未过期或已被撤销。
对于 OCSP 子系统,启用了以下自助tests:
-
OCSPPresence- 用于验证 OCSP 子系统是否存在。 -
OCSPValidity- 用于确定 OCSP 子系统当前是否有效且未过期。这包括检查 OCSP 证书的过期时间。 SystemCertsVerification- 用于确定系统证书当前是否有效,且尚未过期或已被撤销。对于 OCSP 子系统,只为每个证书进行有效测试,离开证书验证测试,这可能会导致 OCSP 请求。此行为可使用以下配置参数覆盖:selftests.plugin.SystemCertsVerification.FullCAandOCSPVerify=true默认情况下,如果根本不存在此配置参数,则此配置参数被视为
false。
对于 TKS 子系统,启用了以下-self-tests :
-
SystemCertsVerification- 用于确定系统证书当前是否有效,且尚未过期或已被撤销。
对于 TPS 子系统,启用了以下-self-tests :
-
TPSPresence- 用于验证 TPS 子系统是否存在。 -
TPSValidity- 用于确定 TPS 子系统当前有效且未过期。这包括检查 TPS 证书的过期时间。 -
SystemCertsVerification- 用于确定系统证书当前是否有效,且尚未过期或已被撤销。
13.3.2.2. 修改自我测试的配置 复制链接链接已复制到粘贴板!
默认情况下,自助测试配置兼容。但是,有些设置可以更改自我测试日志的可见性或提高性能。修改 self-tests 的配置设置:
- 停止子系统实例。
-
打开位于实例的
conf/目录中的CS.cfg文件。 要编辑 self-test 日志的设置,请编辑以
selftests.container.logger开头的条目。除非另有指定,否则这些参数不会影响合规性。其中包括以下参数:- bufferSize- 指定日志的缓冲大小(KB)。默认大小为 512 KB。缓冲区达到这个大小后,缓冲区的内容将被清除并复制到日志文件中。
-
enable- 指定要启用的
true。只有启用的日志才会记录事件。必须为 合规启用这个值。 -
filename - 指定要写入消息的文件的完整路径,包括文件名。服务器必须具有文件的读/写权限。默认情况下,self-test 日志文件为
/selftests.log -
FlushInterval- 指定将缓冲区刷新到文件的间隔(以秒为单位)。默认间隔为 5 秒。
flushInterval是缓冲区刷新并添加到日志文件中的时间。 - level- 默认选择为 1;此日志不会针对 1 以外的任何级别设置。
-
maxFileSize- 为错误日志指定以 KB 为单位的文件大小。默认大小为 2000 KB。
maxFileSize决定在轮转日志文件前如何成为日志文件的大小。达到这个大小后,文件将复制到轮转的文件,并且启动新的日志文件。 -
register- 此变量默认设置为
false,因为功能改进,应该保留它。self-test 信息仅记录到由selftests.container.logger.fileName指定的日志文件。 -
rolloverInterval- 指定服务器轮转活跃错误日志文件的频率。选择是每小时、每天、每周、每月和年的选择。默认值为
2592000,它代表每月的(以秒为单位)。
要编辑运行自测试的顺序,请通过列出任何自测试作为以逗号和空格分开的参数的值来指定顺序。
要标记自我测试的关键,请向列表中自测试的名称添加一个冒号和词 key。
要禁用自我测试,请将其删除为
selftests.container.order.onDemand或selftests.container.order.startup参数的值。- 保存该文件。
- 启动子系统。
13.3.3. 调试日志的其他配置 复制链接链接已复制到粘贴板!
13.3.3.1. 启用和禁用调试日志 复制链接链接已复制到粘贴板!
默认情况下,在证书系统中启用调试日志。然而,在某些情况下,管理员希望禁用或重新启用此功能:
停止证书系统实例:
# systemctl stop pki-tomcatd@instance-name.service或者,如果使用 Nuxwdog watchdog:
# systemctl stop pki-tomcatd-nuxwdog@instance-name.service编辑
/CS.cfg文件并设置debug.enabled参数:要禁用调试日志,请设置:
debug.enabled=false注意调试日志 不是 审计日志的一部分。当尝试在证书系统或安装失败时调试特定故障时,调试日志很有用。
默认情况下启用调试日志。如果不需要,管理员可以安全地禁用调试日志来关闭详细程度。
要启用调试日志,请设置:
debug.enabled=true
启动证书系统实例:
# systemctl start pki-tomcatd@instance-name.service或者,如果使用 Nuxwdog watchdog:
# systemctl start pki-tomcatd-nuxwdog@instance-name.service
13.3.3.2. 设置调试日志文件轮转 复制链接链接已复制到粘贴板!
证书系统无法轮转调试日志。默认启用调试日志,这些日志会增大,直到文件系统已满为止。使用一个外部实用程序(如 logrotate )轮转日志。
例 13.3. 使用 logrotate 轮转调试日志
使用以下内容创建配置文件,如 /etc/logrotate.d/rhcs_debug :
/var/log/pki/instance_name/subsystem/debug {
copytruncate
weekly
rotate 5
notifempty
missingok
}
要轮转一个配置文件中的多个子系统的调试日志,请在打开大括号前列出日志的路径(每个用空格分开)。例如:
/var/log/pki/instance_name/ca/debug /var/log/pki/instance_name/kra/debug {
...
}
有关 logrotate 和示例中使用的参数的详情,请查看 logrotate (8) 手册页。