如何为kinit配置默认主体(获取Kerberos票证)?


9

kinit用于获取Kerberos票证时,我已将其配置为使用默认领域,例如GERT.LAN通过编辑/etc/krb5.conf

[libdefaults]
        default_realm = GERT.LAN

太好了,因为我不必一直在命令行上提供这些信息。

⟫ kinit
gert@GERT.LAN's Password:

但是,我的本地用户名gert与远程用户名不匹配gertvdijk。现在,我仍然必须提供完整的主体名称作为参数。如果这只是kinit,我可以创建一个bash别名,但是似乎有更多的Kerberos工具尝试使用我的本地用户名。例如,Kredentials不允许我使用默认主体以外的其他主体。

因此,基本上,我想要在本地用户gert和远程主体之间创建一个映射gertvdijk@GERT.LAN

具有讽刺意味的是,当通过PAM使用更复杂的设置时,我能够实现这一目标。在krb5.conf

[appdefaults]
        pam = {
                mappings = gert gertvdijk@GERT.LAN
        }

但是我不想使用Kerberos PAM模块,因为我已经多次锁定自己,因为我认为Kerberos服务器无法访问,而我正在尝试输入本地密码...

因此,长话短说,有没有一种方法可以配置默认主体或从本地用户名映射?

Answers:


4

可以在〜/ .k5identity中设置默认主体

$ cat .k5identity
user@EXAMPLE.COM

然后,kinit将其用作默认标识。


甜!此外,更配置是可能的我看到:web.mit.edu/kerberos/krb5-devel/doc/user/user_config/...
gertvdijk

只需在我的机器上设置kerberos,然后指向kdc进行测试即可。对我不起作用。:(
Mahesh

与主要作品一起设定领域价值。
Mahesh

2
在实践中对我不起作用;仍然选择gert@GERT.LAN作为主体。我正在使用heimdal-clients提供给我的包裹/usr/bin/kinit。MIT版本似乎不适用于Windows域,因此我无法对其进行测试。
gertvdijk 2014年

到目前为止,它也无法使用MIT krb5的kinit进行工作。kinit不会考虑此文件。我相信文档中提到这是用于请求服务的票证,而不是在请求初始TGT时。笨蛋
gertvdijk

0

使用默认领域,并在您的用户中使用用户映射,/etc/krb5.conf如下所示:

[libdefaults]
    default_realm = GERT.LAN

[realms]
    GERT.LAN = {
        auth_to_local_names = {
            gert = gert.vandijk
        }
    }

现在kinit/ kpasswd将以本地用户身份调用时将其映射并将其映射到域用户名。


嗯,这在某种程度上无法重启。稍后将进一步调查。
gertvdijk
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.