我目前正在编写一个puppet模块来自动化将RHEL服务器连接到AD域的过程,并支持Kerberos。
目前,我有通过kinit自动获取和cachingKerberos票证授予票证的问题。 如果这是手动完成,我会这样做:
kinit [email protected]
这会提示inputAD用户密码,因此在自动执行此操作时出现问题。
我该如何自动化? 我发现一些post提到使用kadmin创build一个AD用户密码的数据库,但我没有运气。
虽然您可以将密码硬编码到自动化中,但更正确的Kerberos方法是为主体创build一个密钥表,然后使用它进行身份validation。 kinit支持使用-k -t <keytab-path>选项从密钥表进行身份validation。
密钥表的主要优点在于它将凭证隔离在一个单独的文件中,并且可以由各种Kerberos软件直接使用(因此您不必添加代码即可从单独的文件中读取密码)。 它也可以用标准命令创build(使用AD KDC,使用ktpass )。 如果你有一个Linux KDC,还有一些更多的优点,例如容易随机存储在密钥表中的密钥,而不是使用较弱的密码。
愚蠢的我,你可以简单地使用下面的命令:
echo "password" | kinit aduser@REALM