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

PAM Winbind过期密码
EN

Server Fault用户
提问于 2013-11-07 16:55:10
回答 1查看 1.8K关注 0票数 3

我们已经在RHEL上安装了Winbind/Kerberos,用于AD身份验证。但是,我注意到,当密码过期时,我们会收到警告,但仍会授予shell访问权限。

处理这件事的正确方法是什么?我们能告诉PAM在看到密码过期后关闭会话吗?

示例:

代码语言:javascript
复制
login as: ad-user
ad-user@server.domain.com's password:
Warning: password has expired.
[ad-user@server ~]$ 

/etc/am.d/system的内容-auth:

代码语言:javascript
复制
auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        sufficient    pam_krb5.so use_first_pass
auth        sufficient    pam_winbind.so use_first_pass
auth        required      pam_deny.so

account     [default=2 success=ignore] pam_succeed_if.so quiet uid >= 10000000
account     sufficient    pam_succeed_if.so user ingroup AD_Admins debug
account     requisite     pam_succeed_if.so user ingroup AD_Developers debug
account     required      pam_access.so
account     required      pam_unix.so broken_shadow
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     [default=bad success=ok user_unknown=ignore] pam_krb5.so
account     [default=bad success=ok user_unknown=ignore] pam_winbind.so
account     required      pam_permit.so

password    requisite     pam_cracklib.so try_first_pass retry=3
password    sufficient    pam_unix.so md5 shadow nullok try_first_pass use_authtok
password    sufficient    pam_krb5.so use_authtok
password    sufficient    pam_winbind.so use_authtok
password    required      pam_deny.so

session     [default=2 success=ignore] pam_succeed_if.so quiet uid >= 10000000
session     sufficient    pam_succeed_if.so user ingroup AD_Admins debug
session     requisite     pam_succeed_if.so user ingroup AD_Developers debug
session     optional      pam_mkhomedir.so umask=0077 skel=/etc/skel
session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
session     optional      pam_mkhomedir.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so
session     optional      pam_krb5.so
EN

回答 1

Server Fault用户

发布于 2013-11-08 01:06:53

我们需要知道您要登录的用户的数字uid,才能确定。接下来的是猜测。

授权锁定通常发生在account堆栈中,因此让我们从那里开始。终止模块堆栈的条目立即受到怀疑。我在这里没有看到done,所以我们需要关注的是带有sufficient的行。这使我们能够集中精力在堆栈顶部的这些行上:

代码语言:javascript
复制
account     [default=2 success=ignore] pam_succeed_if.so quiet uid >= 10000000
account     sufficient    pam_succeed_if.so user ingroup AD_Admins debug
account     requisite     pam_succeed_if.so user ingroup AD_Developers debug
account     required      pam_access.so
account     required      pam_unix.so broken_shadow
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
  • 如果数值uid是<= 10000000,并且是AD_Admins组的成员,帐户堆栈将以成功行2终止。
  • 如果用户在/etc/passwd中除了LDAP之外还有一个条目,帐户堆栈将在第6行成功终止。
  • 如果数值uid < 500,帐户堆栈将在第7行成功终止(这不太可能是由于>= 500在auth堆栈中签入而导致的罪魁祸首)

所有上述方案都将导致帐户堆栈在pam_krb5.sopam_windbind.so的会计检查之前终止。

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

https://serverfault.com/questions/551418

复制
相关文章

相似问题

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