nginx中封禁ip和允许内网ip访问的实现示例


Posted in Servers onMarch 17, 2022

Nginx不仅仅只是一款反向代理和负载均衡服务器,它还能提供很多强大的功能,例如:限流、缓存、黑白名单和灰度发布等等,我们先来了解一下nginx如何封禁ip和允许内网ip访问。

一、语法

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;

二、封禁ip

假定nginx的目录在/usr/local/nginx/
首先要建一个封ip的配置文件blockips.conf,然后在文件中输入要封的ip 

deny 192.168.4.3; 
deny 31.42.145.0/24; 
deny 51.12.35.0/24;

然后保存此文件

并且打开nginx.conf文件,在http配置节内添加下面一行配置:

http {
    # 其他配置
 
    include blockips.conf;
}

测试现在的nginx配置文件是否是合法

/usr/local/nginx/sbin/nginx -t

如果配置没有问题,就会输出

the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok 
configuration file /usr/local/nginx/conf/nginx.conf test is successful

如果配置有问题就需要检查下哪儿有语法问题
如果没有问题,需要执行下面命令,让nginx重新载入配置文件 

/usr/local/nginx/sbin/nginx -s reload

三、仅内网IP访问

配置如下

下面配置中禁止了192.168.1.1,允许其他内网网段,然后deny all禁止其他所有ip。

location / { 
  # block one workstation 
  deny    192.168.1.1; 
  # allow anyone in 192.168.1.0/24 
  allow   192.168.1.0/24; 
  # drop rest of the world 
  deny    all; 
}

到此这篇关于nginx中封禁ip和允许内网ip访问的实现示例的文章就介绍到这了,更多相关nginx封禁ip和允许内网ip访问 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
nginx location中多个if里面proxy_pass的方法
Mar 31 Servers
nginx简单配置多个server的方法
Mar 31 Servers
nginx搭建图片服务器的过程详解(root和alias的区别)
Mar 31 Servers
Mac环境Nginx配置和访问本地静态资源的实现
Mar 31 Servers
nginx实现动静分离的方法示例
Nov 07 Servers
Nginx源码编译安装过程记录
Nov 17 Servers
Kubernetes关键组件与结构组成介绍
Mar 31 Servers
IIS服务器中设置HTTP重定向访问HTTPS
Apr 29 Servers
Apache SeaTunnel实现 非CDC数据抽取
May 20 Servers
windows server 2012安装FTP并配置被动模式指定开放端口
Jun 10 Servers
centos环境下nginx高可用集群的搭建指南
Jul 23 Servers
windows server2012 R2下安装PaddleOCR服务的的详细步骤
Sep 23 Servers
Apache Linkis 中间件架构及快速安装步骤
关于Nginx中虚拟主机的一些冷门知识小结
Mar 03 #Servers
nginx负载功能+nfs服务器功能解析
Apache Pulsar集群搭建部署详细过程
Feb 12 #Servers
详解nginx安装过程并代理下载服务器文件
Feb 12 #Servers
nginx从安装到配置详细说明(安装,安全配置,防盗链,动静分离,配置 HTTPS,性能优化)
Nginx性能优化之Gzip压缩设置详解(最大程度提高页面打开速度)
Feb 12 #Servers
You might like
typecho插件编写教程(四):插件挂载
2015/05/28 PHP
Laravel 的数据库迁移的方法
2017/07/31 PHP
PHP函数按引用传递参数及函数可选参数用法示例
2018/06/04 PHP
php微信公众号开发之图片回复
2018/10/20 PHP
PHP远程连接oracle数据库操作实现方法图文详解
2019/04/11 PHP
JavaScript中yield实用简洁实现方式
2010/06/12 Javascript
解决js正则匹配换行问题实现代码
2012/12/10 Javascript
整理的比较全的event对像在ie与firefox浏览器中的区别
2013/11/25 Javascript
Jquery获得控件值的三种方法总结
2014/02/13 Javascript
AngularJS基础 ng-keyup 指令简单示例
2016/08/02 Javascript
浅谈Angularjs link和compile的使用区别
2016/10/21 Javascript
详解vue-router 2.0 常用基础知识点之router-link
2017/05/10 Javascript
ionic实现底部分享功能
2017/05/11 Javascript
jQuery操作css样式
2017/05/15 jQuery
详解vue.js移动端配置flexible.js及注意事项
2019/04/10 Javascript
小程序封装路由文件和路由方法(5种全解析)
2019/05/26 Javascript
vue和小程序项目中使用iconfont的方法
2020/05/19 Javascript
vue 图片裁剪上传组件的实现
2020/11/12 Javascript
Python 实现简单的电话本功能
2015/08/09 Python
python解决网站的反爬虫策略总结
2016/10/26 Python
windows下安装Python和pip终极图文教程
2017/03/05 Python
python 解决flask uwsgi 获取不到全局变量的问题
2019/12/22 Python
使用Python爬虫库requests发送表单数据和JSON数据
2020/01/25 Python
Python ORM编程基础示例
2020/02/02 Python
使用Python实现牛顿法求极值
2020/02/10 Python
Python引入多个模块及包的概念过程解析
2020/09/21 Python
python基于pygame实现飞机大作战小游戏
2020/11/19 Python
如何设置PyCharm中的Python代码模版(推荐)
2020/11/20 Python
python实现简单的井字棋游戏(gui界面)
2021/01/22 Python
css3实现信纸/同学录效果的示例代码
2018/12/11 HTML / CSS
css3一款3D字体带阴影效果的实现步骤
2013/03/20 HTML / CSS
李宁官方网店:中国运动品牌
2017/11/02 全球购物
英国儿童鞋和靴子:Start-Rite
2019/05/06 全球购物
关于Assembly命名空间的三个面试题
2015/07/23 面试题
《槐乡五月》教学反思
2014/04/25 职场文书
SQL Server基本使用和简单的CRUD操作
2021/04/05 SQL Server