如何在不使用 KRB5CCNAME 的情况下在客户端上设置 Kerberos default_ccache_name 属性?

How to set the Kerberos default_ccache_name attribute on a client without using KRB5CCNAME?

根据 MIT Kerberos 文档,默认凭据缓存名称确定如下:

Default ccache name

The default credential cache name is determined by the following, in descending order of priority:

1. The KRB5CCNAME environment variable. For example, KRB5CCNAME=DIR:/mydir/.
2. The default_ccache_name profile variable in [libdefaults].
3. The hardcoded default, DEFCCNAME.

http://web.mit.edu/kerberos/krb5-devel/doc/basic/ccache_def.html

我想知道是否有办法在客户端定义 default_ccache_name 配置文件变量 (#2)?我已经尝试在我的一台客户端机器上的 /etc/krb5.conf 中如下定义它:

[libdefaults]
        ...
        default_ccache_name = FILE:/var/krb5/security/creds/krb5cc_%{uid}
        ...

但是客户端二进制文件(klist/kinit/kdestroy 等)似乎完全忽略了这一点:

[~]$ klist
klist: No credentials cache found (ticket cache FILE:/tmp/krb5cc_34125)

我是 运行 版本 1.9.4:

[~]$ klist -V
Kerberos 5 version 1.9.4

糟糕,我想我找到了自己的答案——1.9.4 版没有这个参数:

http://web.mit.edu/kerberos/www/krb5-1.9/krb5-1.9.4/doc/krb5-admin.html

查看正确的文档会有所帮助...