如何在Ubuntu/Debian Linux系统上设置强密码策略
如何在Ubuntu/Debian Linux系统上设置安全或者复杂的密码策略?
默认情况下,Linux不安全,新服务器安装需要更多配置,以确保将其硬化并保护其损坏。
如果用户为其帐户设置了弱密码,则会让黑客致力于蛮力和危及帐户。
在Linux上创建本地用户时,我们可以给出任何密码,它将接受 - 即使是最弱的诸如"密码"。
如果允许用户重置密码,此默认设置会对生产环境带来安全风险。
在这篇文章中,我们将向我们展示如何在Linux中强制使用强用户密码。
这将适用于新用户创建和密码重置。
在Debian/Ubuntu上强制执行安全密码策略
强制执行用户每30天或者更短30天更改密码
$sudo /etc/login.defs ... PASS_MAX_DAYS 30
我们将使用pwquality/pam_pwquality pam模块来设置系统密码的默认密码质量要求。
在Ubuntu/Debian系统上安装libpam-pwquality包。
sudo apt-get -y install libpam-pwquality cracklib-runtime
包装安装后,我们需要编辑 /etc/pam.d/common-password
文件设置密码要求。
sudo vim /etc/pam.d/common-password
改变线 25
从:
password requisite pam_pwquality.so retry=3
到
password requisite pam_pwquality.so retry=3 minlen=8 maxrepeat=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 difok=3 gecoscheck=1 reject_username enforce_for_root
使用选项.retry = 3:提示用户3次返回错误.minlen = 8: password length
不能少于这个parametermaxrepeat = 3:允许最多 3 repeated
characeucredit = -1:要求至少一个 uppercase
characterlcredit = -1:必须至少有一个 lowercase
character.dcredit = -1:必须至少有 one digit
difok = 3:在旧密码中呈现的新密码中的字符数.gecoscheck = 1:new password.reject_username中未包含在用户passwd条目的Gecos字段中的单词,拒绝密码如果包含直接或者反向格式的用户名.enforce_for_root:为root用户授予pasword策略
更改要适合所需密码策略的设置,然后重新启动系统。
sudo reboot
然后,我们可以添加测试用户帐户以确认密码策略正在运行。
sudo useradd test
尝试设置弱密码。
sudo passwd test