首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows中创建与kinit一起使用的keytab

在Windows中创建与kinit一起使用的keytab
EN

Stack Overflow用户
提问于 2012-06-08 07:39:36
回答 1查看 22.1K关注 0票数 6

我正在写一个pGina插件,以便在登录时从我们的KDC获得AFS令牌和Kerberos TGT,同时我注意到kinit的一个‘功能’是它不会让你提供任何输入,除非它来自键盘,我的想法是只重定向标准输入……

有人建议对主体使用密钥表文件,这似乎非常简单,直到我意识到我只在linux上使用kutil,并且在Windows版本的ktpass.exe上遇到了困难。我已经反复尝试使用大量参数组合来创建keytab,但到目前为止完全没有成功,我发出的当前命令是:

ktpass /out key.tab /mapuser user$@MERP.EDU /princ user.merp.edu@MERP.EDU /crypto RC4-HMAC-NT /ptype KRB5_NT_PRINCIPAL /pass mahpasswordlol /target MERP.EDU

不幸的是,所有这些输出都是

Using legacy password setting method

FAIL: ldap_bind_s failed: 0x31

根据我的研究,这是一个身份验证/加密问题,我已经尝试过其他DES设置,但这似乎也不起作用……有没有人有经验/想法知道这是如何工作的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-22 10:45:35

ktpass.exe确实很糟糕;我不使用它。相反,只需在Unix上使用ktutil使用密码独立创建匹配的密钥表,例如:

代码语言:javascript
复制
$ ktutil
ktutil:  addent -password -p foo@BAR -k 1 -e aes128-cts-hmac-sha1-96
Password for foo@BAR:
ktutil:  l
slot KVNO Principal
---- ---- ---------------------------------------------------------------------
   1    1                                  foo@BAR
ktutil:  wkt /tmp/zz
$ klist -ek /tmp/zz
Keytab name: WRFILE:/tmp/zz
KVNO Principal
---- --------------------------------------------------------------------------
   1 foo@BAR (aes128-cts-hmac-sha1-96)

LDAP绑定错误表明ktpass无法对域控制器进行身份验证;发生这种情况时,您是否登录到域帐户?它必须是一个域帐户,而不是一个本地帐户(而且它必须被授权才能对AD进行必要的更改,尽管缺少这一点将导致权限错误而不是绑定)。

FWIW,我们对此采取了不同的方法:我们在Unix和AD领域之间使用跨域信任。然后,用户在登录时获得的AD TGT也足以获取Unix领域中的服务的凭据;例如,我可以使用PuTTY通过SSH进入Unix主机,使用Firefox/Chrome/IE对Unix web服务(Apache/mod_auth_kerb)进行身份验证,等等。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10941325

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档