我试图了解Kerberos的工作原理,因此遇到了称为Keytab的文件,我相信该文件用于对KDC服务器的身份验证。

就像kerberos Realm 中的每个用户和服务(例如Hadoop)都具有服务主体一样,每个用户和服务是否都具有keytab文件?

此外,使用keytab进行的身份验证是否可用于对称密钥加密或公私密钥?

最佳答案

要回答您的两个问题,每个用户和服务都不需要密钥表文件,并且密钥表使用对称密钥加密。

我将基于我对如何使用Active Directory作为目录服务的Windows和非Windows系统的混合网络中使用keytab的理解进行更多的解释。如果目录服务不是AD以外的东西,AD是目前最流行的目录服务,那么我对keytab的使用方式并不熟悉,但我想概念会完全相同,因为它们都基于Kerberos。 。同样,在企业网络中,每个用户和服务都不需要keytab文件。

键表是包含目录服务中存在的服务及其长期密钥(称为Samson的密码)的表示形式的加密文件。在Active Directory Realm 中,键表对于在受Kerberos协议(protocol)保护的非Windows平台上运行的服务特别有用。

键标签用于

  • 将入站AD用户的Kerberos服务票证解密为服务
  • 或向网络上的另一个服务验证服务本身。

  • 第2点特别有用,因为正如Samson所说,服务无法手动输入其密码来进行身份验证,因此,长期密钥将很有帮助地编码到文件中。这就是为什么keytab文件本身敏感并且需要保护的原因。

    有关密钥表的其他深入信息,您可以在此处阅读有关密钥表的更多信息:Kerberos Keytabs – Explained

    我经常根据在此论坛上看到的问题返回并对其进行编辑。

    07-24 22:07