linux如何设置密码规则

准备工作:

安装PAMracklib模块可以提供额外的密码验证功能。

在Debian、Ubuntu或LinuxMint系统上:

$sudoapt-getinstalllibpam-cracklib

CentOS、Fedora、RHEL系统默认安装了cracklibPAM模块,因此无需在这些系统上执行上述操作。

为了强制执行密码策略,我们需要修改/etc/pam.d目录中的PAM配置文件。
政策一经修改,立即生效。

注意:本教程中的密码策略仅对非root用户有效,对root用户无效。

禁止使用旧密码

“密码”和“pam_unix.so”字段通过“记住”找到'""Extension=5",表示最近使用的5个密码被阻止(使用过的密码将保存在/etc/security/opaswd下)。

在Debian、Ubuntu或LinuxMint系统上:

$sudovi/etc/pam.d/common-password

在CentOS、Fedora和RHEL系统上:

$sudovi/etc/pam.d/system-auth

设置最小字长密码

找到“password”和“pam_cracklib.so”,并追加到“minlen=10”所在行,表示最小密码长度为(10-密码数)物种)。
这里的“类型数”表示不同字符类型的数量。
PAM提供4种字符作为密码(大写字母、小写字母、数字和标点符号)。
如果您的密码使用全部四种字符类型并且最小值设置为10,则允许的最小密码长度为6个字符。

在Debian、Ubuntu或LinuxMint系统上:

$sudovi/etc/pam.d/common-password

在CentOS、Fedora和RHEL系统上:

$sudovi/etc/pam.d/system-auth

设置单词的复杂度密码

找到“Password”和“pam_cracklib.so”字段,并在它们后面附加一行“ucredit=-1lcredit=-2dcredit=-1ocredit=-1”,它表示密码必须至少包含1个大写字母(ucredit)、2个小写字母(lcredit)、1个数字(dcredit)和1个标点符号(ocredit)。

在Debian、Ubuntu或LinuxMint系统上:

$sudovi/etc/pam.d/common-password

在CentOS、Fedora和RHEL系统上:

$sudovi/etc/pam.d/system-auth

设置单词的有效期密码

编辑文件/etc/login.defs设置当前密码的有效期,具体变量如下:

$sudovi/etc/login.defs

这些设置要求用户每6个月更改一次密码,并且会提前7天提醒用户:他们自己的密码即将结束。

如果您想为每个用户设置不同的密码期限,请使用change命令。
以下命令可以显示用户的密码到期日期:

$sudochage-lxmodulo

默认情况下,用户名是Passwords不,它永远不会过期。

以下命令用于修改xmodulo用户的密码期限:

$sudochage-E6/30/2014-m5-M90-I30-W14xmodulo

上述命令将密码有效期设置为2014年6月3日。
此外,更改密码的最短期限为5天,最大值是90天。
密码过期前14天会发送消息提醒用户,过期后账户将被锁定30天。

centos7root用户密码过期怎么处理?

如果您在CentOS7上遇到root账户密码过期的问题,可以按照以下步骤解决:

引导系统,当GRUB2启动选择界面屏幕显示时,按按钮进入编辑模式。

在以linux16开头的行中,搜索“ro”并将ro替换为rwinit=/sysroot/bin/sh。

现在按Ctrl+x启动进入单用户模式,然后会出现提示。

进入chroot环境:chroot/sysroot。

使用passwdroot命令重置root密码。

如果密码过期,请执行chage-E01/01/2030root命令更新过期时间。

更新系统信息:touch/.autorelabel。

退出chroot:退出。

重新启动系统:rebootCentos7。

此外,您还可以通过修改/etc/login.defs文件中的PASS_MAX_DAYS参数来控制密码的最长有效期。
例如,将PASS_MAX_DAYS设置为99999意味着密码永不过期。