<dfn id="bq4sp"><code id="bq4sp"><dl id="bq4sp"></dl></code></dfn>
<menuitem id="bq4sp"><mark id="bq4sp"></mark></menuitem>

<menuitem id="bq4sp"></menuitem>
<abbr id="bq4sp"><button id="bq4sp"><pre id="bq4sp"></pre></button></abbr>
  • <strike id="bq4sp"><rt id="bq4sp"></rt></strike>
  • <nobr id="bq4sp"></nobr>
  • 国产亚洲tv在线观看,五月综合婷婷开心综合婷婷,嫩草院一区二区乱码,国产精品18久久久久久麻辣 ,国产精品剧情亚洲二区,国产美熟女乱又伦AV果冻传媒,国产福利高颜值在线观看,无码人妻丰满熟妇啪啪网不卡

    Linux服務器 屏蔽國外IP訪問及簡單的防CC攻擊攔截

    屏蔽國外IP訪問

    通過ssh遠程登錄服務器內,運行如下命令語句獲取國內IP網段,會保存為/root/china_ssr.txt

    wget -q --timeout=60 -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' | awk -F\| '/CN\|ipv4/ { printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > /root/china_ssr.txt

    將下面腳本保存為/root/allcn.sh ,并設置可執行權限( 命令: chmod +x  allcn.sh)

    mmode=$1
    
    CNIP="/root/china_ssr.txt"
    
    gen_iplist() {
            cat <<-EOF
                    $(cat ${CNIP:=/dev/null} 2>/dev/null)
    EOF
    }
    
    flush_r() {
    iptables  -F ALLCNRULE 2>/dev/null
    iptables -D INPUT -p tcp -j ALLCNRULE 2>/dev/null
    iptables  -X ALLCNRULE 2>/dev/null
    ipset -X allcn 2>/dev/null
    }
    
    mstart() {
    ipset create allcn hash:net 2>/dev/null
    ipset -! -R <<-EOF 
    $(gen_iplist | sed -e "s/^/add allcn /")
    EOF
    
    iptables -N ALLCNRULE 
    iptables -I INPUT -p tcp -j ALLCNRULE 
    iptables -A ALLCNRULE -s 127.0.0.0/8 -j RETURN
    iptables -A ALLCNRULE -s 169.254.0.0/16 -j RETURN
    iptables -A ALLCNRULE -s 224.0.0.0/4 -j RETURN
    iptables -A ALLCNRULE -s 255.255.255.255 -j RETURN
    iptables -A ALLCNRULE -m set --match-set allcn  src -j RETURN 
    iptables -A ALLCNRULE -p tcp -j DROP 
    }
    if [ "$mmode" == "stop" ] ;then
    flush_r
    exit 0
    fi
    flush_r
    sleep 1
    mstart

    執行如下命令將開始攔截

    /root/allcn.sh

    執行如下命令即可停止攔截

    /root/allcn.sh stop


    CC攻擊攔截

    方式1:通過netstat -an命令統計出當前請求并發大于100的IP,然后將不在白名單的IP自動加入DROP規則

    首先運行

    vi  deny_1.sh

    添加以下命令語句

    #!/bin/bash
    if [[ -z $1 ]];then
            num=100
    else
            num=$1
    fi
    
    cd $(cd $(dirname $BASH_SOURCE) && pwd)
    iplist=`netstat -an |grep ^tcp.*:80|egrep -v 'LISTEN|127.0.0.1'|awk -F"[ ]+|[:]" '{print $6}'|sort|uniq -c|sort -rn|awk -v str=$num '{if ($1>str){print $2} fi}'`
    
    if [[ ! -z $iplist ]];
    then
            for black_ip in $iplist
                do                
                    ip_section=`echo $black_ip | awk -F"." '{print $1"."$2"."$3}'`                
                    grep -q $ip_section ./white_ip.txt
                    if [[ $? -eq 0 ]];then                        
                            echo $black_ip >>./recheck_ip.txt
                    else                        
                            iptables -nL | grep $black_ip || iptables -I INPUT -s $black_ip -j DROP
                            echo $black_ip >>./black_ip.txt
                    fi
               done
    fi

    保存后執行以下語句:

    chmod +x deny_1.sh
    sh deny_1.sh

    攔截的IP會記錄到black_ip.txt中,如果有要排除的白名單IP,可將這些IP加入到white_ip.txt,一行一個。


    方式2:通過web網站日志中攻擊者訪問特征,根據這些特征過濾出攻擊的ip,利用iptables來阻止(排除本機IP:127.0.0.1)。

    首先運行

    vi deny_2.sh

    添加以下命令語句:

    #!/bin/bash  
    OLD_IFS=$IFS  
    IFS=$'\n'  
    
    for status in `cat 網站訪問日志路徑 | grep '特征字符' | grep -v '127.0.0.1' | awk '{print $1}' |sort -n | uniq -c | sort -n -r | head -20`  
    do  
      IFS=$OLD_IFS  
      NUM=`echo $status | awk '{print $1}'`  
      IP=`echo $status | awk '{print $2}'`  
    
        if [ -z "`iptables -nvL | grep "dpt:80" | awk '{print $8}' | grep "$IP"`" ];then  
        if [ $NUM -gt 250 ];then  
          /sbin/iptables -I INPUT -p tcp  -s $IP --dport 80 -j DROP  
        fi  
      fi  
    done

    保存后執行以下語句:

    chmod +x deny_2.sh
    sh deny_2.sh


    最后使用crontab -e 添加到任務計劃,每20分鐘執行一次:

    */20 * * * * /root/deny_ip1.sh  >dev/null 2>&1

    注意:

    1. 對于使用了百度云加速或其他cdn加速的,訪問者IP可能會是CDN節點IP,不適用此方式進行攔截。

    2. 對于方式1 若發現和白名單同一個段IP出現在高并發列表,將不會直接拉黑,而是寫入到recheck_ip.txt.

    3. 對于方式2 執行前建議先將原日志文件改名,以重新生成的新的日志文件為準。

    4. 不建議長時間進行攔截,請在一段時間后待服務器負載正常,攻擊基本停止后及時取消攔截,恢復原先狀態。



    編輯:三五互聯
    日期:2021-07-07

    收藏 】 【 打印 】   
    您可對文檔進行評分喲~

    勾選遇到的問題提交給我們,收到反饋后保證及時修正更新!

    提交反饋需要先登陸會員帳號

    上一篇:Linux系統云服務器查看/啟用網站日志
    下一篇:已經沒有了。
    若文檔內容對您沒有幫助,不能解決問題? 您還可以 咨詢在線客服提交工單搜索常見問題 ,我們將竭誠為您服務。
      >> 相關文章
     
    分享至:
    主站蜘蛛池模板: 人人妻人人澡人人爽| 国产一区二区三区九九视频| 午夜通通国产精品福利| 久久国产精品无码网站| 亚洲国产成人精品av区按摩| 精精国产XXX在线观看| 女人张开腿让男人桶爽| 久久亚洲精品成人av秋霞| 波多野结衣乳喷高潮视频| 亚洲av午夜福利精品一区二区| 无码人妻精品一区二区在线视频| 日韩精品二区三区四区| 东京热人妻无码一区二区av| 亚成区成线在人线免费99| 国产丰满乱子伦无码专区| 熟女乱一区二区三区四区| 亚洲美免无码中文字幕在线| 亚洲春色在线视频| 一区二区三区av天堂| 窝窝午夜色视频国产精品破| 欧产日产国产精品精品| 久久大香萑太香蕉av黄软件 | 精品一区二区亚洲国产| 国产欧美日韩亚洲一区二区三区| 久久久久无码中| 在线视频中文字幕二区| 国产呦交精品免费视频| 亚洲人成18在线看久| 久久久久亚洲精品无码系列| 波多野结衣av一区二区三区中文| 国产视色精品亚洲一区二区| 极品尤物被啪到呻吟喷水| 成人午夜大片免费看爽爽爽| 国产av无码专区亚洲草草| 欧美色欧美亚洲高清在线视频 | 敖汉旗| 久久精品国产亚洲av高| 国产无套粉嫩白浆在线| 日韩一本不卡一区二区三区| 99久久精品久久久久久清纯| 国产不卡的一区二区三区|