本节按字母顺序 (N-Z) 列出了 Kerberos 命令、Kerberos 守护进程、PAM 框架、GSS 接口、NFS 服务和 Kerberos 库的常见错误消息。
No credentials cache file found
Cause: Kerberos 找不到凭证高速缓存 (/tmp/krb5cc_uid)。
解决方法: 确保凭证文件存在且可读。否则,请再次尝试运行 kinit 命令。
No credentials were supplied, or the credentials were unavailable or inaccessible
No credential cache found
Cause: 用户的凭证高速缓存不正确或不存在。
解决方法: 用户必须在尝试启动服务之前运行 kinit。
No credentials were supplied, or the credentials were unavailable or inaccessible
No principal in keytab ('filename') matches desired name principal
Cause: 尝试验证服务器时发生错误。
解决方法: 确保 host 主体或服务主体位于服务器的密钥表文件中。
Operation requires "privilege" privilege
Cause: 未在 kadm5.acl 文件中为所使用的 admin 主体分配相应特权。
解决方法: 使用具有相应特权的主体。或者,也可以为所使用的主体配置相应特权。通常,名称中包含 /admin 的主体都具有相应的特权。
PAM-KRB5 (auth): krb5_verify_init_creds failed: Key table entry not found
Cause: 远程应用程序尝试在本地 /etc/krb5/krb5.keytab 文件中读取主机的服务主体,但不存在任何主体。
解决方法: 将主机的服务主体添加到主机的密钥表文件中。
Permission denied in replay cache code
Cause: 无法打开系统的重放高速缓存。首次运行服务器时所使用的用户 ID 可能与当前的用户 ID 不同。
解决方法: 确保重放高速缓存具有相应的权限。重放高速缓存存储在运行基于 Kerberos 的服务器应用程序的主机上。对于非 root 用户,重放高速缓存文件名为 /var/krb5/rcache/rc_service_name_uid。对于 root 用户,重放高速缓存文件名为 /var/krb5/rcache/root/rc_service_name。
Protocol version mismatch
Cause: 很可能向 KDC 发送了 Kerberos V4 请求。Kerberos 服务仅支持 Kerberos V5 协议。
解决方法: 确保应用程序使用的是 Kerberos V5 协议。
Request is a replay
Cause: 请求已经发送到该服务器,并进行了处理。票证可能已被盗用,其他用户正在尝试重用这些票证。
解决方法: 等待几分钟,然后重新发送请求。
Requested principal and ticket don't match: Requested principal is 'service-principal' and TGT principal is 'TGT-principal'
Cause: 您正连接的服务主体和您拥有的服务票证不匹配。
解决方法: 确保 DNS 正常运行。如果使用的是其他供应商的软件,请确保该软件使用的主体名称正确。
Server refused to negotiate authentication, which is required for encryption. Good bye.
Cause: 远程应用程序无法接受或已配置为不接受来自客户机的 Kerberos 验证。
解决方法: 提供可以协商验证的远程应用程序,或配置该应用程序以使用相应标志来启用验证。
Server rejected authentication (during sendauth exchange)
Cause: 您正在尝试与其通信的服务器拒绝了验证。此错误通常出现在 Kerberos 数据库传播过程中。一些常见的原因可能是 kpropd.acl 文件、DNS 或密钥表文件存在问题。
解决方法: 如果在运行 kprop 以外的应用程序时收到此错误,请检查服务器的密钥表文件是否正确。
Target name principal 'principal' does not match service-principal
Cause: 所使用的服务主体与应用服务器所使用的服务主体不匹配。
解决方法: 在应用服务器中,确保服务主体包含在密钥表文件中。对于客户机,确保使用的是正确的服务主体。
The ticket isn't for us
Ticket/authenticator do not match.
Cause: 请求中的主体名称可能与服务主体的名称不匹配。原因可能是所发送票证使用的是主体的 FQDN 名称,而服务需要非 FQDN 名称,或者所发送票证使用的是主体的非 FQDN 名称,而服务需要 FQDN 名称。
解决方法: 如果在运行 kprop 以外的应用程序时收到此错误,请检查服务器的密钥表文件是否正确。
Truncated input file detected
Cause: 操作中使用的数据库转储文件不是完整的转储文件。
解决方法: 重新创建转储文件,或使用其他数据库转储文件。