在Windows上生成kerberos keytab文件需要什么?

时间:2017-04-01 06:30:51

标签: windows hbase kerberos keytab ktpass

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

1 个答案:

答案 0 :(得分:2)

要在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

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

另外参考,我强烈建议您阅读我在Microsoft Technet上的Windows平台上创建Kerberos keytab的文章,该文章大大扩展了我在此处所说的内容:Kerberos Keytabs – Explained。我经常回头根据我在这个论坛上看到的问题进行编辑。