前言
我野蛮生长,没能成为自己的月亮,遇见你,是银河赠予我的糖
不知道为什么,最近在云服务器中搭建好个人博客后就有大量不明的IP在爆破服务器的SSH,破解就破解吧,居然还被破解成功了,这就有点麻烦了 于是乎花了两天时间学习了一下Shell编程,写了一个脚本专门进行登入日志的检测,用于检测恶意IP来源和SSH破解状态,第一次写Shell脚本可能有点菜菜,现将脚本开源,仅供大家参考 这里我使用的服务器是CentOS7.6
使用方法
首先把脚本上传到服务器中,我这里上传到了服务器的logCheck目录,同时通过chmod命令赋予脚本可执行权限
chmod 744 logCheck.sh
接下来直接运行脚本程序,可以看到破解次数前5的恶意IP和用户名 若服务器被成功破解,则显示成功破解信息,这里的恶意IP的定义为破解次数大于10次的用户 程序运行后会在当前目录下生成恶意IP列表 badIP 文件
封禁恶意IP
首先查看SSH黑名单配置文件,可以看到黑名单存在/etc/sshd.deny.hosteye文件中 如果有需要可以加入SSH黑名单来禁止这些IP访问SSH,建议先备份
常态化运维管理
虽然有了一个 好用 的Shell脚本 【手动滑稽】 ,但是也顶不住天天手动运行这个脚本吧,因此我们可以利用crontab设置定时任务进行常态化运维管理
crontab -e
编辑任务如下,这里以 每日0点0分时运行相关命令为例,这里需要写入你自己服务器的目录
cd /root/logCheck && echo >> login.log && date >> login.log && ./logCheck.sh >> login.log
执行命令后将在设定目录下生成新的日志文件 通过检索日志文件可以快速锁定恶意IP,并检查服务器是否被破解 通过检索这个login.log日志既可快速锁定恶意IP并采取措施
资源获取
百度网盘 链接:https://pan.baidu.com/s/11HBq6Qehjbka9vB5p4IvRA 提取码:qwer GIthub 后续若有更新的话,应该会在github中持续更新,若有想加入项目的小伙伴也可以联系我 https://github.com/monster663/LinuxLoginCheckMaster
后记
若还有疑问,欢迎留言评论
|