Debian系统安全防护实操清单
一 基础加固
- 保持系统更新:定期执行sudo apt update && sudo apt upgrade,必要时使用sudo apt full-upgrade;生产环境建议启用自动安全更新(见第三部分)。
- 最小化安装与清理:仅安装必要软件,定期执行sudo apt autoremove移除无用包,减少攻击面。
- 用户与权限:日常使用普通用户 + sudo,遵循最小权限原则;检查是否存在uid=0的“隐形root”账户。
- 口令与登录安全:配置PAM复杂度(如pam_pwquality.so)与历史记录(pam_pwhistory.so),启用失败锁定(pam_faillock.so),设置会话超时(如**/etc/profile**中TMOUT=120)。
- 服务与端口:仅开启必需服务,使用systemctl disable/stop停用不需要的服务与端口。
二 网络与SSH防护
- 防火墙:优先使用UFW简化策略,或直接使用iptables;仅开放SSH/HTTP/HTTPS等必要端口,并限制来源IP(云环境注意放通管理网段)。
- SSH加固:修改默认端口、禁用root远程登录、强制SSH密钥认证、限制可登录用户/来源网段;变更前务必保留一条可用会话,避免被锁。
- 暴力破解防护:部署fail2ban自动封禁反复失败的来源IP。
- 加密与隔离:对外服务启用TLS/HTTPS;在边界/交换设备实施VLAN/ACL等网络隔离。
三 更新与补丁管理
- 安全更新节奏:Debian Stable通常每周发布安全更新,频率与其他主流发行版相当;对关键系统建议开启自动安装安全补丁以减少暴露窗口。
- 自动安全更新:安装并配置unattended-upgrades,编辑**/etc/apt/apt.conf.d/50unattended-upgrades**启用安全仓库自动安装,定期核查日志确认生效。
- 变更控制:在测试环境验证更新,重要变更安排在维护窗口并做好回滚预案与数据/配置备份。
四 入侵检测 日志与备份
- 入侵检测与恶意软件扫描:部署rkhunter、chkrootkit定期基线检查;有条件可引入IDS/IPS进行流量与主机行为监测。
- 日志与审计:集中收集与分析**/var/log/auth.log、/var/log/syslog等,使用journalctl**、Logwatch或auditd/syslog-ng进行告警与取证。
- 监控告警:结合Nagios、Zabbix等监控资源异常与服务可用性,出现异常时联动处置。
- 备份与恢复:制定3-2-1备份策略(3份副本、2种介质、1份异地/离线),定期演练恢复流程;可用Timeshift进行系统快照,rsync/duplicity做数据备份。
五 快速检查清单
| 检查项 |
推荐做法 |
关键命令/配置 |
| 系统更新 |
每周例行更新,关键补丁即时处理 |
apt update/upgrade/full-upgrade |
| 自动安全更新 |
启用无人值守安全更新 |
unattended-upgrades、/etc/apt/apt.conf.d/50unattended-upgrades |
| 防火墙 |
仅开放必要端口与来源 |
ufw allow 22,80,443/tcp;或 iptables |
| SSH安全 |
禁root、密钥登录、改端口、限源 |
/etc/ssh/sshd_config:PermitRootLogin no,PasswordAuthentication no |
| 口令策略 |
复杂度+历史+锁定 |
pam_pwquality.so、pam_pwhistory.so、pam_faillock.so |
| 服务最小化 |
停禁用不到的服务 |
systemctl disable/stop |
| 入侵检测 |
基线扫描与行为监测 |
rkhunter、chkrootkit、IDS/IPS |
| 日志审计 |
集中化与告警 |
journalctl、/var/log/、Logwatch、auditd |
| 备份恢复 |
定期演练与异地留存 |
Timeshift、rsync、duplicity |
以上步骤按“基础—网络—更新—监测与备份”的顺序实施,可在不影响业务连续性的前提下显著提升Debian系统的安全水位。