按照惯例, Kerberos 密钥表文件位于/etc/krb5/krb5.keytab
非用户特定位置。该密钥表(和所有密钥表)可以包含多个条目。
假设一台计算机有三个用户:Alice、Bob 和 Eve。他们每个人都通过以下过程向共享密钥表添加一个条目,但使用各自的名称:
$ ktutil
ktutil: addent -password -p alice@REALM.COM -e aes256-cts -k 1
Password for alice@REALM.COM:
ktutil: list -e
slot KVNO Principal
---- ---- ---------------------------------------------------------------------
1 1 alice@REALM.COM (aes256-cts-hmac-sha1-96)
ktutil: wkt krb5.keytab
稍后,Alice、Bob 和 Eve 都可以分别使用他们的 keytab 条目来验证脚本,如下所示:
> kinit alice@REALM.COM -k -t mykeytab; myscript
是什么让 Eve 无法在 keytab 中使用 Alice 或 Bob 的条目?我还没有找到任何明确涵盖如何保持具有多个条目的 keytab 安全的内容。如果我们不希望 Eve 使用 Alice 的条目,他们应该有单独的 keytabs 受文件权限保护吗?
或者,这是 Kerberos 信任模型吗?如果他们每个人都可以访问这个 keytab,那么我们隐含地信任他们使用任何条目?我们应该只让受信任的服务共享一个密钥表吗?
提前感谢您的提示。只是想确保我正确理解信任模型。