只管 Linux 被认为是一个平安的操作系统,但它的安全性与登录用户的明码强度成等比关系。设置明码策略以确保用户设置了高强度的明码。作为 Linux 用户,您应该留神执行这些策略,以避免产生违规行为。你必定不心愿用户配置弱或易猜的明码,这些明码能够在几秒钟内被黑客强行破解。
在本文中,咱们将介绍如何在 Linux 中施行明码策略。咱们将介绍明码策略的施行,如明码有效期、明码复杂度和明码长度。
在 Ubuntu / Debian 执行明码策略
执行明码策略次要有两种办法,让咱们来具体理解一下。
(1) 配置明码的最长应用天数
首先,您能够配置一个明码策略,要求用户在肯定天数后更改明码。最佳实际表明,应该定期更改明码,以放弃歹意用户的均衡,并使他们更难侵入您的零碎。这不仅实用于 Linux,也实用于其余零碎,如 Windows 和 macOS。
要在 Debian / Ubuntu 中实现这一指标,您须要批改 /etc/login.defs 文件,找到 PASS_MAX_DAYS 属性,默认状况下,该工夫设置为 99999 天,如下所示。
您能够将其批改为正当的持续时间,例如 30 天。超过 30 天后,您将被迫创立另一个明码。
(2) 应用 pam 配置明码复杂度
确保明码满足肯定的复杂性同样至关重要,进一步挫败黑客使用暴力浸透您的零碎。
一般来说,强明码应该是大写、小写、数字和特殊字符的组合,长度至多应该是 12-15 个字符。
要在 Debian / Ubuntu 中执行明码复杂性,您须要装置 libpam-pwquality 软件包,如下所示:
$ sudo apt install libpam-pwquality
从您要设置明码策略的中央拜访 /etc/pam.d/common-password 文件,默认状况下,如图所示:
找到上面的行
password requisite pam_pwquality.so retry=3
向该行增加以下属性
minlen=12 maxrepeat=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 difok=4 reject_username enforce_for_root
整行代码应该如图所示
让咱们来具体阐明这些指令的含意:
- retry=3: 退出并返回谬误之前提醒用户 3 次
- minlen=12: 明码不能少于 12 个字符
- maxrepeat=3: 明码中最多只能蕴含 3 个反复字符
- ucredit=-1: 明码中至多蕴含一个大写字符
- lcredit=-1: 明码中至多蕴含一个小写字符
- dcredit=-1: 明码中至多蕴含一个数字字符
- ocredit=-1: 明码中至多蕴含一个特殊字符
- difok=3: 新旧明码至多三处不同
- reject_username: 如果明码由用户名的失常模式或相同模式组成,该选项将回绝明码
- enforce_for_root: 确保即便是 root 用户也恪守明码策略
在 CentOS / RHEL 中执行明码策略
要在 CentOS / RHEL 中实现这一指标,您须要批改 /etc/pam.d/system-auth 或者 /etc/security/pwquality.conf 文件
关上配置文件
$ sudo vim /etc/pam.d/system-auth
找到以下行
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
增加以下选项
minlen=12 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 enforce_for_root
整行代码应该如图所示
保留并退出文件
当您尝试应用不恪守强制策略的弱明码创立用户时,将会呈现如下谬误
我的开源我的项目
- course-tencent-cloud(酷瓜云课堂 – gitee 仓库)
- course-tencent-cloud(酷瓜云课堂 – github 仓库)