2013年的脚本,今天拿出来备份一下。
vim /root/secure_ssh.sh
#!/bin/bash cat /var/log/auth.log|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /tmp/blackIP.txt TRYCOUNT="5" for i in `cat /tmp/blackIP.txt` do IP=`echo $i |awk -F= '{print $1}'` NUM=`echo $i|awk -F= '{print $2}'` if [ $NUM -gt $TRYCOUNT ]; then grep $IP /etc/hosts.deny > /dev/null if [ $? -gt 0 ]; then echo "ALL:$IP:deny" >> /etc/hosts.deny fi fi done
添加定时脚本,每分钟执行一次
crontab -e 添加*/1 * * * * sh /root/secure_ssh.sh
开启日志
cron日志,这里记录一下如何ubuntu server如何查看crontab日志
crontab记录日志
修改rsyslog
sudo vim /etc/rsyslog.d/50-default.conf
cron.* /var/log/cron.log #将cron前面的注释符去掉
重启rsyslog
sudo service rsyslog restart
查看日志
tail -100f /var/mail/root tail -100f /var/log/cron.log
本博客文章绝大多数为原创,少量为转载,代码经过测试验证,如果有疑问直接留言或者私信我。
创作文章不容易,转载文章必须注明文章出处;如果这篇文章对您有帮助,点击右侧打赏,支持一下吧。
创作文章不容易,转载文章必须注明文章出处;如果这篇文章对您有帮助,点击右侧打赏,支持一下吧。