nginx中可通過寫入配置文件的方法來達到一定的過濾IP作用,可使用deny來寫。
deny的使用方法可用於前端服務器無防護設備的時候過濾一些異常IP,過濾的client ip會被禁止再次訪問,起到一定的阻斷作用。
但是,在現在這個網絡環境非常負載的情況,實際阻斷的IP可能都是一些代理模擬出來的,所以遇到大範圍異常攻擊的時候還是選用前端的防護設備如FW、DDOS等纔可進行防護。
1.首先,找到前端nginx代理服務器目錄/server/nginx/conf,在該目錄新增一個如blocksip.conf文件,並寫入內容:
cd /server/nginx/conf
vim blocksip.conf
deny 192.168.1.1; #過濾單個IP
deny 192.168.1.0/24; #過濾整個地址段
deny all; #過濾所有IP
allow 192.168.1.1; #與deny all;組合是指除192.168.1.1外其他都過濾
2.wq保存退出,進入nginx.conf文件將該配置加入http{}標籤末尾:
http{
include blocksip.conf;
}
重載nginx配置/server/nginx/sbin/nginx -s reload。
3.使用deny過的IP訪問nginx代理的應用服務,可在error.log中查看到如下forbidden日誌,說明過濾成功: