乐趣区

关于linux:Linux系统中如何强制用户定期修改密码

只管 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 仓库)
退出移动版