加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

MIT Kerberos for Windows下的多领域和多个TGT

发布时间:2021-03-08 20:18:14 所属栏目:Windows 来源:网络整理
导读:我的本地计算机使用 Windows 7 Pro,属于领域LR,由AD服务器管理.我连接到该领域的网络时登录到我的计算机.我可以使用MIT Kerberos for Windows ver查看TGT. 4.0.1. 我想访问外国领域的资源,FR. LR和FR之间没有Kerberos信任,但它们允许彼此之间的TCP流量.我

我的本地计算机使用 Windows 7 Pro,属于领域LR,由AD服务器管理.我连接到该领域的网络时登录到我的计算机.我可以使用MIT Kerberos for Windows ver查看TGT. 4.0.1.

我想访问外国领域的资源,FR. LR和FR之间没有Kerberos信任,但它们允许彼此之间的TCP流量.我通过KDC(Red Hat IdM / FreeIPA)请求FRT for FR,并在受到挑战时成功输入我的密码.同样,我可以使用MIT Kerberos for Windows ver查看TGT. 4.0.1.我现在可以通过SSH访问FR中的资源而不需要输入密码,尽管源自LR.

问题是当我获得FR的TGT时,我的LR主体的TGT消失了.在MIT Kerberos中只能看到FR TGT.如果我锁定我的电脑,然后用我的密码解锁,现在FR TGT已经消失,取而代之的是新的LR TGT.

似乎MIT Kerberos for Windows一次只能存储一个TGT.每个TGT完全适用于所有意图和目的的领域.如何配置MIT Kerberos让我一次拥有两个TGT,每个领域一个?是否可以使用多个客户端实例“划分”,每个客户端实例指向不同的KRB5_CONFIG和本地密钥表?如果我不能,是否有一个客户端Kerberos 5的替代Windows实现,即使没有跨域信任?

附: – 我不想要信任.无法获得信任.

更新:我之前遗漏了一些细节,因为我认为它可能会混淆这个问题.但根据布拉德的回答,这可能是有道理的.我希望大多数本地软件都使用Kerberos的内置Windows实现,并始终使用LR keytab.

但是,像我这样的高级用户在Cygwin下使用heimdal来SSH到FR.我希望通过Cygwin DLL的任何东西都能使用heimdal并且永远不会看到LR TGT(它没有,至少在默认情况下不会这样).我明确地说,继续前进.

对于非高级用户来说,棘手的部分是我必须支持谁不使用Cygwin但使用PuTTY. PuTTY允许您指定要使用的GSSAPI实现的库路径和DLL.例如,我正在配置SSH会话以使用MIT Kerberos DLL而不是内置的Windows DLL.我希望有一个DLL,从来没有试图找到LR TGT(像heimdal)或允许多个领域的多个TGT.它没有像MIT Kerberos那样的GUI窗口,但它有所帮助.

好吧,我不会说它不能用Windows完成,但我会说限制是基于会话的.那么问题是,对于每个会话,Windows缓存一个票证.当您锁定计算机然后解锁时,将启动另一个会话并从KDC请求新密钥.当您再次注销计算机时会发生同样的事情.此方法实际上也是如何确定服务器会话的用户权限,这意味着可以缓存密钥/票证,以便您启动的每个服务器资源或会话都不必询问您的密码,但我从未听说过/读取/研究它以便能够缓存多个.

现在,您可能已经知道,鉴于您的知识已经显示在您的问题中,所以我会说,基于Windows存储您在发布TGT时获得的密钥并且基于会话的事实,我不会认为只有Windows才有可能. MIT Kerberos for Windows可能有一种方法可以在一个用户下启动两个会话,但即使这样,我也不确定您访问的资源如何知道要使用哪个票证/密钥对.那有意义吗?

Please see this for a description of how Windows stores TGTs/key pairs.

顺便说一句非常好的问题.

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读