文档章节

nginx访问控制

我是希希呀
 我是希希呀
发布于 05/31 16:18
字数 577
阅读 2
收藏 0

nginx的访问控制主要分为两类:

  • 基于IP的访问控制 http_access_module
  • 基于用户的信任登录 http_auth_basic_module

1.基于IP的访问控制http_access_module

语法

1.allow
Syntax:	allow address | CIDR | unix: | all;
Default: —
Context: http, server, location, limit_except
2.deny
Syntax:	deny address | CIDR | unix: | all;
Default: —
Context: http, server, location, limit_except
名词解释
address  指IP地址(192.168.1.1)
CIDR     指网段(192.168.1.0/24)
unix     主要是在linux和unix用到的socket访问
all      所有人访问
示例配置

原配置

location / {
    root   html;
    index  index.html index.htm;
}

1.禁止1.1.1.1(这里指的是路由器上的IP地址)访问,允许所有ip访问

location / { 
	root   /opt/app/code;
	deny   1.1.1.1;
	allow  all;
	index  index.html index.htm;
} 

2.允许1.1.1.0/24网段ip访问,禁止所有ip访问

location ~ /{
	root   /opt/app/code;
	allow 1.1.1.0/24;
	deny all;
	index  index.html index.htm;
}

allow 和 deny是配合使用的。

局限性

如果客户端使用代理来访问网站,这样就不能保证禁止或允许某些ip访问。

2.基于用户的信任登录 http_auth_basic_module

语法

1.auth_basic
Syntax:	auth_basic string | off;
Default: auth_basic off;
Context: http, server, location, limit_except
2.auth_basic_user_file
Syntax:	auth_basic_user_file file;
Default: —
Context: http, server, location, limit_except

示例配置

新建一个密码文件,名称为auth_conf,用户名为xixi,回车后输入密码123456,确认密码

安装htpasswd

htpasswd是Apache密码生成工具,Nginx支持auth_basic认证,因此我门可以将生成的密码用于Nginx中,输入一行命令即可安装:yum -y install httpd-tools ,参数如下:

-c 创建passwdfile.如果passwdfile 已经存在,那么它会重新写入并删去原有内容.
-n 不更新passwordfile,直接显示密码
-m 使用MD5加密(默认)
-d 使用CRYPT加密(默认)
-p 使用普通文本格式的密码
-s 使用SHA加密
-b 命令行中一并输入用户名和密码而不是根据提示输入密码,可以看见明文,不需要交互
-D 删除指定的用户
$ htpasswd -c ./auth_conf xixi

修改配置文件

location / {
    root   html;
    auth_basic "Auth access test!input your passward!";
	auth_basic_user_file /etc/nginx/auth_conf;
    index  index.html index.htm;
}

重启服务之后 访问web就需要输入密码

配置多个用户 去掉-c

© 著作权归作者所有

我是希希呀
粉丝 1
博文 25
码字总数 10195
作品 0
杭州
私信 提问
LNMP架构防盗链、访问控制、解析php、代理的设置

11月28日任务 12.13 Nginx防盗链 12.14 Nginx访问控制 12.15 Nginx解析php相关配置 12.16 Nginx代理 Nginx防盗链 修改虚拟主机配置文件 验证效果 使用不在白名单内的referer访问,返回的状态...

robertt15
2018/11/28
16
0
nginx 访问控制 防盗链

访问控制功能分为基于用户的访问控制及基于IP的访问控制 基于用户的访问控制 [root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf location / { authbasic "input username and pass...

ytliu2010
2017/02/09
0
0
运维之我的nginx短篇教程

第一章 nginx安装基本引导和进程信号 02-nginx IO模型 03-nginx负载均衡 04-nginx的root和alias区别 05-nginx limitreq和limitconnzone 06-nginx访问控制“限制ip”,“限制用户名” 07-ngi...

qq850900633
2017/01/23
0
0
nginx防盗链-访问控制-解析php配置-nginx代理

nginx防盗链: 1.编辑虚拟主机配置文件: vim /usr/local/nginx/conf/vhost/test.com.conf #在server{}里添加以下配置: 2.检查并重新加载配置: /usr/local/nginx/sbin/nginx -t;/usr/loca...

ZHENG-JY
2018/08/15
8
0
2018-3-15 Linux学习笔记

12.13 Nginx防盗链 编辑虚拟主机配置文件 vim /usr/local/nginx/conf/vhost/test.com.conf 配置如下: location ~ ^.+.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ { expir......

XiaoluHuang
01/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

面向海量数据的极致成本优化-云HBase的一体化冷热分离

前言 随着业务的持续发展,业务数据库存储量会持续增长。通常数据量过亿时,就需要考虑做分库分表,或者选择扩展能力更好的NOSQL/NewSQL数据库,如HBase就可以单表支持PB级数据,足够满足大多...

阿里云官方博客
33分钟前
4
0
最新最全国内外架构开源技术干货资料

大家好,废话不多说,整理了精心收集了各类资源。 声明,如侵犯个人利益,请联系小编,会立即删除相关资料。 领取方式在文末 求转发列表 好了,由于资源太多啦,就不一一列举了。 大家按照下...

泥瓦匠BYSocket
35分钟前
6
0
springmvc jsp访问不了css

在jsp中引入css,一直报404错误,直接访问css,也无法访问 将css文件移出WEB-INF,因为处于安全性考虑,这个目录禁止外部访问。 当引用css时,可以直接用绝对路径${pageContext.request.conte...

沉迷于编程的小菜菜
37分钟前
4
0
android 系统版本 9.1网络请求遇到坑

网络请求异常: E/http: CLEARTEXT communication to plat.xunlinkeji.cn not permitted by network security policy 在res下新建一个xml目录 创建名为network_security_config.xml 文件 ,该......

MrLins
55分钟前
5
0
Istio 1.3 发布,HTTP 遥测不再需要 Mixer

> 原文链接:Istio 1.3 发布,HTTP 遥测不再需要 Mixer Istio 是 Google、IBM 和 Lyft 联合开源的服务网格(Service Mesh)框架,旨在解决大量微服务的发现、连接、管理、监控以及安全等问题...

米开朗基杨
今天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部