在服务器上设置SSH身份验证时,Kerberos密钥表文件的原因是什么?

时间:2017-03-30 07:22:03

标签: linux ssh kerberos pam sssd

我还没有真正的Kerberos经验,但我正在尝试使用sssd在我的一台服务器上使用AD设置SSH身份验证。我已经按照sssd文档here上的说明进行操作,但是我很难理解为什么我需要一个keytab文件来设置它?

我最近一直在阅读有关Kerberos的内容,而且当服务器需要在没有用户交互或需要实施SSO的情况下向AD进行身份验证时,您似乎只需要在服务器上创建keytab文件(当用户请求该服务的票证时)。

我只是希望我的用户在通过SSH登录时输入用户名/密码,并让sssd针对AD对此用户进行身份验证,并为他们创建TGT票证。有趣的是 - 即使我没有设置sssd并只设置kerberos方面我可以运行kinit而且我得到一张票!

所以我的问题是:我可以使用sssd设置SSH身份验证而不在服务器上生成keytab文件吗?如果不是那么为什么不呢?

1 个答案:

答案 0 :(得分:0)

主题行中的问题" 在服务器上设置SSH身份验证时,Kerberos密钥表文件的原因是什么?"归结为单行答案:它允许对目录服务器进行Kerberos单点登录身份验证,方法是将入站Kerberos服务票证解密,并告知"告诉"谁是用户。至于你的另一个问题," 我可以使用sssd设置SSH身份验证而不在服务器上生成keytab文件吗?",答案是肯定的,你可以。但是,每当您连接到SSH服务时,系统都会提示您输入用户名或密码,除非您选择将密码缓存在您可能用于连接的任何SSH实用程序中。在这种方法中,缓存密码并不被视为"单点登录"。

有关其他参考,您可以在Microsoft Technet上阅读有关Kerberos键盘的文章:Kerberos Keytabs – Explained。我经常回头根据我在这个论坛上看到的问题进行编辑。