Linux 命令速查
系统管理 man klist

klist

列出 Kerberos 凭据缓存中的票据

返回

补充说明

klist 属于 MIT Kerberos 客户端工具集(Debian/Ubuntu 包名 krb5-user,RHEL 为 krb5-workstation),用于查看当前用户凭据缓存中的 TGT 和服务票据,是排查 Kerberos 认证问题的第一步。

凭据缓存默认位于 /tmp/krb5cc_<uid>(FILE 类型),也可能使用 KEYRING、KCM 等类型。klist 会显示缓存类型、默认主体(principal)、票据有效期、服务名和加密类型。

如果输出为空或提示找不到缓存,通常说明还没执行 kinit,或者 KRB5CCNAME 指向了错误的位置。kdestroy 可清除缓存,kinit 重新获取 TGT。

语法

klist [-e] [-l] [-A] [-s] [-c 缓存] [--] [缓存]

选项

  • -l:显示票据标志位(如初始票据、可转发)
  • -e:显示票据使用的加密类型
  • -A:显示所有缓存(包括残留的)
  • -s:静默模式,不输出票据内容,仅用退出码表示缓存是否存在
  • -c <缓存>:指定缓存名或路径,等价于设置 KRB5CCNAME
  • -k:列出 keytab 中的密钥(配合 -t 显示时间戳)

实例

# 查看当前默认缓存中的票据
klist

# 显示票据标志和加密类型
klist -e -l

# 检查默认缓存是否有效,用于脚本判断
klist -s && echo "已认证" || echo "需要 kinit"

# 查看指定缓存文件
klist -c /tmp/krb5cc_1000

# 查看 keytab 中的主体及 kvno
klist -k -t /etc/krb5.keytab

参考链接