1. 系統更新與補丁管理
保持系統及軟件包最新是安全基礎,可及時修復已知漏洞。定期執行以下命令更新軟件包列表并升級系統:
sudo apt update && sudo apt upgrade -y
建議開啟自動安全更新,通過unattended-upgrades
工具實現:
sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades
這能確保系統自動安裝安全補丁,減少手動維護成本。
2. 賬戶與權限管理
/etc/ssh/sshd_config
,設置PermitRootLogin no
,禁止root用戶通過SSH遠程登錄,降低被暴力破解的風險。修改后重啟SSH服務:sudo systemctl restart ssh
。sudo
執行管理員操作。例如:sudo adduser newuser
sudo usermod -aG sudo newuser
libpam-pwquality
工具,編輯/etc/security/pwquality.conf
文件,設置密碼復雜度要求(如最小長度12位、包含大小寫字母、數字和特殊字符):sudo apt install libpam-pwquality
echo "minlen = 12" >> /etc/security/pwquality.conf
echo "minclass = 3" >> /etc/security/pwquality.conf
同時修改PAM配置文件/etc/pam.d/common-password
,啟用密碼質量檢查:password requisite pam_pwquality.so retry=3
。3. SSH服務加固
SSH是遠程管理的關鍵服務,需重點防護:
/etc/ssh/sshd_config
,將默認22端口改為非標準端口(如2222),減少自動化掃描攻擊:Port 2222
。ssh-keygen -t rsa -b 4096
,將公鑰復制到服務器:ssh-copy-id user@remote_host
。編輯/etc/ssh/sshd_config
,設置:PasswordAuthentication no
PubkeyAuthentication yes
AllowUsers
指令僅允許可信IP登錄,例如:AllowUsers user@192.168.1.*
。sudo systemctl restart ssh
。4. 防火墻配置
使用ufw
(Uncomplicated Firewall)限制入站/出站流量,默認拒絕所有入站連接,僅允許必要服務(如SSH、HTTP、HTTPS):
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw allow 2222/tcp # 替換為實際SSH端口
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw enable # 啟用防火墻
sudo ufw status # 查看規則狀態
ufw
操作簡單,能有效過濾非法流量,保護系統免受端口掃描、暴力破解等攻擊。
5. 服務最小化
禁用不必要的系統服務,減少攻擊面。通過以下命令列出運行中的服務,禁用無需的服務(如CUPS打印服務):
sudo systemctl list-units --type=service --state=running
sudo systemctl stop cups
sudo systemctl disable cups
僅保留系統必需的服務(如SSH、網絡服務),降低被攻擊的風險。
6. 文件系統與內核加固
chmod 700 /etc/cron* /etc/ssh/ssh_host_*_key
chmod 600 /etc/shadow
防止未授權用戶修改定時任務或SSH密鑰文件。/etc/sysctl.conf
,啟用以下安全參數,增強網絡防護:net.ipv4.conf.all.rp_filter = 1 # 反向路徑過濾,防止IP欺騙
net.ipv4.icmp_echo_ignore_broadcasts = 1 # 忽略ICMP廣播請求,防止Smurf攻擊
net.ipv4.tcp_syncookies = 1 # 防止SYN Flood攻擊
fs.protected_hardlinks = 1 # 防止硬鏈接攻擊
fs.protected_symlinks = 1 # 防止符號鏈接攻擊
應用配置:sudo sysctl -p
。7. 日志監控與入侵檢測
auditd
工具監控關鍵文件(如/etc/passwd
、/etc/shadow
)的修改,記錄系統活動:sudo apt install auditd
auditctl -w /etc/passwd -p wa -k passwd_changes # 監控passwd文件修改
auditctl -w /etc/shadow -p wa -k shadow_changes # 監控shadow文件修改
日志保存在/var/log/audit/audit.log
,可通過ausearch
命令查詢。fail2ban
防范暴力破解,自動封禁多次登錄失敗的IP:sudo apt install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
默認配置文件位于/etc/fail2ban/jail.local
,可根據需求調整閾值。8. 備份與恢復策略
定期備份重要數據(如配置文件、數據庫、網站文件),應對數據丟失或勒索軟件攻擊。推薦使用Timeshift
工具進行增量備份:
sudo apt install timeshift
sudo timeshift --create --comments "Full Backup"
備份文件默認保存在/timeshift
目錄,可通過rsync
或外部存儲設備實現遠程備份:
rsync -avz /timeshift/ backupuser@backupserver:/backups/
確保備份數據加密存儲,避免泄露敏感信息。
9. 安全工具部署
OpenVAS
定期掃描系統漏洞,生成報告并修復:sudo apt install openvas
sudo openvas-setup
sudo systemctl start openvas-manager
sudo systemctl start openvas-scanner
ClamAV
反病毒軟件,掃描系統中的惡意文件:sudo apt install clamav clamtk
sudo freshclam # 更新病毒庫
clamscan -r / # 遞歸掃描根目錄
rkhunter
檢查系統是否存在rootkit:sudo apt install rkhunter
sudo rkhunter --update
sudo rkhunter --check
定期運行這些工具,及時發現并處理安全隱患。