本文档记录在 Ubuntu/BCC 云服务器上安装和配置 fail2ban 的最简可复现步骤,按顺序执行即可。


一、安装 fail2ban(如已安装可跳过)

sudo apt update
sudo apt install fail2ban -y

二、启动并设置开机自启

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

确认状态:

sudo systemctl status fail2ban

看到 Active: active (running) 即为成功。


三、确认 fail2ban 是否在保护 SSH

查看总体状态:

sudo fail2ban-client status

正常应包含:

Jail list: sshd

查看 sshd 规则细节:

sudo fail2ban-client status sshd

重点看三项:

  • Currently failed:当前失败登录次数
  • Currently banned:当前被封 IP 数量
  • Banned IP list:已被封的 IP

四、加固配置(推荐,已验证可用)

创建/编辑配置文件:

sudo nano /etc/fail2ban/jail.local

填入以下内容并保存:

[DEFAULT]
bantime = 3600      # 封禁 1 小时
findtime = 600      # 统计窗口 10 分钟
maxretry = 5        # 5 次失败即封

[sshd]
enabled = true

重启生效:

sudo systemctl restart fail2ban

再次检查:

sudo fail2ban-client status sshd

五、效果说明(给自己看)

  • 云厂商安全组 = 外层防火墙
  • fail2ban = 智能保安
  • 连续输错 5 次密码 → 自动封 IP 1 小时
  • 不影响你正常登录

六、可选进一步加固(以后再做)

  • 禁止 root SSH 登录
  • 修改 SSH 默认 22 端口
  • 改用 SSH 密钥登录