fail2ban防暴力破解

Fail2ban配置ssh防暴力破解
Fail2ban能够监控系统日志,匹配日志中的错误信息(使用正则表达式),执行相应的屏蔽动作(支持多种,一般为调用 iptables ),是一款很实用、强大的软件。
如:攻击者不断尝试穷举SSH、SMTP 、FTP 密码等,只要达到预设值,fail2ban 就会调用防火墙屏蔽此 IP ,并且可以发送邮件通知系统管理员。
功能、特性:
1、支持大量服务:sshd 、apache 、qmail 等
2、支持多作动作:iptables 、tcp-wrapper 、shorewall 、mail notifications 等3、logpath 选项中支持通配符
4、需要 Gamin 支持(Gamin 用于监控文件和目录是否更改)
5、如果需要邮件通知,则系统事先要确保能够正常发送邮件
测试需要的环境:CentOS Linux release 7.7.1908 (Core)
python 版本2.4以上

[root@192 ~]# cat /etc/centos-release
CentOS Linux release 7.7.1908 (Core)

具体操作步骤:
编译安装fail2ban需要从官网下载包,解压安装即可or使用yum安装fail2ban
yum安装fail2ban:
yum -y install epel-release

[root@192 ~]# yum -y install epel-release
[root@192 ~]# yum -y install fail2ban

相关主要文件说明
Fail2ban配置文件路径:/etc/fail2ban
Fail2ban安装目录:/usr/share/fail2ban
Fail2ban日志文件:/var/log/fail2ban.log
到达阈值之后的执行的动作的配置文件:/etc/fail2ban/action.d/
包含所有的过滤规则:/etc/fail2ban/filter.d/
启动fail2ban:

[root@192 ~]systemctl start fail2ban

配置fail2ban并实现防暴力破解
在配置时,我们应该避免修改由fail2ban安装创建的文件,我们应该去编写具有.local扩展名的新文件。在.local新文件里配置的内容会覆盖jail.conf内容里相同的值。
配置fail2ban:

[root@192 ~]# cp -r /etc/fail2ban/jail.conf /etc/fail2ban/jail.d/jail.local
[root@192 ~]# vi /etc/fail2ban/jail.d/jail.local
#defalut这里是设定全局设置,如果下面的监控没有设置就以全局设置的值设置。
[DEFAULT]
用于指定哪些地址ip可以忽略 fail2ban 防御,以空格间隔。(根据自己具体地址写)
ignoreip = 127.0.0.1/20
客户端主机被禁止的时长(默认单位为秒)
bantime  = 3600
过滤的时长(秒)
findtime  = 600
匹配到的阈值(次数)
maxretry = 3
[ssh-iptables]
 是否开启
enabled  = true
 过滤规则
filter   = sshd
 动作
action   = iptables[name=SSH, port=ssh, protocol=tcp]
 日志文件的路径
logpath  = /var/log/secure

注意: 在这里需要注意一点就是,我们上面的action设置的时候,port=ssh,如果我们更改了sshd服务的端口号,我就需要在这里设置对应的端口号,否则配置不生效。

检测的系统的登陆日志文件。这里要写sshd服务日志文件。 默认为logpath = /var/log/sshd.log 。

#5分钟内3次密码验证失败,禁止用户IP访问主机1小时。 配置如下。

bantime = 3600

#禁止用户IP访问主机1小时。

findtime = 300

#在5分钟内内出现规定次数就开始工作。

maxretry = 3

#3次密码验证失败。

重启fail2ban服务

[root@192 ~]# systemctl restart fail2ban

测试:故意输入错误密码3次,再进行登录时,会拒绝登录

[root@192 ~]# ssh 192.168.252.128
The authenticity of host '192.168.252.128 (192.168.252.128)' can't be established.
ECDSA key fingerprint is SHA256:n4St4fyjGQVD5U4CdOlpRBxaZ+UPPU1+Zf6wBQIgyb8.
ECDSA key fingerprint is MD5:ec:3a:c1:db:6b:c8:67:c5:c3:c7:34:8c:54:1b:04:45.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.252.128' (ECDSA) to the list of known hosts.
root@192.168.252.128's password: 
Permission denied, please try again.
root@192.168.252.128's password: 
Permission denied, please try again.
root@192.168.252.128's password: 
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

[root@192 ~]# ssh 192.168.252.128
ssh: connect to host 192.168.252.128 port 22: Connection refused
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RDZ-hyd

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值