最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx配置allow和deny指令的使用

 更新時(shí)間:2025年05月12日 10:08:05   作者:XMYX-0  
在Nginx配置中,allow和deny指令用于基于IP地址的訪問控制,幫助管理員靈活管理資源訪問權(quán)限,具有一定的參考價(jià)值,感興趣的可以了解一下

介紹

在 Nginx 配置中,allow 和 deny 指令用于基于 IP 地址的訪問控制,幫助管理員靈活管理資源訪問權(quán)限。本文將結(jié)合配置語(yǔ)法、優(yōu)先級(jí)規(guī)則、應(yīng)用場(chǎng)景及優(yōu)化技巧,全面解析這兩個(gè)指令的使用方法。

  • allow:允許指定的 IP 地址或網(wǎng)段訪問。
  • deny:禁止指定的 IP 地址或網(wǎng)段訪問。

指令簡(jiǎn)介與基本語(yǔ)法

allow 和 deny 屬于 ngx_http_access_module 模塊,默認(rèn)已集成在 Nginx 中(除非編譯時(shí)通過 --without-http_access_module 禁用)。其語(yǔ)法如下:

allow <IP地址|CIDR|unix: | all>;
deny <IP地址|CIDR|unix: | all>;
  • IP地址:支持 IPv4(如 192.168.1.1)和 IPv6(如 2001:0db8::/32)。
  • CIDR:表示 IP 段(如 192.168.1.0/24)。
  • unix::允許或禁止 Unix 域套接字訪問(需 Nginx 1.5.1+)。
  • all:匹配所有地址。

優(yōu)先級(jí)與執(zhí)行順序

Nginx 采用 “順序優(yōu)先,首次匹配” 的規(guī)則:

  • 按配置順序逐條檢查規(guī)則,匹配到第一條后立即生效,后續(xù)規(guī)則忽略。
  • 默認(rèn)允許所有訪問,除非顯式使用 deny all; 全局拒絕。

示例分析

location / {
    deny 192.168.1.1;        # 拒絕單個(gè) IP
    allow 192.168.1.0/24;    # 允許整個(gè)網(wǎng)段
    deny all;                # 拒絕其他所有 IP
}
  • 192.168.1.1 匹配第一條 deny,直接拒絕。
  • 網(wǎng)段內(nèi)其他 IP(如 192.168.1.2)匹配 allow 后放行。
  • 非網(wǎng)段 IP(如 10.0.0.1)最終被 deny all 拒絕。

典型應(yīng)用場(chǎng)景

限制管理后臺(tái)訪問

location /admin {
    allow 192.168.1.0/24;
    deny all;
    error_page 403 /custom_403.html;  # 自定義錯(cuò)誤頁(yè)面
}

僅允許內(nèi)網(wǎng)訪問 /admin,其他 IP 返回 403 并跳轉(zhuǎn)至自定義頁(yè)面。

白名單控制 API 接口

location /api {
    allow 203.0.113.5;
    deny all;
    proxy_pass http://backend;
}

僅允許特定 IP 訪問 API,防止未授權(quán)調(diào)用。

按路徑差異化控制

location /public {
    allow all;
}

location /private {
    allow 10.0.0.0/8;
    deny all;
}

不同路徑設(shè)置獨(dú)立的訪問策略,兼顧靈活性與安全性。

高級(jí)配置技巧

反向代理環(huán)境下的真實(shí) IP 獲取

當(dāng) Nginx 位于代理后方時(shí),需通過 X-Forwarded-For 獲取真實(shí)客戶端 IP:

set_real_ip_from 10.0.0.0/8;   # 信任的代理服務(wù)器 IP 段
real_ip_header X-Forwarded-For;
real_ip_recursive on;           # 排除可信代理 IP,獲取真實(shí)客戶端 IP

避免誤判代理服務(wù)器 IP 為客戶端地址。

使用 geo 模塊優(yōu)化性能

大規(guī)模 IP 規(guī)則時(shí),geo 模塊可提升匹配效率:

geo $blocked_ip {
    default 0;
    192.168.1.0/24 1;
    10.0.0.5 1;
}

server {
    if ($blocked_ip) {
        return 403;
    }
}

預(yù)定義 IP 匹配狀態(tài),減少動(dòng)態(tài)規(guī)則解析開銷。

動(dòng)態(tài)封禁與自動(dòng)化

結(jié)合 Fail2ban 或 iptables 自動(dòng)封禁惡意 IP:

  • 日志監(jiān)控:配置 Nginx 記錄訪問日志。
  • 規(guī)則聯(lián)動(dòng):Fail2ban 分析日志后動(dòng)態(tài)更新 Nginx 黑名單文件,通過 include 指令加載。

常見問題與避坑指南

規(guī)則順序錯(cuò)誤導(dǎo)致漏洞

錯(cuò)誤示例:

allow all;
deny 192.168.1.1;  # 此規(guī)則失效!

正確寫法應(yīng)先拒絕再允許:

deny 192.168.1.1;
allow all;

反向代理未配置真實(shí) IP

未設(shè)置 real_ip_header 時(shí),allow/deny 可能基于代理服務(wù)器 IP 而非客戶端 IP,導(dǎo)致錯(cuò)誤封禁。

IPv4/IPv6 兼容性問題

若需獨(dú)立控制 IPv6,需顯式指定:

allow 2001:0db8::/32;
deny 2001:0db8::1;

性能優(yōu)化建議

  • 合并規(guī)則:使用 CIDR 減少條目,如將多個(gè) /24 合并為 /16。
  • 分文件管理:通過 include 引入外部規(guī)則文件,提升可維護(hù)性:
    include /etc/nginx/conf.d/ip-whitelist.conf;
    deny all;
    
  • 避免過度使用 ifif 指令可能引發(fā)性能問題,優(yōu)先在 location 或 server 塊中配置規(guī)則。

總結(jié)

allow 和 deny 是 Nginx 實(shí)現(xiàn) IP 訪問控制的核心指令,需重點(diǎn)注意:

  • 順序決定優(yōu)先級(jí),規(guī)則按從上到下執(zhí)行。
  • 反向代理需配置真實(shí) IP,避免誤判。
  • 性能優(yōu)化:合并規(guī)則、使用 geo 模塊、動(dòng)態(tài)工具聯(lián)動(dòng)。

通過合理設(shè)計(jì)規(guī)則,可有效保護(hù)敏感接口、抵御惡意流量,同時(shí)保持服務(wù)的高效穩(wěn)定。

到此這篇關(guān)于Nginx配置allow和deny指令的使用的文章就介紹到這了,更多相關(guān)Nginx配置allow和deny指令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • nginx之virtual host虛擬主機(jī)的配置實(shí)現(xiàn)

    nginx之virtual host虛擬主機(jī)的配置實(shí)現(xiàn)

    虛擬主機(jī)(vhost)技術(shù)允許一臺(tái)物理服務(wù)器托管多個(gè)獨(dú)立網(wǎng)站或應(yīng)用,每個(gè)虛擬主機(jī)擁有獨(dú)立的域名、配置文件等,實(shí)現(xiàn)資源隔離管理,Nginx服務(wù)器通過配置文件實(shí)現(xiàn)虛擬主機(jī)設(shè)置,感興趣的可以了解一下
    2024-11-11
  • nginx部署前端post請(qǐng)求405?not?allowed問題解決

    nginx部署前端post請(qǐng)求405?not?allowed問題解決

    在配置前端項(xiàng)目的時(shí)候遇到了一個(gè)post請(qǐng)求405 not allowed,簡(jiǎn)單記錄一下如何配置,這篇文章主要給大家介紹了關(guān)于nginx部署前端post請(qǐng)求405?not?allowed問題解決方法,需要的朋友可以參考下
    2023-09-09
  • Nginx 壓縮(gzip、gunzip、gzip_static、send_file)的實(shí)現(xiàn)

    Nginx 壓縮(gzip、gunzip、gzip_static、send_file)的實(shí)現(xiàn)

    在Web應(yīng)用開發(fā)中,優(yōu)化網(wǎng)站速度是一個(gè)非常重要的工作,本文主要介紹了Nginx 壓縮(gzip、gunzip、gzip_static、send_file)的實(shí)現(xiàn),感興趣的可以了解一下
    2024-09-09
  • Nginx 配置 proxy_hide_header 隱藏后端 Server 的版本信息的實(shí)現(xiàn)

    Nginx 配置 proxy_hide_header 隱藏后端 Server&n

    Nginx反向代理場(chǎng)景中,后端服務(wù)常會(huì)在響應(yīng)頭中暴露版本信息,使用proxy_hide_header指令可以在Nginx層將其過濾掉,本文就來(lái)詳細(xì)的介紹一下Nginx隱藏后端 Server 的版本信息的實(shí)現(xiàn),感興趣的可以了解一下
    2026-04-04
  • Nginx配置同一個(gè)域名同時(shí)支持http與https兩種方式訪問實(shí)現(xiàn)

    Nginx配置同一個(gè)域名同時(shí)支持http與https兩種方式訪問實(shí)現(xiàn)

    這篇文章主要介紹了Nginx配置同一個(gè)域名同時(shí)支持http與https兩種方式訪問實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Nginx使用Lua模塊實(shí)現(xiàn)WAF的原理解析

    Nginx使用Lua模塊實(shí)現(xiàn)WAF的原理解析

    waf是通過執(zhí)行一系列針對(duì)HTTP/HTTPS的安全策略來(lái)專門為Web應(yīng)用提供保護(hù)的一款產(chǎn)品,本文重點(diǎn)給大家介紹Nginx使用Lua模塊實(shí)現(xiàn)WAF的原理,需要的朋友參考下吧
    2021-09-09
  • Nginx 服務(wù)器安裝及配置文件詳解介紹

    Nginx 服務(wù)器安裝及配置文件詳解介紹

    這篇文章主要介紹了Nginx 服務(wù)器安裝及配置文件詳解介紹,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2016-11-11
  • Nginx偽靜態(tài)配置和常用Rewrite偽靜態(tài)規(guī)則集錦

    Nginx偽靜態(tài)配置和常用Rewrite偽靜態(tài)規(guī)則集錦

    偽靜態(tài)是一種可以把文件后綴改成任何可能的一種方法,如果我想把php文件偽靜態(tài)成html文件,這種相當(dāng)簡(jiǎn)單的,下面我來(lái)介紹nginx 偽靜態(tài)配置方法有需要了解的朋友可參考。
    2014-06-06
  • 修改Nginx與Apache上傳文件大小限制

    修改Nginx與Apache上傳文件大小限制

    這篇文章主要介紹了修改Nginx與Apache上傳文件大小限制,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2017-10-10
  • nginx?流控使用的項(xiàng)目實(shí)踐

    nginx?流控使用的項(xiàng)目實(shí)踐

    本文主要介紹了nginx?流控使用的項(xiàng)目實(shí)踐
    2024-03-03

最新評(píng)論

澜沧| 海林市| 冷水江市| 津市市| 名山县| 辽阳市| 大连市| 黔东| 玉林市| 西华县| 交城县| 应用必备| 内江市| 阿巴嘎旗| 雅安市| 南充市| 成安县| 本溪| 南召县| 鹤庆县| 锦州市| 丰原市| 垣曲县| 平湖市| 许昌县| 丹江口市| 青阳县| 教育| 仪陇县| 五华县| 枣庄市| 泌阳县| 天气| 宁都县| 和硕县| 广丰县| 双牌县| 当涂县| 阿克陶县| 贵阳市| 莱芜市|