Nginx訪問控制 allow、deny,禁止或允許某些IP訪問

Nginx訪問控制 allow、deny,禁止或允許某些IP訪問

用 LNMP 搭建的環境,如果想要禁止某個IP訪問,或者是禁止訪問某個目錄怎么辦呢?可以通過 Nginx 模塊 ngx_http_access_module 來設置允許某些訪問。 Nginx 模塊 ngx_http_access_module 的指令 deny 和 allow 可以禁止或是允許對網站的資源訪問。具體方法如下:

首先,需要安裝 ngx_http_access_module 模塊

一般情況下,安裝 Nginx 就已經內置在了nginx中,除非你安裝中使用了 --without-http_access_module 。如果你還沒安裝過 Nginx ,那么請參考相關的安裝教程。

其次,需要了解 allow 和 deny 指令的作用

allow

語法: allow address | CIDR | unix: | all;

默認值: —

配置段: http, server, location, limit_except

允許某個ip或者一個ip段訪問.如果指定unix:,那將允許socket的訪問.注意:unix在1.5.1中新加入的功能,如果你的版本比這個低,請不要使用這個方法。

deny

語法: deny address | CIDR | unix: | all;

默認值: —

配置段: http, server, location, limit_except

禁止某個ip或者一個ip段訪問.如果指定unix:,那將禁止socket的訪問.注意:unix在1.5.1中新加入的功能,如果你的版本比這個低,請不要使用這個方法。

然后,開始配置 Nginx 訪問實例


location / {
  deny  192.168.1.1;
  allow 192.168.1.0/24;
  allow 10.1.1.0/16;
  allow 2001:0db8::/32;
  deny  all;
}

從上到下的順序,類似iptables。匹配到了便跳出。如上的例子先禁止了192.16.1.1,接下來允許了3個網段,其中包含了一個ipv6,最后未匹配的IP全部禁止訪問。

參考資料:運維時間

相關推薦

發表評論

微信掃一掃

微信掃一掃

微信掃一掃,分享到朋友圈

Nginx訪問控制 allow、deny,禁止或允許某些IP訪問
返回頂部

顯示

忘記密碼?

顯示

顯示

獲取驗證碼

Close
3d组六技巧