第 20 章 故障排除
				本章论述了在安装 CertificateCertificate Systemnbsp;System 时遇到的一些更常见的使用问题。
			
- 问: 初始化脚本返回 OK 状态,但 my CA 实例没有响应。这是因为什么?
- 问: 我无法打开 pkiconsole,并在 stdout 中看到 Java 例外。
- 问: 我试图运行 pkiconsole,并在 stdout 中获取套接字例外。这是因为什么?
- 问: 我试图注册证书,并且收到错误 "request is not submitted...Subject Name Not Found"?
- 问: 为什么没有发布注册的证书?
- 问: 如何从远程主机打开 pkiconsole 工具?
- 问: 当 LDAP 服务器没有响应时,我该怎么办?
问:
							初始化脚本返回 OK 状态,但 my CA 实例没有响应。这是因为什么?
						
答:
							这不应发生。通常(但并不总是如此),这表示该 CA 的监听程序问题可能有很多不同的原因。检查 
catalina.out、system,以及 调试 日志文件,以查看发生了哪些错误。这列出了几个常见错误。
						
							个情况是 CA 的 PID,表示进程正在运行,但没有为服务器打开任何监听程序。这会在 
catalina.out 文件中返回 Java 调用类错误:
						
							这可能意味着您有错误版本的 JSS 或 NSS。进程在路径中需要 
libnss3.so。使用以下命令进行检查:
						ldd /usr/lib64/libjss4.so
ldd /usr/lib64/libjss4.so
							如果没有找到 
libnss3.so,请尝试取消设置 LD_LIBRARY_PATH 变量并重启 CA。
						unset LD_LIBRARY_PATH systemctl restart pki-tomcatd@instance_name.service
unset LD_LIBRARY_PATH
systemctl restart pki-tomcatd@instance_name.service问:
							我无法打开 pkiconsole,并在 stdout 中看到 Java 例外。
						
答:
							这可能意味着您安装了错误 JRE,或将错误 JRE 设置为默认值。运行 alternatives --config java 以查看选择什么 JRE。Red Hat Certificate Systemnbsp;Hat Certificate Red Hat Certificate Systemnbsp;System requires OpenJDK 1.8.
						
问:
							我试图运行 pkiconsole,并在 stdout 中获取套接字例外。这是因为什么?
						
答:
							这意味着存在端口问题。管理端口有不正确的 SSL 设置(表示 
server.xml中存在错误的配置),或者为访问 admin 接口提供了错误的端口。
						
							端口错误类似如下:
						
问:
							我试图注册证书,并且收到错误 "request is not submitted...Subject Name Not Found"?
						
答:
							这通常使用自定义 LDAP 目录验证配置集,并显示目录操作失败。特别是,它会失败,因为它无法构造工作的 DN。该错误将位于 CA 的 
调试日志 中。例如,这个配置集使用目录无法识别的自定义属性(MYATTRIBUTE):
						
							任何自定义组件 - 属性、对象类和未注册的 OID - 在主体 DN 中使用都可能导致失败。在大多数情况下,RHC 2253 中定义的 X.509 属性应该用于主题 DN 而不是自定义属性。
						
问:
							为什么没有发布注册的证书?
						
答:
							这通常表示 CA 被错误配置。查找错误的主要位置是 
debug 日志,它可以指示错误配置的位置。例如,这在映射程序中存在问题:
						
							检查 CA 的 
CS.cfg 文件中的 发布 配置,或者在 CA 控制台的 Publishing 选项卡中检查。在这个示例中,问题位于 mapping 参数中,它必须指向 现有的 LDAP 后缀:
						ca.publish.mapper.instance.LdapUserCertMap.dnPattern=UID=$subj.UID,dc=publish
ca.publish.mapper.instance.LdapUserCertMap.dnPattern=UID=$subj.UID,dc=publish问:
							如何从远程主机打开 
pkiconsole 工具?
						答:
							在某些情况下,管理员希望从远程主机在证书系统服务器上打开 
pkiconsole。为此,管理员可以使用虚拟网络计算(VNC)连接:
						- 在 Red Hat Certificate System 服务器中设置 VNC 服务器。重要pkiconsole工具无法在启用了 Federal Information Processing Standard(FIPS)模式的服务器中运行。如果证书系统服务器上启用了 FIPS 模式,请在 Red Hat Enterprise Linux 中使用不同的主机来运行 VNC 服务器。有关安装 VNC 服务器的详情,请查看 Red Hat System Administrator 指南中的 VNC 服务器 部分。
- 使用 VNC viewer 连接到运行 VNC 服务器的主机。详情请查看 Red Hat System Administrator 指南中的 VNC Viewer 部分。
- 在 VNC 窗口中打开pkiconsole工具。例如:pkiconsole https://server.example.com:8443/ca # pkiconsole https://server.example.com:8443/caCopy to Clipboard Copied! Toggle word wrap Toggle overflow 
注意
								VNC viewer 可用于不同类型的操作系统。但是,红帽只支持从集成软件仓库在 Red Hat Enterprise Linux 中安装 VNC viewer。
							
问:
							当 LDAP 服务器没有响应时,我该怎么办?
						
答:
							如果用于内部数据库的 Red Hat Directory Server 实例没有运行,则发生连接问题或 TLS 连接失败,那么您将无法连接到依赖它的子系统实例。实例调试日志将专门识别 LDAP 连接的问题。例如,如果 LDAP 服务器没有在线:
						
							在修复底层网络问题后,比如电缆未插入后,Red Hat Directory Server 被停止、发生大量数据包丢失,或者确保可以重新创建 TLS 连接,然后遇到问题并启动证书系统实例:
						
systemctl stop pki-tomcatd-nuxwdog@instance_name.service
# systemctl stop pki-tomcatd-nuxwdog@instance_name.servicesystemctl start pki-tomcatd-nuxwdog@instance_name.service
# systemctl start pki-tomcatd-nuxwdog@instance_name.service