fail2ban

  • 是一个非常重要的入侵防御软件,它的主要功能是动态地保护服务器免受暴力破解和自动化攻击。

AlmaLinux 9.4 安装

# 更新包管理器缓存
dnf update

# 安装 fail2ban
dnf install fail2ban
如果报错(先安装): dnf install epel-release
  • ubuntu24 安装
apt update
apt install fail2ban

配置vi /etc/fail2ban/jail.d/sshd.local
[sshd]
enabled = true
port = ssh
logpath = /var/log/auth.log
maxretry = 6
bantime = 3600
findtime = 600

配置 fail2ban

  • vi /etc/fail2ban/jail.d/sshd.local (创建并编辑一个自定义配置文件)
[sshd]
# 启用此规则
enabled = true
# 监控的端口(ssh 对应 22 端口)
port = ssh
# 日志文件路径(AlmaLinux 9 通常使用这个路径)
logpath = /var/log/secure
# 最大重试次数
maxretry = 3
# 封禁时长(秒)
bantime = 3600
# 时间窗口(秒)
findtime = 600
  • 说明
    maxretry = 3: 10分钟内失败3次则封禁
    bantime = 3600: 封禁1小时(3600秒)
    findtime = 600: 统计失败次数的时间窗口为10分钟(600秒)

启动服务

# 启动 fail2ban 服务
systemctl start fail2ban
# 设置开机自启
systemctl enable fail2ban
# 检查服务状态
systemctl status fail2ban

监狱的状态

# 查看 fail2ban 状态
fail2ban-client status

# 查看 sshd 监狱的状态
fail2ban-client status sshd


# 手动解禁 IP
sudo fail2ban-client set sshd unbanip IP地址

# 重新加载配置
sudo fail2ban-client reload