Linux系統(tǒng)中怎么設(shè)置復(fù)雜密碼策略,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。
創(chuàng)新互聯(lián)建站從2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元中山做網(wǎng)站,已為上家服務(wù),為中山各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220一、準(zhǔn)備工作
安裝 PAM 的 cracklib 模塊,cracklib 能提供額外的密碼檢查能力。
Debian、Ubuntu 或 Linux Mint 系統(tǒng)上:
代碼如下:
$ sudo apt-get install libpam-cracklib
CentOS、Fedora、RHEL 系統(tǒng)已經(jīng)默認(rèn)安裝了 cracklib PAM 模塊,所以在這些系統(tǒng)上無(wú)需執(zhí)行上面的操作。
為了強(qiáng)制實(shí)施密碼策略,我們需要修改 /etc/pam.d 目錄下的 PAM 配置文件。一旦修改,策略會(huì)馬上生效。
注意:此教程中的密碼策略只對(duì)非 root 用戶有效,對(duì) root 用戶無(wú)效。
二、禁止使用舊密碼
找到同時(shí)有 “password” 和 “pam_unix.so” 字段并且附加有 “remember=5” 的那行,它表示禁止使用最近用過(guò)的5個(gè)密碼(己使用過(guò)的密碼會(huì)被保存在 /etc/security/opasswd 下面)。
Debian、Ubuntu 或 Linux Mint 系統(tǒng)上:
代碼如下:
$ sudo vi /etc/pam.d/common-password
password [success=1 default=ignore] pam_unix.so obscure sha512 remember=5
CentOS、Fedora、RHEL 系統(tǒng)上:
代碼如下:
$ sudo vi /etc/pam.d/system-auth
password sufficient pamunix.so sha512 shadow nullok tryfirstpass useauthtok remember=5
三、設(shè)置短密碼長(zhǎng)度
找到同時(shí)有 “password” 和 “pam_cracklib.so” 字段并且附加有 “minlen=10” 的那行,它表示最小密碼長(zhǎng)度為(10 - 類(lèi)型數(shù)量)。這里的 “類(lèi)型數(shù)量” 表示不同的字符類(lèi)型數(shù)量。PAM 提供4種類(lèi)型符號(hào)作為密碼(大寫(xiě)字母、小寫(xiě)字母、數(shù)字和標(biāo)點(diǎn)符號(hào))。如果你的密碼同時(shí)用上了這4種類(lèi)型的符號(hào),并且你的 minlen 設(shè)為10,那么短的密碼長(zhǎng)度允許是6個(gè)字符。
Debian、Ubuntu 或 Linux Mint 系統(tǒng)上:
代碼如下:
$ sudo vi /etc/pam.d/common-password
password requisite pam_cracklib.so retry=3 minlen=10 difok=3
CentOS、Fedora、RHEL 系統(tǒng)上:
代碼如下:
$ sudo vi /etc/pam.d/system-auth
password requisite pam_cracklib.so retry=3 difok=3 minlen=10
四、設(shè)置密碼復(fù)雜度
找到同時(shí)有 “password” 和 “pam_cracklib.so” 字段并且附加有 “ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1” 的那行,它表示密碼必須至少包含一個(gè)大寫(xiě)字母(ucredit),兩個(gè)小寫(xiě)字母(lcredit),一個(gè)數(shù)字(dcredit)和一個(gè)標(biāo)點(diǎn)符號(hào)(ocredit)。
Debian、Ubuntu 或 Linux Mint 系統(tǒng)上:
代碼如下:
$ sudo vi /etc/pam.d/common-password
password requisite pam_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1
CentOS、Fedora、RHEL 系統(tǒng)上:
代碼如下:
$ sudo vi /etc/pam.d/system-auth
password requisite pam_cracklib.so retry=3 difok=3 minlen=10 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1
五、設(shè)置密碼過(guò)期期限
編輯 /etc/login.defs 文件,可以設(shè)置當(dāng)前密碼的有效期限,具體變量如下所示:
代碼如下:
$ sudo vi /etc/login.defs
PASSMAXDAYS 150 PASSMINDAYS 0 PASSWARNAGE 7
這些設(shè)置要求用戶每6個(gè)月改變他們的密碼,并且會(huì)提前7天提醒用戶密碼快到期了。
如果你想為每個(gè)用戶設(shè)置不同的密碼期限,使用 chage 命令。下面的命令可以查看某個(gè)用戶的密碼限期:
代碼如下:
$ sudo chage -l xmodulo
Last 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
默認(rèn)情況下,用戶的密碼永不過(guò)期。
下面的命令用于修改 xmodulo 用戶的密碼期限:
代碼如下:
$ sudo chage -E 6/30/2014 -m 5 -M 90 -I 30 -W 14 xmodulo
上面的命令將密碼期限設(shè)為2014年6月3日。另外,修改密碼的短周期為5天,最長(zhǎng)周期為90天。密碼過(guò)期前14天會(huì)發(fā)送消息提醒用戶,過(guò)期后帳號(hào)會(huì)被鎖住30天。
設(shè)置完后,驗(yàn)證效果如下:
關(guān)于Linux系統(tǒng)中怎么設(shè)置復(fù)雜密碼策略問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。