linux centos7添加ip黑名單禁止ip訪問以及自動禁止

centos7用的是firewall 添加單個黑名單隻需要把ip添加到 /etc/hosts.deny

格式  sshd:$IP:deny

vim /etc/hosts.deny   添加你要禁止的ip就可以了

sshd:192.168.1.147:deny

這是允許的 /etc/hosts.allow 
sshd:19.16.18.1:allow
sshd:19.16.18.2:allow

=========================

多次失敗登錄即封掉IP,防止暴力破解的腳本,超過20次的就加到黑名單:

vim /usr/local/bin/secure_ssh.sh

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

2、創建記錄登錄失敗次數的文件 

touch /usr/local/bin/black.txt

 

3、添加定時 10分鐘執行一次  

( 定時 10分鐘執行詳見: https://www.cnblogs.com/emanlee/p/10293762.html )

安裝 crontabs服務並設置開機自啓:

yum install crontabs

systemctl enable crond

systemctl start crond
 

關閉:

systemctl stop crond

添加定時任務:

vi /etc/crontab

 */10 * * * * root  sh /usr/local/bin/secure_ssh.sh

#加載任務,使之生效

crontab /etc/crontab

#查看任務

crontab -l

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章