说明:
本篇实现shell统计访问失败的IP和次数,从而根据这些再通过防火墙规则来限制这些IP再次暴破,脚本如下:
实现:
1.编写shell脚本
# cat /root/ssh_failed.sh //内容如下 #!/bin/sh SCANIP=`grep "Failed" /var/log/secure | awk '{print $(NF-3)}' | sort | uniq -c | awk '{print $1"="$2;}'` for i in $SCANIP do NUMBER=`echo $i | awk -F= '{print $1}'` SCANIP=`echo $i | awk -F= '{print $2}'` echo "$NUMBER($SCANIP)" if [ $NUMBER -gt 10 ] && [ -z "`/sbin/iptables -vnL INPUT | grep $SCANIP`" ] then /sbin/iptables -I INPUT -s $SCANIP -m state --state NEW,RELATED,ESTABLISHED -j DROP echo "`date` $SCANIP($NUMBER)" >> /var/log/scanip.log fi done
由于/var/log/secure是以星期为轮询的,所以我们每次可以查看这个文件,利用shell脚本统计出其中访问失败比较频繁的IP,并定义一个阀值为10(可自行修改为合适的值),如果超过这个阀值并且查看防火墙列表中有没有这条IP的记录,如果没有则添加相应防火墙规则,阻止此IP进行SSH登录,每隔一段时间进行一次检查,如果下次排查的某IP次数又大于10,并且检查它在不在我们的防火墙列表中,如果在的话就无视过去;如果不在,就继续添加进iptables中。然后我们定义一个计划任务,让每一个小时检测一次
2.将/root/scan_sshd_linux.sh添加至crontab,一小时执行一次
# crontab -e //在末尾添加以下内容 0 */1 * * * /bin/sh /root/scan_sshd_linux.sh
当然也有的朋友说了,可以将这些IP写入/etc/hosts.deny中,也不是不可以,总之方法是有很多,看个人喜好了!~
相关推荐
centos7 ssh8.6和ssl1.1.1k rpm安装包
centos之SSH安装centos之SSH安装centos之SSH安装centos之SSH安装
Centoe 下linux远程桌面描述 ,Centos远程 SSH登录
Windows7配置PuTTY+Xming连接CentOS7 SSH服务器图形化界面.........
ssh免密配置,在配置中遇到各种坑导致配置不成功,后面把遇到的问题都总结了下,理出清晰的思路,能够应付常见免密配置坑,适合经验不是十分丰富的人员借鉴(因为重点给出了一些解决思路)。
centos ssh安全防护配置
centOS 下SSH常用命令!
在CentOS7下,设置ssh自启动,修改ssh监听端口
Centos下配置ssh以及Vsftp
最近项目要求数据传必须使用sftp,但sftp又不能直接使用22端口,不安全,网上查询的ssh和sftp分离相关的资料都是基于centos7的,于是经过研究尝试,完成了基于centos6版本的服务分离
暴力破解、替换ps命令、留多个houmen-应急响应靶场,应急响应教程:https://blog.csdn.net/weixin_40412037/article/details/123323981?spm=1001.2014.3001.5501
centos 升级ssh到openssh7.6以及部署和遇到问题的解决方法
Centos7离线升级SSH版本到9.0,所有依赖文件都已经下载好了,不用连接互联网,只需要执行01-ssh9.0-upgrade.sh脚本一键安装。
由于centos默认远程端口22,服务器远程部署修改ssh端口号
shell+expect编写的 大数据集群ssh免密登录自动化配置脚本(带说明文档)
对于linux 的远程管理来说 ssh是非常重要的东西。 如何进行安全保护,是我们管理员要掌握的一项技能
linux服务器一般默认的ssh端口号都为22,所以在大部分的使用者手中出于安全考虑就需要修改ssh的默认端口号,下面为为修改ssh默认端口号方法 一:修改/etc/ssh/sshd_config配置文件(注意:这里是sshd_config,而不是...
centos6.x 系统的 openssh8.2p1 rpm完整包,包含安装脚本,解压后,上传服务器同一目录,脚本赋予执行权限,执行脚本即可。
cento是当今很好的服务器,而ssh可以让服务器更好的架设起来
CentOS7升级OpenSSH8.5p1附带安装包脚本,一键升级,openssh漏洞升级。OpenSSH(OpenBSD Secure Shell)是OpenBSD计划组的一套用于安全访问远程计算机的连接工具。该工具是SSH协议的开源实现,支持对所有的传输进行...