Debian服务器安全加固需构建可验证、可持续的防护闭环:先执行系统更新与自动补丁,再最小化服务与账户,接着强化SSH密钥认证并配置nftables防火墙,最后部署Fail2Ban实时封禁暴力攻击。

Debian 服务器安全加固不是堆砌命令,而是建立一套可验证、可持续的防护闭环:更新打底、最小化减面、访问严控、行为监控、日志留痕。关键不在“全做”,而在每一步都可确认生效。
系统更新与基础补丁
刚装好的 Debian 系统存在已知漏洞,必须第一时间同步修复:
- 运行
sudo apt update && sudo apt upgrade -y更新所有软件包 - 启用自动安全更新(可选但推荐):
sudo apt install unattended-upgrades,再执行sudo dpkg-reconfigure -plow unattended-upgrades并选择“Yes” - 检查是否启用:运行
sudo systemctl status unattended-upgrades,状态应为 active (running)
最小化服务与账户管控
减少攻击面比堵漏洞更高效:
宝塔面板11.3.0是一款针对Linux服务器设计的可视化管理工具,通过重构核心模块实现资源占用显著降低,尤其适合低配置服务器环境。它将复杂的命令行操作转化为直观的图形界面,帮助开发者快速完成网站部署、环境配置及日常运维工作,无需专业技术背景即可高效管理服务器。
- 禁用 root 远程登录:编辑
/etc/ssh/sshd_config,设PermitRootLogin no,然后sudo systemctl restart ssh - 只保留必要用户,删除或禁用测试账户:
sudo userdel -r username或sudo passwd -l username - 查运行中的服务:
systemctl list-units --type=service --state=running;停用非必需项,如cups、bluetooth、rpcbind:sudo systemctl disable --now cups.service
SSH 强认证与防火墙策略
SSH 是最常被爆破的入口,需双重加固:
- 强制密钥登录:在
/etc/ssh/sshd_config中设PasswordAuthentication no、PubkeyAuthentication yes,保存后重启 ssh - 改默认端口(可选但有效):修改
Port 22为其他值(如Port 2222),并确保防火墙放行新端口 - 用 nftables 设基础规则(Debian 11+ 默认):
sudo nft add rule inet filter input tcp dport 2222 ct state established,related acceptsudo nft add rule inet filter input iifname "lo" acceptsudo nft add rule inet filter input ct state invalid dropsudo nft add rule inet filter input counter drop
Fail2Ban 实时封禁暴力尝试
它不替代 SSH 配置,而是对漏网攻击做即时响应:
- 安装:
sudo apt install fail2ban - 启用并启动:
sudo systemctl enable fail2ban && sudo systemctl start fail2ban - 检查状态:
sudo fail2ban-client status sshd,确认 jail 已 running - 观察效果:
sudo tail -f /var/log/fail2ban.log,能看到 IP 被 ban 的实时记录
不复杂但容易忽略

















