首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >kinit密码过期警告

kinit密码过期警告
EN

Server Fault用户
提问于 2022-03-05 13:47:09
回答 1查看 389关注 0票数 0

我有一个Ubuntu桌面客户端加入到一个2008 R2域。

我需要在Linux上使用"kinit“命令来确定用户密码何时过期。这是我的方式,因为其他脚本运行在系统上,所以不能/不想改变这种方法。

然而,据我所见,kinit返回密码过期警告7天或更低。我能改变这种态度吗?是什么使kinit返回7天或更短时间内的密码过期警告信息?

EN

回答 1

Server Fault用户

发布于 2022-03-11 02:41:19

它可能取决于Active Directory中的设置--它设置在组策略中:交互式登录:提示用户在过期前更改密码。

所以请向AD管理员查询。可以将此策略限定为OU,因此,如果您的帐户驻留在特定的OU中,则可以在其中设置更长的警告。至少在技术上是可能的。可能存在操作上的限制。

另外,机器是通过sssd连接起来的吗?值得阅读这篇文章,看看sssd.conf中是否有什么东西可以覆盖从AD发送的值。如果它根本没有在sssd.conf中设置,那么它将只是继承AD发送的内容。https://access.redhat.com/articles/3027531

如果域名管理员说它被设置为7天,并且不会改变,那么还不清楚您是否能够配置sssd.conf来提供更长的警告间隔--我怀疑它是否能够以这种方式覆盖AD。

或者,您可以对AD用户帐户执行LDAP查询,并获取一个名为msDS-UserPasswordExpiryTimeComputed的属性--该属性的值超过了Windows日期。

要计算Linux系统上的日期,Windows时代的日期是1601-01-01T00:00:00Z,即*nix时代(1970-01-01T00:00:00Z)之前的11644473600秒。Windows滴答以100纳秒为单位。因此,对于一个简单的计算:

代码语言:javascript
复制
$tickInterval = 10000000
$unixEpochDiff = 11644473600
# interval captured from msDS-UserPasswordExpiryTimeComputed
$ADPasswordExpiryTime = 132985454614249065 
$unixTime = ($userPasswordExpiryTime / $tickInterval) - $unixEpochDiff

目前,我无法从基于Linux的系统测试LDAP查询到AD,但如果没有其他帮助的话,这是值得一试的。

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

https://serverfault.com/questions/1095411

复制
相关文章

相似问题

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