在 Windows 上生成 kerberos 密钥表文件需要什么?

Mic*_*zyk 4 windows hbase kerberos keytab ktpass

我在不同的网站上寻找上述问题的答案,但在每种情况下都有如何生成密钥表文件。我需要 keytab 来获取包含 kerberos 身份验证的 hbase 连接。

T-H*_*ron 6

为了在 Windows 上生成密钥表,您需要运行某个版本的 Kerberos,它会与目录服务器对话。在 Windows 上,迄今为止最流行的例子是 Active Directory,它内置了 Kerberos 支持。您需要在加入 Active Directory 域的 Windows 服务器上创建密钥表,使用 ktpass 命令实际创建密钥表。

Keytab 生成语法示例:

ktpass -out centos1-dev-local.keytab -mapUser krbCentos@DEV.LOCAL +rndPass -mapOp set +DumpSalt -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -princ HTTP/centos1.dev.local@DEV.LOCAL
Run Code Online (Sandbox Code Playgroud)

上面的命令示例成功创建了一个密钥表,用于名为 DEV.LOCAL 的 AD 域中。注意:注意随机密码语法(+rndPass)的使用。在我看来,没有必要在 keytab 创建命令语法中指定密码。相反,最好允许密码随机化 - 这提供了更好的安全性,因为它可以防止任何人秘密地手动登录为 AD 帐户并绕过密钥表。

作为其他参考,我强烈建议您阅读我在 Microsoft Technet 上的 Windows 平台上创建 Kerberos 密钥表的文章,该文章大大扩展了我在此处所说的内容: Kerberos 密钥表 – 解释。我经常返回并根据我在此论坛中看到的问题对其进行编辑。