准备工作:
安装 PAM 的 cracklib 模块,cracklib 能提供额外的密码检查能力。
Debian、Ubuntu 或 Linux Mint 系统上:
$ sudo apt-get install libpam-cracklib
CentOS、Fedora、RHEL 系统已经默认安装了 cracklib PAM 模块,所以在这些系统上无需执行上面的 *** 作。
为了强制实施密码策略,我们需要修改 /etc/pam.d 目录下的 PAM 配置文件。一旦修改,策略会马上生效。
注意:此教程中的密码策略只对非 root 用户有效,对 root 用户无效。
禁止使用旧密码
找到同时有 “password” 和 “pam_unix.so” 字段并且附加有 “remember=5” 的那行,它表示禁止使用最近用过的5个密码(己使用过的密码会被保存在 /etc/security/opasswd 下面)。
Debian、Ubuntu 或 Linux Mint 系统上:
$ sudo vi /etc/pam.d/common-password
CentOS、Fedora、RHEL 系统上:
$ sudo vi /etc/pam.d/system-auth
设置最短密码长度
找到同时有 “password” 和 “pam_cracklib.so” 字段并且附加有 “minlen=10”
的那行,它表示最小密码长度为(10 - 类型数量)。这里的 “类型数量” 表示不同的字符类型数量。PAM
提供4种类型符号作为密码(大写字母、小写字母、数字和标点符号)。如果你的密码同时用上了这4种类型的符号,并且你的 minlen
设为10,那么最短的密码长度允许是6个字符。
Debian、Ubuntu 或 Linux Mint 系统上:
$ sudo vi /etc/pam.d/common-password
CentOS、Fedora、RHEL 系统上:
$ sudo vi /etc/pam.d/system-auth
设置密码复杂度
找到同时有 “password” 和 “pam_cracklib.so” 字段并且附加有 “ucredit=-1 lcredit=-2
dcredit=-1 ocredit=-1”
的那行,它表示密码必须至少包含一个大写字母(ucredit),两个小写字母(lcredit),一个数字(dcredit)和一个标点符号
(ocredit)。
Debian、Ubuntu 或 Linux Mint 系统上:
$ sudo vi /etc/pam.d/common-password
CentOS、Fedora、RHEL 系统上:
$ sudo vi /etc/pam.d/system-auth
设置密码过期期限
编辑 /etc/login.defs 文件,可以设置当前密码的有效期限,具体变量如下所示:
$ sudo vi /etc/login.defs
这些设置要求用户每6个月改变他们的密码,并且会提前7天提醒用户密码快到期了。
如果你想为每个用户设置不同的密码期限,使用 chage 命令。下面的命令可以查看某个用户的密码限期:
$ sudo chage -l xmodulo
默认情况下,用户的密码永不过期。
下面的命令用于修改 xmodulo 用户的密码期限:
$ sudo chage -E 6/30/2014 -m 5 -M 90 -I 30 -W 14 xmodulo
上面的命令将密码期限设为2014年6月3日。另外,修改密码的最短周期为5天,最长周期为90天。密码过期前14天会发送消息提醒用户,过期后帐号会被锁住30天。
首先启动系统,我的系统是CentOS 6.6,如下图所示:在终端中用【grub-md5-crypt】命令创建md5加密的密码,并复制加密后的密码,如下图所示:
用命令【sudo vim /boot/grub/menu.lst 】编辑开机菜单文件menu.lst,如下图所示:
加入如下的两行代码,注意,在【password --md5】后面粘贴刚才复制的加密密码,该行放在【title……】行的上面,【lock】必须是【title……】行下面的第一行,如下图所示:
保存退出后,用【sudo shutdown -r now】命令重启系统,如下图所示:
开机时会提示必须授权,按任意键继续,如下图所示:
按任意键后,进入如下的界面,根据提示按【p】键来输入密码,如下图所示:
输入密码后按回车键解锁系统,如下图所示:
进入这个界面后,再按回车键即可顺利启动系统,如下图所示:
系统正在启动中……
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)