天天看点

Debian 安装 fail2ban 方式SSH爆破攻击

使用 Debian 这么久,影响最深的小软件莫过于 fail2ban 了。对多数服务器而已,对外开放的服务中,风险相对较高的莫过于 SSH 服务了, fail2ban 是一个轻量、有效、便捷的保护服务器免受暴力攻击的工具。 Fail2ban 使用 iptables 来阻止攻击者。

Fail2ban 的安装非常简单。Debian 及衍生版,可以直接从软件源安装:

apt-get install fail2ban           

复制

安装结束后便进入可用状态,默认的设置就足够使用了。这就是 Debian 的风格,不需要不必要的人工干预,在不知不觉中就提升了你的效率。我们还是来看一下 fail2ban 的配置文件 /etc/fail2ban/jail.conf ,

默认区段如下:

[DEFAULT]
ignoreip = 127.0.0.1/8 #IP白名单
bantime = 600 #封禁时间秒,默认是10分钟
maxretry = 3 #最大重试次数,子项未设置时以此为准           

复制

SSH 区段如下:

[ssh]
enabled = true #启用开关
port = ssh #保护端口,默认SSH为22
filter = sshd #默认即可
logpath = /var/log/auth.log #日志位置,默认即可
maxretry = 6 #最大重试次数           

复制

如果调整了 fail2ban 的配置,需要重启服务生效,通用的方法都支持,

/etc/init.d/fail2ban restart
#或者用 systemctl
systemctl restart fail2ban           

复制

fail2ban 的管理维护,可以通过以下命令操作,

fail2ban-client status           

复制

需要查看 sshd 封禁情况可以运行:

fail2ban-client status sshd
 Status for the jail: sshd
 |- Filter
 |  |- Currently failed:    0
 |  |- Total failed:    0
 |  - File list:    /var/log/auth.log - Actions
    |- Currently banned:    0
    |- Total banned:    0
    `- Banned IP list:           

复制

一般针对 OpenSSH 的加固,还可以修改默认的 22 号端口,并且禁止使用 root 帐号远程登录;有了 fail2ban,系统安全系数会明显提高。