侧边栏壁纸

Centos7.X防SSH爆破脚本

2023年05月13日 265阅读 0评论 1点赞

shell

什么是暴力破解,简单来说就是对一个服务器进行无数次尝试登陆,并用不同的密码进行登陆直到可以登陆成功。暴力破解的基本步骤可以分为以下几步:

1)找到对应的Linux服务器ip地址

2)扫描端口号:22 nmap扫描端口

3)开始暴力破解 :一般破解你的root 密码,登录你的服务器,进行破坏、盗取你的重要的数据。

此脚本是Centos7.X防SSH暴力破解脚本,有需要朋友可以参考,脚本内容如下:

系统环境:CentOS 7.9

[root@localhost ~]# vim auto_deny_ip_login.sh

#!/bin/bash
#自动检测IP暴力破解,禁止IP登录SSHD服务
Secure_File="/var/log/secure"
Deny_File="/etc/firewalld/zones/public.xml"
Start_Time=$(date +%Y%m%d%H%M)
IP_List="/tmp/firewalld.txt"
# 匹配IP次数
IPADDR=$(grep -i "failed" /var/log/secure |egrep -o "([0-9]{1,3}\.){3}[0-9]{1,3}" |sort -nr |uniq -c|awk '$1>=5 {print $2}')
[ -f ${IP_List} ] || touch ${IP_List}
for i in $(echo -n ${IPADDR})
do
    # IP失败次数达到5就加入防火墙Firewalld禁止登录ssh服务两个小时
    grep -wq ${i} ${IP_List}
    if [ $? -ne 0 ];then
        firewall-cmd --zone=public --add-rich-rule="rule family=ipv4 source address="${i}" service name='ssh' drop" --permanent
        firewall-cmd --reload
        echo "${i} #${Start_Time}" >>${IP_List}
    else
        # 查询IP封停时间,大于等于两小时就删除此IP
        End_Time=$(date +%Y%m%d%H%M)
        IP_ADDR=$(egrep -v "^$|^#" ${IP_List} |awk -F'#' '{print $1,$2}' |awk '{if('${End_Time}'>=$2+200) print $1}')
        for j in $(echo -n ${IP_ADDR})
        do
            if [ ! -z ${j} ];then
                firewall-cmd --permanent --remove-rich-rule="rule family=ipv4 source address="${IP_ADDR}" service name='ssh' drop"
                firewall-cmd --reload
                sed -i "/${IP_ADDR}/d" ${IP_List} 
            fi
        done
    fi
done

保存脚本文件到把脚本/data/scripts/

1、添加定时任务执行

[root@localhost ~]# crontab -e

*/1 * * * * sh /data/scripts/auto_deny_ip_login.sh

1

—— 评论区 ——

昵称
邮箱
网址
取消
站点公告

如果你有好的文章,不妨留言分享一下,互相借鉴,互相学习。

人生倒计时
舔狗日记