Articles of kerberos

Kerberos – 最大可更新的生命周期

我试图将发行的Kerberos票据的最大可更新生命周期设置为365天,但是,我所做的以下更改似乎被忽略: 在/etc/krb5.conf里面: [libdefaults] … renew_lifetime = 365d … [appdefaults] pam = { … renew_lifetime = 365d … } 在一个kadmin会议: kadmin: modprinc -maxrenewlife 365day krbtgt/REALM kadmin: modprinc -maxrenewlife 365day stefan 然后我开始通过kinit发出一张新票: $ kinit -r 365d 但是,由此产生的票只有7天的续订期限: $ klist Ticket cache: FILE:/tmp/krb5cc_1000 Default principal: stefan@REALM Valid starting Expires Service principal 2017-03-09 21:15:31 2017-03-10 09:15:31 krbtgt/REALM@REALM renew until […]

如何更改ccachetypes的MIT Kerberos

MIT Kerberos文档列出了七种不同的存储Kerberos证书的方法: API DIR 文件 KCM 钥匙圈 记忆 MSLSA 目前,我的Kerberos安装程序正在将凭据存储在/tmp目录中的一个文件中。 在我的krb5.conf文件中, ccache_type选项默认设置为4: # The following krb5.conf variables are only for MIT Kerberos. krb4_config = /etc/krb.conf krb4_realms = /etc/krb.realms kdc_timesync = 1 ccache_type = 4 forwardable = true proxiable = true 在关于krb5.conf文件的MIT Kerberos文档中,它提到了ccache_type选项: 此参数确定由kinit或其他程序创build的凭证cachingtypes的格式。 默认值是4,表示最新的格式。 可以使用较小的值来兼容与同一主机上的凭证caching交互的非常旧的Kerberos实现。 似乎ccache_type选项的值不对应于文档列出的七个ccachetypes。 由于4指定使用“最新的格式”而不是“KCM”。 因此,我的问题是: 如何将Kerberosconfiguration为使用不同的ccachetypes,例如密钥环或内存?

分布式服务的Kerberos主体名称

Kerberos(v5)主要名称的两种典型forms似乎是: username[/instance]@REALM service/fully-qualified-domain-name@REALM 我也看到了这样的可能存在于多个端口上的服务: service/fully-qualified-domain-name:port@REALM 我有一个现在正在Kerberized的内部应用程序,并希望了解如何命名服务主体。 该服务是分布式的,几个子域中的每个子域中的几台机器上运行着多个实例。 例如,假设我的域名是zombo.com ,并且我的Kerberized服务“tenaciousd”在机器“www1”到“www5”上运行。 此外,每台机器在知名端口上有10个实例,比如25001至25010。 所以我有五十个服务器实例,基本上都是一样的,这让我平衡负载,逐渐部署新版本,等等。 现在,我应该如何在Kerberos中命名服务主体? 运行该服务的每个主机是否应该有一个,这似乎是最常见的forms? tenaciousd/[email protected] tenaciousd/[email protected] tenaciousd/[email protected] tenaciousd/[email protected] tenaciousd/[email protected] 或者更好的做法(以及为什么)每个服务实例有一个服务主体? tenaciousd/www1.zombo.com:[email protected] tenaciousd/www1.zombo.com:[email protected] tenaciousd/www1.zombo.com:[email protected] … tenaciousd/www5.zombo.com:[email protected] 最后,怎么只有一个服务负责人,这似乎更简单,但不太常见? [email protected] 如果重要,Kerberized服务(和客户端)使用Cyrus SASL,GNU GSSAPI和MIT Kerberos 5.除了服务名称外,SASL API还接受“完全限定的域名”参数,但是我怀疑这是因为它支持不仅仅是Kerberos,我们也许可以传递除了实际的FQDN以外的东西。 我发现的大部分文档都假定每个服务都在一个域中的单个主机上运行,​​或者至less客户端关心的是他们连接的服务实例。 就我而言,从客户的angular度来看,服务几乎是一样的,那么这里最好的做法是什么呢?

将Linux MIT Kerberos与Windows 2003 Active Directory链接起来

问候,我想知道如何将Linux MIT Kerberos与Windows 2003 Active Directory连接起来,以实现以下目标: 用户[email protected]尝试loginApache网站,该网站与Linux MIT Kerberos在同一台服务器上运行。 如果用户通过该名称或领域了解用户,则Apache模块首先询问本地Linux Kerberos。 MIT Kerberos发现它不负责这个领域,并将请求转发给Windows 2003 Active Directory。 Windows 2003活动目录积极回应,并将这些信息提供给Linux MIT Kerberos,然后将这些信息告诉Apache模块,授权用户访问其文件。 这是一个形象的情况: 我已阅读有关此问题的文档通常不同于此问题: 一些人讨论了将MIT Kerberos与Active Directory连接起来以访问Active Directory服务器上的资源; 而另一个使用链接通过 Windows 2003 Active Directory向Windows KerberosvalidationWindows用户。 (我的问题是相反的。) 所以我的问题归结为: 是否有可能让Linux MIT Kerberos服务器通过对Active Directory域的请求,然后让它接收到答复并将其提供给请求的服务? (尽pipe如果请求服务和Windows 2003 Active Directory直接通信,这不是问题。) build议和build设性的批评非常感谢。 🙂 后期编辑 我有这个问题。 我已经成功configurationmod_auth_kerb与MIT Kerberos(在我的情况下,EINDWERK.LAN)进行协商,如果我在Ubuntu上用kinit获取本地MIT Kerberos的票据,我可以浏览到Apachenetworking服务器,login。 但是,如果我从Active Directory服务器(在我的情况下是WINDOWS.LAN)获取票据,并冲浪到Apachenetworking服务器,则会收到login提示。 通过Wireshark查看数据包,看起来Apache Web服务器错误地尝试使用WINDOWS.LAN的EINDWERK.LAN的TGT。 我已经上传了Wireshark输出: Active […]

映像Windows工作站上的RPCSS Kerberos问题

虽然做了一些不相关的故障排除(至less我认为是这样,共享打印机的问题),我遇到了一系列让我担心的事件日志条目。 Machine Name: labcomputer82 Source: Security-Kerberos Event ID: 4 Event Description: Kerberos客户端从服务器labcomputer143 $收到一个KRB_AP_ERR_MODIFIED错误。 使用的目标名称是RPCSS / imagemaster4.ad.domain.edu。 这表明目标服务器无法解密客户端提供的票证。 当目标服务器主体名称(SPN)在目标服务正在使用的帐户以外的帐户上注册时,可能会发生这种情况。 请确保目标SPN仅在服务器使用的帐户上注册,并且仅在其上注册。 当目标服务对目标服务帐户使用不同于Kerberos密钥分发中心(KDC)对目标服务帐户的密码时,也会发生此错误。 请确保服务器和KDC上的服务都更新为使用当前密码。 如果服务器名称不完全合格,并且目标域(AD.DOMAIN.EDU)与客户端域(AD.DOMAIN.EDU)不同,请检查这两个域中是否有相同名称的服务器帐户,或使用完全合格的名称来标识服务器。 此消息中使用了三个机器名称。 它是在labcomputer82上生成的,它试图与另一个名为labcomputer143的实验室工作站进行通话,而有问题的服务(RPCSS)是指这台机器的机器名称(也可能是labcomputer的机器名称),我不确定)。 让我labcomputer82是,名为labcomputer82的机器正在尝试使用RPCSS/imagemaster4.ad.domain.edu的SPN。 AD中计算机对象上的SPN属性看起来很好。 它应该有所有的名字。 这些机器使用Ghost映像,并且(至less在这个特定的情况下)sysprep 没有被使用。 在我们的AD域中超过3000个计算机对象中,大约有1,700个是计算机实验室席位,通常是成像的,而到9月为止,大部分都是使用Ghost / Profile-Copy方法而不是Ghost / sysprep方法成像。 。 如果这个错误报告是Windows安静地工作的一个主要问题,也许这些机器上的Kerberos被破坏了,并且它回退到NTLMv2,我想知道,所以我可以给我的驱动器增加压力,以便sysprep通过。

任何使跨领域login不区分大小写的方法?

我已经在MIT Kerberos和AD之间build立了一个演示跨域 。 只要机器configuration正确,用户就可以正常login,并且用户知道该领域全是大写和区分大小写。 我有一种感觉,即使我们经常超出正常范围,一旦我们把这个推出给用户,也会有很多人记得这一点。 有什么办法让Windows 7的login界面变得更有用吗? 像自动大写的领域? 或自动默认为我们的Kerberos领域的用户身份validation?

在Win / AD中,kerberosauthentication是否要求服务帐号是一样的?

我试图找出一个KRB5KDC_ERR_BADOPTION(13)的原因,我正在看Wireshark跟踪。 我已经设置了一个SPN将xxx / server.fqdn:port与在目标服务器上运行xxx服务的域帐户关联(让我们称之为domain \ target)。 服务器服务将作为代理运行在不同的服务帐户(例如域\委托)上。 这是允许的吗? 或者所有的服务都需要在同一个服务帐号下运行(即目标服务和中间人服务使用的服务帐号都使用相同的AD服务帐号运行,同时为这两个服务设置了适当的SPN关联到同一个AD服务帐户)

Kerberos将约束委派给域控制器

设置 : 森林function级别:Windows 2003 所有DC – Windows 2003 64位SP2 要求 : Citrix服务器希望将Kerberos委派用于SSO目的。 他们希望从Citrix演示服务器向CIFS和LDAP服务的本地DC创build受Kerberos约束的委派。 我担心这将允许演示服务器上的pipe理员模拟域pipe理员对DC上的LDAP服务,并在AD中进行未经授权的更改。 问题 : 我的假设是否正确? 如果是的话,这样做会容易多less? 允许这种代表团在该地点维持当地区议会的运作方面有什么影响? (我们在全球拥有200多个DC,在需要代表团的地方有10个DC)

Windows 7系统不会与MIT Kerberos服务器通信

我已经在Debian服务器上安装了MIT Kerberos 1.10,并且很高兴地让我的Debian客户端进行身份validation。 然而,让我的Windows 7机器执行相同的操作却遇到了一些麻烦。 我用ksetup来configuration机器如下: default realm = EXAMPLE.COM (external) EXAMPLE.COM: (no kdc entries for this realm) Realm Flags = 0x5 SendAddress Delegate Mapping all users (*) to a local account by the same name (*). 这也改变了系统的名称和工作组设置: Computer name: lysander Full computer name: lysander.EXAMPLE.COM Workgroup EXAMPLE.COM 根据文档,如果没有KDC或密码条目的一个领域,Windows将使用DNS,所以我也有以下条目configuration: _kerberos._udp.example.com. 300 SRV 10 100 88 kdc.example.com. […]

VM镜像,包括可直接使用的Kerberos服务器?

我实现了一个开源软件的客户端Kerberos支持,我想testing它。 有没有一个虚拟机映像可以快速启动,这将包括一个正常工作的Kerberos环境,以便我可以testing我的客户端应用程序? TurnkeyLinux域控制器分布几乎是完美的,并作为一个虚拟机,但它只有域控制器,而不是Kerberos的一部分。