最近发现一台Ubuntu20.04总有地址尝试登录,应该是台肉鸡,比较烦。
解决方法是丢一个脚本到 /etc/cron.hourly/ ,每小时查检一次日志,连接超过10次拉黑。
#! /bin/bash
data=`cat /var/log/auth.log| grep "Failed password" | grep -v "times:" | grep -v "invalid user" | awk '{print $11}' | sort | uniq -c | awk '{print $2"="$1}'`
for i in $data
do
IP=`echo $i |awk -F= '{print $1}'`
NUM=`echo $i|awk -F= '{print $2}'`
echo $IP $NUM
if [ ${NUM} -gt 10 ]; then
EXIST=`grep $IP /etc/hosts.deny | wc -l`
echo "${EXIST}"
if [ ${EXIST} -eq 0 ];then
echo "sshd:$IP:deny" >> /etc/hosts.deny
fi
fi
done
注意:
1、Ubuntu20.04 可以直接用,其它环境按实际情况修改。
2、文件命名,不要加点和后缀,否则可能会不执行。
效果: