14
如何在Linux系统中防止SSH暴力破解密码
vim /usr/local/bin/denyhosts.sh

写入下面的内容:

#!/bin/bash
#Denyhosts SHELL SCRIPT
#2013-6-24

cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"=" $1;}' >/usr/local/bin/Denyhosts.txt
DEFINE="10"
for i in `cat /usr/local/bin/Denyhosts.txt`
do
    IP=`echo $i|awk -F= '{print $1}'`
    NUM=`echo $i|awk -F= '{print $2}'`
    if [ $NUM -gt $DEFINE ]
    then
        grep $IP /etc/hosts.deny >/dev/null
        if [ $? -gt 0 ];
        then
            echo "sshd:$IP" >> /etc/hosts.deny
        fi
    fi
done

添加到定时任务:

crontab -e

添加定时任务:

*/2 * * * * /usr/local/bin/denyhosts.sh

执行启动:

/sbin/service crond start


这条帮助是否解决了您的问题? 已解决 未解决

提交成功!非常感谢您的反馈,我们会继续努力做到更好! 很抱歉未能解决您的疑问。我们已收到您的反馈意见,同时会及时作出反馈处理!

帮助教程

查看更多