nginx 動態新增ip黑名單

2022-10-09 00:42:13 字數 771 閱讀 5320

# !/bin/bash

# 進入日誌目錄

cd /www/wwwlogs;

# 遍歷訪問日誌檔案 過濾錯誤日誌

dirs=`ls ./*.log | grep -v error.log`;

# 設定ip黑名單配置檔案

blockip_file='/www/server/nginx/conf/block_ip.conf';

for dir in $[@]

do # 列出最近5000條訪問資料 過濾掉蜘蛛 列出ip 並排序

# 計算出ip重複的次數並記錄在旁邊

# 排序後 把重複次數大於 50的ip 寫入ip黑名單內

tail -n 5000 ./$dir \

| grep -v 'splider' \

| awk '' \

| sort \

| uniq -c \

| sort -rn \

| awk '' >> $blockip_file;

done

# 過濾正常允許訪問的ip

allow_ip=`cat /www/server/nginx/conf/allow_ip.conf`;

# 將阻塞ip去重後再寫入

ips=`cat $blockip_file | sort -u | grep -v $allow_ip`

echo "$ips" > $blockip_file;

# 過載nginx配置

nginx -s reload;

Nginx 動態新增IP黑名單

防止程式呼叫,原理 檢視日誌5w條記錄,對單個ip訪問量進行統計並記數超過1000視為黑名單ip,每半小時檢查執行一次指令碼 在http模組最後加上配置 黑名單設定 取最近5w條資料 tail n50000 usr local nginx logs access.log 過濾需要的資訊行ip等 aw...

nginx 動態設定黑名單

由於上線了公共api,所以導致大量的爬蟲攻擊伺服器,然後反爬蟲機制就來了,最簡單的就是設定nginx的ip黑名單 技術交流qq群1093476453 bin bash 檢視日誌5w條記錄 tail n50000 www wwwlogs 39.105.38.10.log 根據自己的需求擷取相應的內容 ...

Nginx 限制訪問 IP 位址動態黑名單

使用 nginx plus r13 時,可以將某些 ip 位址列入黑名單,可以建立並維護黑名單 ip 位址的資料庫。相對的,還可以將某些 ip 位址明確列入白名單。ip位址資料庫使用 nginx plus api 和 nginx plus keyval 模組進行管理。首先,通過 nginx keyv...