我们已在PAM中设置帐户政策,以遵循RHEL7 STIG指南http://rhel7stig.readthedocs.io/en/latest/。我们有一些服务帐户,其密码为空,并使用SSH密钥登录。 60天后,服务帐户密码过期并被禁用。这不是我期望的无密码帐户的行为,我不认为密码过期将适用于无密码帐户。如何告诉PAM不要使无密码帐户过期?
在login.defs
中PASS_MIN_DAYS 1
PASS_MAX_DAYS 60
PASS_WARN_AGE 7
FAIL_DELAY 4
在/ etc / default / useradd
中INACTIVE=0
答案 0 :(得分:1)
由于系统并不关心这些帐户是否有密码。您必须将PASS_MAX_DAYS设置为99999或者似乎适用于这些帐户。
答案 1 :(得分:1)
看起来我需要将这些帐户创建为系统帐户。来自useradd手册页......
系统用户将在/ etc / shadow - https://linux.die.net/man/8/useradd
中创建没有老化信息
示例命令。
useradd testuser --system
如果您正在使用Ansible,则可以在用户模块中指定系统。
- user:
name: testuser
group: testuser
system: yes
结果在/ etc / shadow中可见。注意testuser没有密码最大年龄条目。
[root@localhost ~]# useradd testuser --system
[root@localhost ~]# grep testuser /etc/shadow
testuser:!!:17417::::::
[root@localhost ~]# grep ryan /etc/shadow
ryan:*:18976:1:60:7:0::