1. 設置密碼失效時間,強制定期修改密碼
設置密碼失效時間,強制定期修改密碼,減少密碼被泄漏和猜測風險,使用非密碼登陸方式(如密鑰對)請忽略此項。
加固建議:
使用非密碼登陸方式如密鑰對,請忽略此項。在 /etc/login.defs 中將 PASS_MAX_DAYS 參數設置為 60-180之間,如:
PASS_MAX_DAYS 90
需同時執行命令設置root密碼失效時間:
chage --maxdays 90 root
2. 設置密碼修改最小間隔時間身份鑒別
描述
設置密碼修改最小間隔時間,限制密碼更改過於頻繁
加固建議:
在 /etc/login.defs 中將 PASS_MIN_DAYS 參數設置為7-14之間,建議為7:
PASS_MIN_DAYS 7
需同時執行命令為root用戶設置:
chage --mindays 7 root
3. 設置SSH空閑超時退出時間服務配置
描述
設置SSH空閑超時退出時間,可降低未授權用戶訪問其他用戶ssh會話的風險
加固建議:
編輯/etc/ssh/sshd_config,將ClientAliveInterval 設置為300到900,即5-15分鍾,將ClientAliveCountMax設置為0-3之間。
ClientAliveInterval 600
ClientAliveCountMax 2
4. 確保密碼到期警告天數為7或更多身份鑒別
描述
確保密碼到期警告天數為7或更多
加固建議:
在 /etc/login.defs 中將 PASS_WARN_AGE 參數設置為7-14之間,建議為7:
PASS_WARN_AGE 7
同時執行命令使root用戶設置生效:
chage --warndays 7 root
5. 檢查密碼重用是否受限制身份鑒別
描述
強制用戶不重用最近使用的密碼,降低密碼猜測攻擊風險
加固建議:
在/etc/pam.d/password-auth和/etc/pam.d/system-auth中password sufficient pam_unix.so 這行的末尾配置remember參數為5-24之間,原來的內容不用更改,只在末尾加了remember=5。
6. 訪問控制配置文件的權限設置文件權限
描述
訪問控制配置文件的權限設置
加固建議:
運行以下4條命令:
chown root:root /etc/hosts.allow
chown root:root /etc/hosts.deny
chmod 644 /etc/hosts.deny
chmod 644 /etc/hosts.allow
7. 禁止SSH空密碼用戶登錄 SSH服務配置
描述
禁止SSH空密碼用戶登錄
加固建議:
編輯文件/etc/ssh/sshd_config,將PermitEmptyPasswords配置為no:
PermitEmptyPasswords no
8.確保SSH MaxAuthTries設置為3到6之間 SSH服務配置
描述
設置較低的Max AuthTrimes參數將降低SSH服務器被暴力攻擊成功的風險。
加固建議:
在/etc/ssh/sshd_config中取消MaxAuthTries注釋符號#,設置最大密碼嘗試失敗次數3-6,建議為4:
MaxAuthTries 4
9. 確保rsyslog服務已啟用安全審計
描述
確保rsyslog服務已啟用,記錄日志用於審計
加固建議:
運行以下命令啟用rsyslog服務:
systemctl enable rsyslog
systemctl start rsyslog
10. 確保SSH LogLevel設置為INFO服務配置
描述
確保SSH LogLevel設置為INFO,記錄登錄和注銷活動
加固建議:
編輯 /etc/ssh/sshd_config 文件以按如下方式設置參數(取消注釋):
LogLevel INFO
11. 系統登錄弱口令身份鑒別
描述
若系統使用弱口令,存在極大的被惡意猜解入侵風險,需立即修復。
加固建議:
執行命令passwd [<user>],然后根據提示輸入新口令完成修改,其中<user>為用戶名,如果不輸入則修改的是當前用戶的口令。口令應符合復雜性要求:
1、長度8位以上
2、包含以下四類字符中的三類字符:
英文大寫字母(A 到 Z)
英文小寫字母(a 到 z)
10 個基本數字(0 到 9)
非字母字符(例如 !、$、#、%、@、^、&)
3、避免使用已公開的弱口令,如:abcd.1234 、admin@123等