一、suse linux 11 密码复杂度策略设置求解
一、准备工作安装 PAM 的 cracklib 模块,cracklib 能提供额外的密码检查能力。
Debian、Ubuntu 或 Linux Mint 系统上:$ sudo apt-get install libpam-cracklibCentOS、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-passwordpassword [success=1 default=ignore] pam_unix.so obscure sha512 remember=5CentOS、Fedora、RHEL 系统上:$ sudo vi /etc/pam.d/system-authpassword sufficient pamunix.so sha512 shadow nullok tryfirstpass useauthtok remember=5三、设置最短密码长度找到同时有 “password” 和 “pam_cracklib.so” 字段并且附加有 “minlen=10” 的那行,它表示最小密码长度为(10 - 类型数量)。
这里的 “类型数量” 表示不同的字符类型数量。PAM 提供4种类型符号作为密码(大写字母、小写字母、数字和标点符号)。
如果你的密码同时用上了这4种类型的符号,并且你的 minlen 设为10,那么最短的密码长度允许是6个字符。Debian、Ubuntu 或 Linux Mint 系统上:$ sudo vi /etc/pam.d/common-passwordpassword requisite pam_cracklib.so retry=3 minlen=10 difok=3CentOS、Fedora、RHEL 系统上:$ sudo vi /etc/pam.d/system-authpassword requisite pam_cracklib.so retry=3 difok=3 minlen=10四、设置密码复杂度找到同时有 “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-passwordpassword requisite pam_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1CentOS、Fedora、RHEL 系统上:$ sudo vi /etc/pam.d/system-authpassword requisite pam_cracklib.so retry=3 difok=3 minlen=10 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1五、设置密码过期期限编辑 /etc/login.defs 文件,可以设置当前密码的有效期限,具体变量如下所示:$ sudo vi /etc/login.defsPASSMAXDAYS 150 PASSMINDAYS 0 PASSWARNAGE 7这些设置要求用户每6个月改变他们的密码,并且会提前7天提醒用户密码快到期了。如果你想为每个用户设置不同的密码期限,使用 chage 命令。
下面的命令可以查看某个用户的密码限期:$ sudo chage -l xmoduloLast password change : Dec 30, 2013 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7默认情况下,用户的密码永不过期。下面的命令用于修改 xmodulo 用户的密码期限:$ sudo chage -E 6/30/2014 -m 5 -M 90 -I 30 -W 14 xmodulo上面的命令将密码期限设为2014年6月3日。
另外,修改密码的最短周期为5天,最长周期为90天。密码过期前14天会发送消息提醒用户,过期后帐号会被锁住30天。
二、linux suse 11 重新设置root密码
用root登陆 后 输入passwd回车 再输入新密码就可以了
这是具体过程
1、重新启动机器,在出现grub引导界面后,按F2,在启动linux的选项里加上init=/bin/bash,通过给内核传递init=/bin/bash参数使得OS在运行login程序之前运行bash,出现命令行。
2、稍等片刻出现(none)#:命令行。
3、输入mount -n / -o remount,rw
4、输入 mount –n /usr
5、输入 cd /usr/bin
6、输入passwd命令就可以重置密码了。输入新密码。
7、修改完成后记得用mount -n / -o remount,ro将根文件系统置为原来的状态。
8、输入 exit 退出系统,重新启动系统,用新密码登录。
三、配置用户SUSE linux操作系统口令复杂度
vi /etc/pam.d/common-password-pc
将原来的内容删掉,在文件最后加入如下内容。
password requisite pam_cracklib.so difok=6 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
password required pam_unix2.so use_authtok nullok
加入该行内容后,后续修改密码时,要求密码最少8位,至少包含6个不同的字符、一个大写字母、一个小写字母、一个数字、一个特殊字符,否则不允许修改
四、linux下如何对特定的用户不设置密码复杂度
在linux,设置密码复杂度的方法有几个
1. 一个是在/etc/login.defs文件,里面几个选项
PASS_MAX_DAYS 90 #密码最长过期天数
PASS_MIN_DAYS 80 #密码最小过期天数
PASS_MIN_LEN 10 #密码最小长度
PASS_WARN_AGE 7 #密码过期警告天数
2. 另外一个方法是,修改/etc/pam.d/system-auth文件
找到 password requisite pam_cracklib.so这么一行替换成如下:
password requisite pam_cracklib.so retry=5 difok=3 minlen=10 ucredit=-1 lcredit=-3 dcredit=-3 dictpath=/usr/share/cracklib/pw_dict
参数含义:
尝试次数:5
最少不同字符:3
最小密码长度:10
最少大写字母:1
最少小写字母:3
最少数字:3
密码字典:/usr/share/cracklib/pw_dict
这样设置好,你可以做一下测试,不过需要先退出root,因为root用户并不会受这些限制,它可以设置任意的密码。
五、linux下使用pam密码策略 怎么实现不让使用前3次旧密码
不知道你是那个发行版。
首先你的电脑要安装pam_unix2.so模块(一般默认都安装了)
Redhat/Fedora/CentOS 系列的linux 编辑 /etc/pam.d/system-auth
Debian/Ubentu/Suse 系列的linux 编辑 /etc/pam.d/common-auth把含有 pam_unix.so的这行编辑成:
password sufficient pam_unix.so use_authtok md5 shadow remember=3(默认的是13)
还有就是要创建一个旧密码记录文件/etc/security/opasswd,以及设置密码生命周期
六、如何查看suse root密码
1. 启动grub时候选择 Failsave, 下面的“boot option“内容全部删除,写入init=/bin/bash,进入单用户模式。
2. 稍等会出现命令行。
(none)#:
#mount -o remount, rw / [enter]
//根文件系统重新mount为可读写,有了读写权限后就可以通过passwd命令修改密码了
#cd /usr/bin [enter]
#passwd [enter]
//提示输入root的新密码
#mount -o remount,ro/ [enter] //将根文件系统置为原来的状态
七、suse mysql 生成密码在哪
1、停止MySQL服务
service mysql stop
2、跳过验证启动MySQL
/usr/bin/mysqld_safe --skip-grant-tables >/dev/null 2>&1 &
3、重置密码
mysql -uroot
出现MySQL提示符后输入:
update user set password = Password('123456') where User = 'root';
回车后执行:
flush privileges; 刷新MySQL系统权限相关的表。
再执行:
转载请注明出处51数据库 » susecommon-password
其实我不懂內涵