首页 > 系统相关 >Nginx 黑白名单

Nginx 黑白名单

时间:2023-12-12 14:03:51浏览次数:25  
标签:访问 IP xxx 黑白 名单 Nginx 屏蔽 conf 192.177

Nginx做黑白名单机制,主要是通过allow、deny配置项来实现:

allow xxx.xxx.xxx.xxx; # 允许指定的IP访问,可以用于实现白名单。
deny xxx.xxx.xxx.xxx; # 禁止指定的IP访问,可以用于实现黑名单。
要同时屏蔽/开放多个IP访问时,如果所有IP全部写在nginx.conf文件中定然是不显示的,这种方式比较冗余,那么可以新建两个文件BlockIP.conf、WhiteIP.conf:

# --------黑名单:BlockIP.conf---------
deny 192.177.12.222; # 屏蔽192.177.12.222访问
deny 192.177.44.201; # 屏蔽192.177.44.201访问
deny 127.0.0.0/8; # 屏蔽127.0.0.1到127.255.255.254网段中的所有IP访问

# --------白名单:WhiteIP.conf---------
allow 192.177.12.222; # 允许192.177.12.222访问
allow 192.177.44.201; # 允许192.177.44.201访问
allow 127.45.0.0/16; # 允许127.45.0.1到127.45.255.254网段中的所有IP访问
deny all; # 除开上述IP外,其他IP全部禁止访问
分别将要禁止/开放的IP添加到对应的文件后,可以再将这两个文件在nginx.conf中导入:

http{
    # 屏蔽该文件中的所有IP
    include /soft/nginx/IP/BlocksIP.conf; 
 server{
    location xxx {
        # 某一系列接口只开放给白名单中的IP
        include /soft/nginx/IP/blockip.conf; 
    }
 }
}


对于文件具体在哪儿导入,这个也并非随意的,如果要整站屏蔽/开放就在http中导入,如果只需要一个域名下屏蔽/开放就在sever中导入,如果只需要针对于某一系列接口屏蔽/开放IP,那么就在location中导入

 

标签:访问,IP,xxx,黑白,名单,Nginx,屏蔽,conf,192.177
From: https://blog.51cto.com/u_15460722/8786743

相关文章

  • nginx 反向代理实现不同来路IP跳转到不同网站服务器
    http{#定义一个map,将来路IP映射到后端服务器map$remote_addr$backend_server{defaultserver1;192.168.1.1server2;#添加更多的IP地址映射}server{listen80;#使用if语句根据来路IP选择后......
  • Nginx Rewrite
    Nginx RewriteLOCATION常用NGINX正则表达式^:匹配输入字符串的起始位置$:匹配输入字符串的结束位置*:匹配前面的字符零次或多次。如“ol*”能匹配“o”及“ol”、“oll”+:匹配前面的字符一次或多次。如“ol+”能匹配“ol”及“oll”、“olll”,但不能匹配“o”?:匹配前......
  • nginx 安装记录
    可以先更新一下列表:aptupdate安装很简单,直接:aptinstallnginx-y这个步骤直接安装好了不说,还直接将nginx服务给启动起来了。不过这个时候也可以看到其作为systemctl的服务,其路径是处于:/lib/systemd/system/nginx.service的,而非是处于/etc/systemd下的。 它的配置文件......
  • nginx 正则
    坑点ginxlocation正则alias和try_files,存在排斥情况,不能一起使用,要使用root。案例如下#老版本门户前端location^~/assets{alias/usr/share/nginx/homepage_test/assets/;#老版本js、css文件}#nginxlocation正则alias和try_files,存在排斥情......
  • linux下安装nginx
    第一步:压缩包准备压缩包,最好准备一个稳定的版本:下载地址我这边选用的是1.24.0双版本号第二步:解压在相对应的目录下,执行命令:tar-zxvfnginx-1.18.0.tar.gz第三步:配置\编译推荐使用:./configure如有额外的需求执行:./configure--prefix=/usr/local/nginx-1.20.2--with-http_ssl_mo......
  • Web服务器Apache和Nginx的区别
    Apache和Nginx是两种主要Web服务器,Apache和Nginx最核心的区别在于Apache是同步多进程模型,一个连接对应一个进程;而Nginx是异步的,多个连接(万级别)可以对应一个进程。Apache1、apache的rewrite比nginx强大,在rewrite频繁的情况下,用apache2、apache发展到现在,模块超多,基本想......
  • Django笔记四十四之Nginx+uWSGI部署Django以及Nginx负载均衡操作
    本文首发于公众号:Hunter后端原文链接:Django笔记四十四之Nginx+uWSGI部署Django以及Nginx负载均衡操作这一篇笔记介绍如何使用Nginx+uWSGI来部署Django。上一篇笔记中有介绍直接使用uWSGI作为web服务器来部署Django,这一篇笔记介绍如何使用Nginx来部署。使用Ngin......
  • nginx配置php
    usernginx;worker_processes4;work_cpu_affinity0001001001001000;#error_loglogs/error.log;#error_loglogs/error.lognotice;#error_loglogs/error.loginfo;#pidlogs/nginx.pid;events{worker_connections65535;useepoll;......
  • Go-web应用部署的方式——(3)Nginx
    摘要:本系列文章记录了几种Go-web应用的部署方式,记录并解释所有相关的命令。参考:部署Go语言项目的N种方法|李文周的博客(liwenzhou.com) 抛开宝塔面板一键部署的方式,这里记录下手动使用Nginx部署应用的过程,以及前后端是否分离的区别1.安装Nginxsudoyuminstallepel......
  • nginx upstream配置文件
    1.upstream使用upstream指定服务器组进行负载均衡userroot;worker_processes20;error_loglogs/error;pidlogs/nginx.pid;events{worker_connections1024;}http{log_formatmain'$remote_addr-$remote_user[$time_local]"$request"......