a) 應對登錄的用戶進行身份標識和鑒別,身份標識具有唯一性,身份鑒別信息具有復雜度要求並定期更換;
在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
b) 應具有登錄失敗處理功能,應配置並啟用結束會話、限制非法登錄次數和當登錄連接超時自動退出等相關措施;
1.備份相關文件:
cp /etc/pam.d/sshd /etc/pam.d/sshd.bak cp /etc/pam.d/login /etc/pam.d/login.bak
2.檢查是否有pam_tally2.so模塊
[root@mycloud security]# find /lib* -iname "pam_tally2.so" /lib64/security/pam_tally2.so [root@mycloud security]# find /lib* -iname "pam_tally.so" [root@mycloud security]# cat /etc/pam.d/sshd
3.終端登錄失敗處理功能
編輯系統/etc/pam.d/system-auth 文件,在 auth 字段所在的那一部分策 略下面添加如下策略參數:
auth required pam_tally2.so onerr=fail deny=3 unlock_time=40 even_deny_root root_unlock_time=30
說明:注意添加的位置,要寫在第一行,即#%PAM-1.0的下面。以上策略表示:普通帳戶和 root 的帳戶登錄連續 3 次失敗,就統一鎖定 40 秒, 40 秒后可以解鎖。如果不想限制 root 帳戶,可以把 even_deny_root root_unlock_time這兩個參數去掉, root_unlock_time 表示 root 帳戶的 鎖定時間,onerr=fail 表示連續失敗,deny=3,表示 超過3 次登錄失敗即鎖定。
4.遠程登錄失敗處理功能
上面只是限制了從終端登陸,如果想限制ssh遠程的話, 要改的是/etc/pam.d/sshd這個文件,添加的內容跟上面一樣!
如果在操作中間出現下面這個錯誤:
Dec 7 15:06:51 iZ2zee7gmy40tbverl53rfZ sshd[15747]: PAM unable to dlopen(/lib64/security/pam_tally.so): /lib64/security/pam_tally.so: cannot open shared object file: No such file or directory Dec 7 15:06:51 iZ2zee7gmy40tbverl53rfZ sshd[15747]: PAM adding faulty module: /lib64/security/pam_tally.so 執行以下命令 [root@mycloud ~]# cd /lib64/security/ [root@mycloud ~]#ln -s pam_tally2.so pam_tally.so
5.配置連接超時自動退出功能
[root@mycloud /]$ cd ~ [root@mycloud ~]$ echo "TMOUT=90">>/etc/profile [root@mycloud ~]$ source /etc/profile