服務器租用防御CC攻擊的方法:1、分析訪問日志,將異常IP寫到防火墻的黑名單中;2、使用nginx做反向代理,并增加設置限流;3、根據請求特征拒絕訪問,如User-Agent或refer會有一些固定信息,可作為nginx攔截的依據;4、使用nginx根據請求特征重定向到其它頁面;5、使用CDN防御CC攻擊,能減小被攻擊的威脅。
具體內容如下:
1、封IP
IP寫到防火墻黑名單。分析訪問日志,封異常IP。
個人評價:不優雅,被動,但簡單粗暴有一定效果。不過一般現在攻擊方都是拉一堆肉雞和IP池做代理,而且動態IP也是變動的,流量特別大的幾個IP封了還好說,所有攻擊IP都封掉不現實。而且解封也有點麻煩,需要自己寫腳本處理。
2、服務器限流
比如使用nginx做反向代理,可以增加設置限流:
limit_conn_zone
limit_req_zone
個人評價:有用,相對優雅,nginx的漏桶算法還是不錯的。但是還是容易誤殺,需要對網站性能有充分理解再來設置。
3、根據請求特征拒絕訪問
比如User-Agent或者是refer,里面會有一些固定信息,可以作為nginx攔截的依據。作為被動防御還是挺有用的,攔截到疑似請求后nginx直接返回403。
個人評價:基本必備,不過限制UA的時候用得多些,反爬蟲比別。當然,現在已經有很多開源變化UA的方法了。對于refer特征一致的請求攔截效果意外的好。
4、請求跳轉
就是nginx根據請求特征重定向到其它頁面。建議別順手寫baidu.com,萬一被百度判罰了就麻煩了。可以設置成攻擊你的來源,給他打回去。
個人評價:也算優雅,就是返回去的請求并不一定能給攻擊方造成壓力,不過個人覺得這樣的處理壓力應該會比直接返回403、404來得大。
5、用CDN帶的CC防御功能
這些都是防御cc攻擊比較有效的方法,另外找一個有實力的服務商也可以減小被攻擊的威脅,在機房都在T3以上標準,防御設施齊全,有專業技術團隊提供7x24小時服務,可以很好的增加服務器的安全性。