CentOS系統加強安全以防范Exploit攻擊的關鍵措施
遵循“最小安裝”原則,僅安裝運行業務必需的基礎組件(如服務器角色選擇時取消不必要的桌面環境、開發工具),減少潛在攻擊入口。通過systemctl list-unit-files | grep enabled查看已啟用服務,關閉無用服務(如Telnet、FTP);使用netstat -antupl或ss -tulnp檢查開放端口,僅保留必要端口(如SSH的22端口、Web服務的80/443端口),關閉高風險端口(如6666、3306等默認數據庫端口)。
/etc/ssh/sshd_config文件,將PermitRootLogin yes改為no,重啟SSH服務(systemctl restart sshd),防止攻擊者通過暴力破解root密碼直接登錄。/etc/login.defs文件,調整密碼參數:PASS_MAX_DAYS 90(密碼最長使用90天)、PASS_MIN_LEN 14(密碼最小長度14位)、PASS_WARN_AGE 7(過期前7天提醒);修改/etc/pam.d/system-auth文件,添加pam_pwquality.so模塊,強制密碼包含大小寫字母、數字和特殊字符(如minlen=14 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 enforce_for_root)。/etc/pam.d/su文件,添加auth required pam_wheel.so group=wheel,僅允許wheel組用戶(如管理員)使用su切換到root,避免普通用戶獲取高權限。定期執行yum update命令,更新系統內核、軟件包及安全補?。ㄈ缧迯蚅inux內核堆緩沖區溢出漏洞CVE-2021-27365、sudo權限繞過漏洞CVE-2021-3156等)。啟用yum-cron自動更新,設置每日檢查并安裝安全補丁,確保系統始終處于最新安全狀態,減少已知漏洞被利用的風險。
使用firewalld配置嚴格的訪問控制規則:
systemctl enable firewalld && systemctl start firewalld;firewall-cmd --permanent --add-service=ssh(開放SSH)、firewall-cmd --permanent --add-service=http(開放HTTP);firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" accept'(僅允許內網IP訪問);firewall-cmd --reload。啟用SELinux(Security-Enhanced Linux),編輯/etc/selinux/config文件,將SELINUX=permissive改為SELINUX=enforcing(強制模式),重啟系統生效。SELinux通過強制訪問控制策略,限制進程對系統資源的訪問權限(如禁止Apache進程讀取/etc/shadow文件),即使攻擊者通過Exploit獲取進程權限,也無法輕易提權或竊取敏感數據。
修改/etc/ssh/sshd_config文件,增強SSH服務安全性:
Port 2222(避免默認22端口被掃描);PasswordAuthentication no,啟用密鑰認證(PubkeyAuthentication yes);MaxAuthTries 3(最多嘗試3次密碼,防止暴力破解);AllowUsers your_username(僅允許指定用戶登錄)。systemctl restart sshd。/var/log/secure記錄SSH登錄信息、/var/log/messages記錄系統錯誤信息),使用logwatch工具生成每日日志報告,及時發現異常登錄(如頻繁失敗的SSH嘗試)、未授權訪問等行為。netstat -anpt查看異常連接、rpm -Vf檢查系統文件完整性(如/usr/bin/ps是否被篡改),修復漏洞(如升級受影響的內核版本),清理后門程序(刪除異常進程、恢復被修改的文件),最后恢復系統服務。建立定期備份機制,使用rsync、tar或專業備份工具(如Veeam)備份系統配置文件(/etc)、用戶數據(/home)、數據庫(如MySQL的/var/lib/mysql)等重要數據,備份文件存儲在異地(如云存儲、NAS)或離線介質(如U盤、光盤)中。定期進行恢復演練,確保在遭受Exploit攻擊(如數據加密勒索)時,能快速恢復系統和數據,減少損失。