Linux 作為伺服器主流作業系統,進程擁有高權限,若被惡意利用後果嚴重。必須從五個層面建立纵深防禦體系。
編輯 /etc/grub.conf 或 /etc/lilo.conf,設定 password 參數,防止透過單用戶模式或引導參數繞過 root 密碼。
chmod u+s file 會讓普通用戶執行時擁有檔案擁有者 (如 root) 權限,極度危險。定期掃描並移除非必要的 s 權限:
find / -perm -4000 -o -perm -2000 -type f -exec ls -la {} \;
s 權限必須搭配 x (執行) 權限才生效,無 x 的 s 權限無意義但仍建議清理。
編輯 /etc/profile,設定 TMOUT 參數(秒數),如 TMOUT=300 代表 5 分鐘無操作自動登出,防止未鎖定終端機被盜用。
編輯 /etc/login.defs 設定:
PASS_MAX_DAYS 密碼最長使用天數PASS_MIN_DAYS 密碼最短變更間隔PASS_WARN_AGE 過期前警告天數pam_pwquality.so 強制長度、大小寫、數字、特殊字元要求/sbin/nologin 或 /bin/false 作為 Shell/etc/passwd、/etc/shadow 權限,僅 root 可讀寫
Linux 免費開源特性賦予強大彈性,也要求管理者具備對等的安全責任。定期稽核上述五項設定,建立基線合規檢查機制,是維護伺服器長期安全的關鍵。