使用SSH获取Kerberos票证

我希望在获得全自动login解决scheme时获得Kerberos 5票证。

通常,你首先使用kinit,然后使用ssh

> kinit user@DOMAIN user@DOMAIN's Password: (enter password) > ssh user@host (successful login) 

我想简单地运行ssh user @ host并自动检查Kerberos票证。 如果不在那里,我想要它得到一张票,然后login。

 > kdestroy > ssh user@host user@DOMAIN's Password: (enter password) (successful login) (log off of host) > klist (show ticket info) 

我希望这是在每个主机的基础上configuration的,因为不是每个login的主机都支持Kerberos。

我假设你正在使用OpenSSH,在这种情况下,它不会那样工作。 此外,获得TGT被认为是主authentication程序的工作,客户只需要参与使用TGT为客户获得服务票据,所以如果项目确实添加了这个function,那么看起来会很奇怪导致一个主题不断混淆,人们已经很困惑了。

也就是说,你实际上只需要编写一个包含ssh和klist / kinit的脚本,或者直接使用脚本,或者在脚本中使用别名“ssh”。 一旦你正在执行你写的脚本,你可以根据你想要的任何标准去执行。

如果您在PAM链中使用pam-krb5 (在正常密码之前),这实际上是有些可能的。 这将自动检查您的用户名和密码反对Kerberos并试图获取票。

这也适用于ssh如果你有PAMconfiguration正确(即条目是common-authcommon-session )。 因此,任何支持Kerberoslogin的主机也将在ssh使用ssh用户名的主体来授予ssh票证。