Linux通过ssh远程访问,防止暴力破解方法
Admin
网络
点击:107 次
当我们把服务器托管到idc机房,安装了Linux系统设置了密码,通过ssh可以远程了,以为这就万事大吉了吗?
错错错,即使你更改了ssh的默认端口,现在依然有扫描工具可以发现,然后进行暴力破解。今天我们来解决这个问题

其实我们可以通过读取/var/log/secure 很多失败的登录信息,进行统计,然后将多次失败的地址加到/etc/hosts.deny以达到屏蔽的作用
1. 大于10次登陆失败就封掉IP,编写shell脚本:cat /root/secure_ssh.sh
#! /bin/bash
tail -1000 /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /tmp/blackips.txt
for i in `cat /tmp/blackips.txt`
do
IP=`echo $i |awk -F= '{print $1}'`
NUM=`echo $i|awk -F= '{print $2}'`
result=$(cat /etc/hosts.deny | grep $IP)
if [[ $NUM -gt 10 ]];then
if [[ $result = "" ]];then
echo "sshd: $IP" >> /etc/hosts.deny
fi
fi
done
2.定时任务:5分钟执行一次,crontab -e
*/5 * * * * bash /root/secure_ssh.sh
沈阳众诚志联真诚为您服务!