只需要把ip添加到 /etc/hosts.deny 文件即可,格式 sshd:$IP:deny
vim /etc/hosts.deny # 禁止访问 sshd:*.*.*.*:deny # 允许的访问 sshd:.*.*.*:allow sshd:.*.*.*:allow
# 创建目录 mkdir -p /data/blacklist # 创建脚本文件 vim /data/blacklist/secure_ssh.sh # 复制下边代码 #! /bin/bash cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /data/blacklist/black.txt for i in `cat /data/blacklist/black.txt` do IP=`echo $i |awk -F= '{print $1}'` NUM=`echo $i|awk -F= '{print $2}'` if [ $NUM -gt 5 ];then grep $IP /etc/hosts.deny > /dev/null if [ $? -gt 0 ];then echo "sshd:$IP:deny" >> /etc/hosts.deny fi fi done # 脚本文件改变权限 chmod 777 /data/blacklist/secure_ssh.sh
touch /data/blacklist/black.txt
# 编辑 crontab 文件 vim /etc/crontab # 添加以下配置 */5 * * * * root /data/blacklist/secure_ssh.sh
ssh **.**.**.**
cat /data/blacklist/black.txt
cat /etc/hosts.deny
注:以上内容仅提供参考和交流,请勿用于商业用途,如有侵权联系本人删除!