CentOS虛擬機安全設置關鍵步驟
/etc/passwd
文件檢測并鎖定非必要的超級賬戶(如adm
、lp
、sync
等),防止未授權訪問。/etc/login.defs
文件強制執行。chattr +i
命令給/etc/passwd
、/etc/shadow
、/etc/group
、/etc/gshadow
等文件添加不可更改屬性,防止非法修改。/etc/profile
文件中的TMOUT
參數(如TMOUT=300
),設置root賬戶無操作5分鐘后自動注銷。systemctl start firewalld
啟動防火墻,systemctl enable firewalld
設置開機自啟。public
區域,通過firewall-cmd --zone=public --add-port=22/tcp --permanent
開放必要端口(如SSH的22端口),firewall-cmd --reload
應用更改。--add-source
參數限制允許訪問的IP段(如firewall-cmd --zone=public --add-source=192.168.1.0/24 --permanent
),減少非法訪問風險。systemctl disable
命令禁用不需要的服務(如acpid
、autofs
、bluetooth
等),減少系統漏洞和攻擊面。systemctl disable 服務名
禁止非必要服務開機自啟,降低系統啟動時的潛在風險。/etc/ssh/sshd_config
,設置PermitRootLogin no
禁止root用戶直接登錄,Protocol 2
強制使用SSH2協議(更安全)。AllowUsers
參數指定允許登錄的用戶(如AllowUsers admin
),或通過AllowGroups
限制用戶組。Port 2222
),降低被掃描攻擊的概率(需同步修改防火墻規則放行新端口)。setenforce 1
臨時啟用(重啟后失效),修改/etc/selinux/config
文件中的SELINUX=enforcing
永久啟用(需重啟系統)。audit2allow
工具生成自定義策略(如grep "avc: denied" /var/log/audit/audit.log | audit2allow -M mypolicy
),而非直接禁用SELinux。/etc/profile
或用戶配置文件(如~/.bashrc
),設置umask 027
,使新創建的文件屬主擁有讀寫執行權限(7),同組用戶擁有讀和執行權限(5),其他用戶無權限(0)。chattr +i
命令鎖定/etc/passwd
、/etc/shadow
、/etc/fstab
等關鍵系統文件,防止未授權修改(需用chattr -i
解鎖)。/var/log/secure
(SSH登錄日志)、/var/log/messages
(系統日志)等日志文件正常記錄用戶操作和系統事件。ausearch
、last
、who
等工具定期檢查日志,關注異常登錄(如頻繁失敗的密碼嘗試)、未授權訪問等行為,及時響應安全事件。yum update
命令更新系統和軟件包,修復已知漏洞;可配置yum-cron
工具實現自動更新。tar
、rsync
等工具定期備份關鍵數據(如/etc
、/home
、數據庫文件),建議采用異地存儲或云存儲,防止數據丟失或被破壞。