黃浦区印象派音乐交流组

Fail2ban阻止SSH暴力破解

云裳月光 2019-06-14 11:39:35


云裳技术

立足运维,不忘安全

完美搭建,固若金汤

 



聊聊吧


我们日常生活遭受到的攻击会有很多,但是最常见的还是暴力破解你的ssh登录账户,一旦账户泄露,将会是毁灭性的打击,给公司和个人带来,不可挽回的损失。



今天我们就来学习一个针对此类攻击设计的一个软件,fail2ban,其实这个软件就是针对调取linux安全登录日志来判断登录错误的次数,然后利用iptables进行IP地址的禁止访问。因为很实用,现在已经集成到软件oneinstack里面了。



fail2ban开始进行学习

利用的系统日志文件:

centos/redhat    /var/log/secure

ubuntu/debian   /var/log/auth.log


开启防火墙

既然基于防火墙,那就一定要开启防火墙

service iptables start


下载软件包

下载

  1. wget mirrors.linuxeye.com/oneinstack.tar.gz


解压

  1. tar -zxvf  oneinstack.tar.gz


部署


pushd oneinstack

./addons.sh      选择fail2ban

选择安装


安装成功标志


安装路径以及文件


配置文件介绍

jail.local文件说明

[root@centos6 fail2ban]# cat jail.local 

[DEFAULT]

ignoreip = 127.0.0.1/8

bantime  = 86400

findtime = 600

maxretry = 5

[ssh-iptables]

enabled = true

filter  = sshd

action  = iptables[name=SSH, port=22, protocol=tcp]

logpath = /var/log/secure

以上默认设置效果

fail2ban会自动禁止在最近10分钟内有超过5次访问尝试失败的任意IP地址。这个IP地址将会在24小时内一直被禁止访问SSH服务。


说明:

DEFAULT


ignoreip  指定可以忽略防御的IP

bantime  客户端主机被禁止时长(秒)

findtime 查找失败次数的时长(秒)

maxretry  客户端主机被禁止前允许登录的次数


重启fail2ban服务

[root@centos6 fail2ban]# /etc/init.d/fail2ban restart


查看

iptables -nvL


测试


误操作


本人的本机地址为192.168.2.51,输入密码错误超过5次

此时本人已经无法使用此机器进行登录服务器,显示如下


查看

进入系统,防火墙查看如下显示

iptables -nvL


fail2ban被禁列表查看显示

命令:

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


解锁ip

命令:

/usr/local/python/bin/fail2ban-client set ssh-iptables unbanip 192.168.2.51

登录成功

测试可用,成功


测试感慨


第一种情况:

同ip,相同用户,如果我前三次输入错误,第四次正确,然后再进行登录错误两次,结果如何呢?

答:不可登录,因为他只记录十分钟之内登录错误超过五次的用户


第二种情况

不同用户,比如:zhang,root,相同ip,如果zhang输入错误两次,root输入三次,结果如何呢?

答:不可登录,因为fail2ban采用的ip进行识别


感慨


fail2ban,对于运维人员来说还算是比较好用的软件,可以更灵活容易的进行,ssh登录的安全加固,而且这是免费的,呵呵,快来试试吧!!

有问题的请留言偶!!!


看看其他的文章吧


云裳技术-----------------  IIS ntfs加固        终极防网马

云裳技术-----------------  免费视频专区    会员电影电视剧免费看