在某些情况下,需要对某些内容的访问进行限制,在Nginx中也提供了这样的限制措施,以下是几种常见的限制措施:

  1.访问身份验证

  在Nginx的插件模块中有一个模块ngx_http_auth_basic_module可以要求用户进行身份认证,默认情况下nginx已经安装了这个模块 。可通过命令./nginx -V查看是否有此模块。

  安装后只需要进行以下步骤即可实现:

  首先创建密钥文件:

  yum install -y httpd-tools
  htpasswd -bc /usr/nginx/conf/htpasswd.users username password
cat /usr/nginx/conf/htpasswd.users

  配置nginx:

  server
  {
  listen ;
  server_name 192.168.1.1;
  auth_basic "Restricted Access";
  auth_basic_user_file /usr/nginx/conf/htpasswd.users;
  location /
  {
  proxy_pass http://192.168.1.2:5601;
  }
  }

  配置完成后重启nginx服务即可。正常情况下会出现以下输入框输入设置的用户名和密码即可:

  

  

  2.限制IP访问

  在nginx.conf中添加以下配置可实现全局限制,也可将此配置放到server中或location中,放到server中只针对站点进行限制,location中只针对匹配的url进行限制:

  allow 192.168.1.1;  #允许的IP
  deny 192.168.1.2;
  deny all;

  可添加多条allow或deny,deny all结尾表示除了上面allow的其他都禁止,deny all;deny 一定要加一个ip,否则直接跳转到403,下面的规则将不起作用。

  

  3.限制某些ip在同一时间段内的访问次数

  nginx可以通过HttpLimitReqModul和HttpLimitZoneModule配置来限制ip在同一时间段的访问次数.

  HttpLimitReqModul用来限制连单位时间内连接数的模块,使用limit_req_zone和limit_req指令配合使用来达到限制。一旦并发连接超过指定数量,就会返回503错误。HttpLimitConnModul用来限制单个ip的并发连接数,使用limit_zone和limit_conn指令.

  这两个模块的区别前一个是对一段时间内的连接数限制,后者是对同一时刻的连接数限制.

  园子里有作者已经有过详细介绍,请参考:https://www.cnblogs.com/aoniboy/p/4730354.html

Nginx设置身份验证的更多相关文章

  1. 通过批处理 安装 mongodb和设置身份验证

    1.首先需要 mongodb.msi安装包 2.mongodb的配置文件mongod.cfg 内容如下: systemLog: destination: file path: "D:/mon ...

  2. 使用nginx代理kibana并设置身份验证

    1.在es-sever上安装nginx #wget http://nginx.org/download/nginx-1.8.1.tar.gz #tar xvf nginx-1.8.1.tar.gz # ...

  3. nginx 配置身份验证 http_auth_basic_module

    ngx_http_auth_basic_module模块实现访问必须输入用户名和密码 正确情况向访问,这为我们一些重要资源访问增添了一道安全锁. 语法:     auth_basic_user_fil ...

  4. 证明你是你——快速开启Windows Azure多重身份验证

    中国版Windows Azure的多重身份验证(Multi-Factor Authentication)功能已经开放.这个功能说白了就是要“证明你是你”.目前可以支持以下几种验证方式: 手机,短信验证 ...

  5. Asp.net 身份验证

    Forms 验证方式对基于用户的验证授权提供了很好的支持,可以通过一个登录页面验证用户的身份,将此用户的身份发回到客户端的Cookie,之后此用户再访问这个 web应用就会连同这个身份Cookie一起 ...

  6. 【翻译】使用Vuex解决Vue中的身份验证

    翻译原文链接:https://scotch.io/tutorials/handling-authentication-in-vue-using-vuex 我的翻译小站:https://www.zcfy ...

  7. asp.net 简单的身份验证

    1 通常我们希望已经通过身份验证的才能够登录到网站的后台管理界面,对于asp.net 介绍一种简单的身份验证方式 首先在webconfig文件中添加如下的代码 <!--身份验证--> &l ...

  8. 【asp.net core 系列】13 Identity 身份验证入门

    0. 前言 通过前两篇我们实现了如何在Service层如何访问数据,以及如何运用简单的加密算法对数据加密.这一篇我们将探索如何实现asp.net core的身份验证. 1. 身份验证 asp.net ...

  9. 微软如何绑定二次验证码_虚拟MFA_两步验证_身份验证?

    1.登陆Microsoft账户,找到二次验证绑定界面 进入Microsoft,点右上角用户头像进行登陆.之后点“安全性”. 之后点击[更多安全选项] 找到“身份验证应用”(注意不是“双重验证”).点击 ...

随机推荐

  1. Vue中的$set的使用

    在我们使用vue进行开发的过程中,可能会遇到一种情况:当生成vue实例后,当再次给数据赋值时,有时候并不会自动更新到视图上去: 当我们去看vue文档的时候,会发现有这么一句话:如果在实例创建之后添加新 ...

  2. js取整并保留两位小数的方法

    js 四舍五入函数 toFixed(),里面的参数 就是保留小数的位数.注意 toFixed()方法只针对数字类型,如果是字符类型需要使用Number()等方法先转换数字类型再使用 document. ...

  3. Sql Server——约束

    约束是什么: 每个人都在网站或者APP上注册过账号,在注册账号时会限制用户名.密码等格式,如果格式不对就不能注册.在数据库中我们可以通过约束来进行限制,超过约束范围的数据就不能写入. 约束的种类: 主 ...

  4. Spark算子--countByKey

    转载请标明出处http://www.cnblogs.com/haozhengfei/p/1633ffc63e2c925e930adadc9528c830.html  countByKey--Actio ...

  5. 阿里云邮件服务器怎么设置才能在QQ邮箱访问,互发邮件?

    必须要在阿里云邮上打开IMAP和SMTP IMAP能够代发代收.在线更改.垃圾拦截,比POP3好: 记住打开的协议号: IMAP:143 带SSL:993 SMTP: 25 带SSL:465 前提是能 ...

  6. LNMP一键安装包

    http://www.aliweihu.com/333.html LNMP一键安装包是什么? LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat.Debian/Ub ...

  7. Struts2中Action接收参数的方法主要有以下三种:

    Struts2中Action接收参数的方法主要有以下三种: 1.使用Action的属性接收参数(最原始的方式):     a.定义:在Action类中定义属性,创建get和set方法:     b.接 ...

  8. mybatis_SQL映射(3)

    文章摘录自:http://blog.csdn.net/y172158950/article/details/17304645 1. 表关联 a) 嵌套查询(传说中的1+N问题) <resultM ...

  9. 【笔记】css 实现宽度自适应屏幕 高度自适应宽度

    如果说宽高自适应屏幕尺寸那么大家可能会想到 div{ width: 100%; height: 100% } 但是如果我要自适应屏幕尺寸的同时还要变成正方形呢?(高度和宽度相等而高度不能写死) 那就要 ...

  10. 图片文档倾斜矫正算法 附完整c代码

    2年前在学习图像算法的时候看到一个文档倾斜矫正的算法. 也就是说能将一些文档图像进行旋转矫正, 当然这个算法一般用于一些文档扫描软件做后处理 或者用于ocr 文字识别做前处理. 相关的关键词: 抗倾斜 ...