nginx封ip,禁用IP段的設定說明

2021-07-13 19:11:33 字數 2045 閱讀 9002

nginx的ngx_http_access_module 模組可以封配置內的ip或者ip段,語法如下:

deny ip

;deny subnet

;allow ip

;allow subnet

;# block all ips

deny all

;# allow all ips

allow all

;

如果規則之間有衝突,會以最前面匹配的規則為準。

下面說明假定nginx的目錄在/usr/local/nginx/

首先要建乙個封ip的配置檔案blockips.conf,然後vi blockips.conf編輯此檔案,在檔案中輸入要封的ip。

deny 

1.2.

3.4;

deny

91.212

.45.0/24

;deny

91.212

.65.0/24

;

然後儲存此檔案,並且開啟nginx.conf檔案,在http配置節內新增下面一行配置:

include blockips

.conf

;

儲存nginx.conf檔案,然後測試現在的nginx配置檔案是否是合法的:

/usr

/local

/nginx

/sbin

/nginx

-t

如果配置沒有問題,就會輸出:

the configuration file 

/usr

/local

/nginx

/conf

/nginx

.conf syntax

isok

configuration file

/usr

/local

/nginx

/conf

/nginx

.conf test

issuccessful

如果配置有問題就需要檢查下哪兒有語法問題,如果沒有問題,需要執行下面命令,讓nginx重新載入配置檔案。

/usr/

local

/nginx

/sbin

/nginx

-s reload

如下配置檔案

location 

/

上面配置中禁止了192.168.1.1,允許其他內網網段,然後deny all禁止其他所有ip。

首先執行下面的命令:

cd 

/usr

/local

/nginx

/html

vi error403

.html

然後輸入403的檔案內容,例如:

your ip address is blocked. if you this an error, please contact webmaster with your ip at [email protected]

如果啟用了ssi,可以在403中顯示被封的客戶端ip,如下:

your

ip address

isblocked

.

儲存error403檔案,然後開啟nginx的配置檔案vi nginx.conf,在server配置節內新增下面內容

# redirect server error pages to the static page

error_page

403/

error403

.html

;location =/

error403

.html

然後儲存配置檔案,通過nginx -t命令測試配置檔案是否正確,若正確通過nginx -s reload載入配置。

封美國的ip段

wget有了國家的所有 ip 位址,要想遮蔽這些 ip 就很容易了,直接寫個指令碼逐行讀取 cn.zone 檔案並加入到 iptables 中 bin bash block traffic from a specific country written by vpsee.com country us...

Nginx 禁止某個IP或者IP段訪問的方法

在 執行過程中,我們有的時候需要對某個ip或者ip段進行封禁,禁止ip訪問本伺服器,如果伺服器的環境用的是nginx,下面我們來看看nginx如何禁止某個ip訪問!首先在nginx的conf目錄下建立名為blocksip.conf配置檔案 然後用vim開啟blocksip.conf檔案,寫入以下規則...

禁用IP的mysql php設計

禁用ip是安全的一部份。下面就分析下禁止ip的php mysql的程式設計,不足之處,請大家提出意見。就來個簡單的例子來說明一下。create table banned ip start int 10 not null default 0 ip end int 10 not null default...