Ktab 命令列出 keytab 文件中的主体超过 1 次

Ktab command list out the principals in the keytab file more than 1 time

这可能是个愚蠢的问题,但我想知道为什么会这样...

我有一个用于 kerberos 身份验证的密钥表文件。我想使用 ktab 命令列出 keytab 文件中包含的 kvno 和主体名称。 假设我的密钥表文件是 kumar.keytab

ktab -l -k kumar.keytab

执行上述命令时,显示kvno和principal 5次

Keytab name: kumar.keytab
KVNO Principal
---- ----------------------------
3 Kumar/hostname@KUMAR.COM
3 Kumar/hostname@KUMAR.COM
3 Kumar/hostname@KUMAR.COM
3 Kumar/hostname@KUMAR.COM
3 Kumar/hostname@KUMAR.COM

我的问题是为什么5次显示相同的值?

不胜感激。

谢谢,

我的经验是,java kerberos 工具通常不完整 and/or 损坏。如果您使用 MIT 或 Heimdal 库中的 kerberos 工具,您将确切地看到这 4 个版本是什么。

例如,使用 Heimdal Kerberos 库中的 ktutil list 命令,您将获得:

FILE:/etc/krb5.keytab:

Vno  Type                     Principal          Aliases
  6  aes256-cts-hmac-sha1-96 host/test.com@TEST.COM 
  6  arcfour-hmac-md5        host/test.com@TEST.COM 

密钥表包含每个密钥版本号、加密类型和主体名称的条目。所有 3 个都必须一致才能使 kerberos 协议工作。 Kerberos 支持多种加密类型,协议的一部分正在协商要使用的加密类型。这允许较新版本的软件支持没有所有最新加密的旧客户端。

使用 Java 的 ktab,您可以指定“-e”和“-t”参数以让它显示加密类型和时​​间戳。 “-help”参数将显示更多信息。

C:\Users\test>ktab -l -e -t
Keytab name: C:\Users\test\krb5.keytab
KVNO Timestamp      Principal
---- -------------- ---------------------------------------------------
   4 25/05/17 07:56 test@TEST.COM (17:AES128 CTS mode with HMAC SHA1-96)
   4 25/05/17 07:56 test@TEST.COM (16:DES3 CBC mode with SHA1-KD)
   4 25/05/17 07:56 test@TEST.COM (23:RC4 with HMAC)

每行代表 krb5 文件中定义的所需加密的密钥。示例(rc4-hmac、des3-cdc-sha1 等)。