将登陆失败的IP自动加入deny禁用掉(数量太多的话会有比较多无用的消耗,待优化)

2022/6/13 23:20:05

本文主要是介绍将登陆失败的IP自动加入deny禁用掉(数量太多的话会有比较多无用的消耗,待优化),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

#!/bin/sh
# * * * * * [[ -z $(ps -ef|grep -v grep|grep secure_check_login_fail.sh) ]]  && /bin/sh /root/secure_check_login_fail.sh >> /root/secure_check_login_fail.sh.log 2>&1
echo "--start--"
date
host=$(hostname)
aaa=$(cat /var/log/secure* |grep fail|grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'|sort -u|grep -v ^192\.168|grep -v ^172\.16|grep -v ^10\.)
for i in ${aaa}
do
    if [[ -z $(grep ${i} /etc/hosts.deny) ]] && [[ -z $(grep ${i} /root/secure_check_ip_list 2>/dev/null) ]]
    then
        # 调用接口获取IP的属地
        # country=$(curl http://192.168.0.24:9090/get_country/${i} 2>/dev/null)
        # if [[ ${country} != '中国' ]]
        # then
            echo "sshd: ${i}" >> /etc/hosts.deny
            echo "检测到ip ${i}登陆${host}失败,地址不为中国,已加入deny,返回值为:${country}"
        # fi
        echo "${aaa}" >> /root/secure_check_ip_list
    fi
done
date
echo "==end=="


这篇关于将登陆失败的IP自动加入deny禁用掉(数量太多的话会有比较多无用的消耗,待优化)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程