1. 李楠的主页首页
  2. Hexo 迁移

fail2ban阻止SSH暴力破解

fail2ban 简介

fail2ban是Linux上的一个著名的入侵保护的开源框架,它会监控多个系统的日志文件,例如:Debian/Ubuntu:/var/log/auth.log、CentOS/Redhat:/var/log/secure)并根据检测到的任何可疑的行为自动触发不同的防御动作。事实上,fail2ban 在防御对SSH服务器的暴力密码破解上非常有用。

本文部分段落摘录自 Linux运维笔记,如有侵权请联系删除!

第一步

安装配置OneinStack

这里使用OneinStack内置的fail2ban,一键安装并设置好即可,省时省力!
OneinStack安装配置请移步 OneinStack安装

第二步

安装配置 fail2ban

输入命令

1
2
cd oneinstack
./addons.sh #选择8,安装fail2ban

图0

第三步

Fail2ban配置文件说明

输入命令:

1
cat /etc/fail2ban/jail.local
1
2
3
4
5
6
7
8
9
10
[DEFAULT]
ignoreip = 127.0.0.1/8 #指定哪些地址可以忽略 fail2ban 防御
bantime = 86400 #客户端主机被禁止的时长(秒)
findtime = 600 #查找失败次数的时长(秒)
maxretry = 5 #客户端主机被禁止前允许失败的次数
[ssh-iptables]
enabled = true
filter = sshd
action = iptables[name=SSH, port=22, protocol=tcp]
logpath = /var/log/secure

图1

fail2ban会自动禁止在最近10分钟内有超过5次访问尝试失败的任意IP地址。这个IP地址将会在24小时内一直被禁止访问SSH服务。安装设置启用后,Fail2ban会在iptables添加相关规则,如下:

图2

第四步

fail2ban状态

输入命令:

1
/usr/local/python/bin/fail2ban-client status ssh-iptables

显示出被禁止IP地址列表

图3

第五步

fail2ban解锁指定IP

输入命令:

1
/usr/local/python/bin/fail2ban-client set ssh-iptables unbanip xxx.xxx.xxx.xxx

本文作者:Drixn

本文链接:https://www.drixn.com/52.html

版权申明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

发表评论

电子邮件地址不会被公开。 必填项已用*标注