密码过期时间设置

修改 /etc/login.defs 中的选项

PASS_MAX_DAYS 99999 代表不过期 我们将该值改为 90

密码复杂度设置

需要安装 pam 扩展包 libpam-pwquality 或 libpam-cracklib 。 这里选择安装 libpam-cracklib

sudo apt update

sudo apt install libpam-cracklib

查看是否安装成功

dpkg -l libpam-cracklib

安装成功后 /etc/pam.d/common-password 文件会新增一行配置策略

修改 /etc/pam.d/common-password 的配置策略 以三级等保的要求为例,要求如下(如值为 -1 代表不限制) 长度 8 位以上 (minlen=8) 数字 (dcredit=1)digital 大写字母 (ucredit=1)uppercase 小写字母 (lcredit=1)lowercase 特殊字符 (ocredit=1)other 最终配置如下

password requisite pam_cracklib.so retry=5 minlen=8 dcredit=1 ucredit=1 lcredit=1 ocredit=1

设置拒绝策略

首先确定是否安装了 pam_tally2 模块

find /lib /lib64 /usr/lib /usr/lib64 -name "pam_tally2.so"

修改 /etc/pam.d/common-auth 文件,在 pam_unix.so 行下加入一行,以三级等保为例,错误 5 次锁定 5分钟

auth required pam_tally2.so deny=5 unlock_time=300

设置登出策略

自动登出策略已经设置了 5m ,来自配置文件 /etc/ssh/sshd_config ClientAliveInterval 和 ClientAliveCountMax 选项控制 关于 libpam-pwquality 或 libpam-cracklib

ibpam-pwquality和libpam-cracklib是两个常用的PAM模块,用于密码复杂度检查和密码策略的实施。它们有一些共同点和区别,如下所述:

共同点:

1. 目的:两个模块都旨在提供密码质量检查和密码策略的功能,以确保用户设置的密码符合一定的安全要求。

2. 功能:它们都可以用于检查密码的长度、字符组合和其他复杂度要求,以及对常见或弱密码的检查。

区别:

1. 底层库:libpam-pwquality使用 PAM 库,而 libpam-cracklib使用 CrackLib 库。这两个库在密码复杂度检查和密码字典检查方面具有不同的实现方式和功能。

2. 配置文件:libpam-pwquality使用 /etc/security/pwquality.conf 文件来配置密码质量参数,而 libpam-cracklib使用 /etc/pam.d/common-password 文件中的参数来配置密码复杂度要求。

3. 功能特点:libpam-pwquality相对较新,提供了更多的灵活性和定制选项。它可以检查密码的字典单词、简单模式(如重复字符)以及密码中的用户名等。而libpam-cracklib则主要关注于密码长度、字符组合和基于字典的检查。

4. 软件依赖:libpam-pwquality通常需要安装额外的依赖软件包,如libpwquality,而libpam-cracklib通常是内置在系统中的。

推荐阅读

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。