首頁  >  文章  >  運維  >  Nginx伺服器如何透過ip和user_gent限制存取

Nginx伺服器如何透過ip和user_gent限制存取

王林
王林轉載
2023-06-04 21:40:031324瀏覽

ddos攻擊是大規模造訪網站經常會遇到的問題,它是指有人透過程式惡意刷網站的某些頁面,導致網站反應緩慢或直接拒絕服務。

這種情況可以透過分析nginx的access日誌發現,存在大量相同ip或user_agent的請求,我們可以根據請求的相似性,對於這些存取的請求,直接在nginx層面上過濾掉。

透過ip限制存取

nginx中存取控制模組相關文件

存取控制可以透過deny指令來拒絕訪問,allow指令允許存取。

當有多個deny和allow規則時,符合到對應的規則就跳出。

拒絕固定ip

deny 192.168.1.12;

拒絕ip網段

deny 192.168.1.0/24;

只允許內網存取

allow 192.168.1.0/24;
deny all;

透過user_agent限制存取

nginx沒有專門針對user_agent的限制指令,user_agent在nginx中可以透過$http_user_agent變數存取到,使用if進行指令正規匹配,對於匹配到的規則,拒絕訪問即可。

nginx中對if指令介紹的比較詳細的在rewrite模組中

透過user_agent限制jmeter測試工具的存取

if ($http_user_agent ~ "^apache.*java"){
  return 403;
}

以上是Nginx伺服器如何透過ip和user_gent限制存取的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除