nginx的访问控制
一、基于Basic Auth认证与基于IP的访问控制
一、基于Basic Auth认证
Nginx提供HTTP的Basic Auth功能,配置了Basic Auth之后,需要输入正确的用户名和密码之后才能正确的访问网站。
1、安装httpd-tools,用htpasswd来生成密码信息
首先要安装httpd-tools,在httpd-tools中包含了htpasswd命令。
yum install -y httpd-tools
2、创建一个用户,然后基于这个用户通过htpasswd命令生成用户名及对应密码数据库文件
#创建用户
useradd webuser #创建密码管理目录
mkdir -p /etc/nginx/auth/ #创建密码
# htpasswd -c /etc/nginx/auth/passwd.db webuser //创建认证信息,webuser 为认证用户名
New password: ******* //输入认证密码 web@user
Re-type new password: ******** //再次输入认证密码 web@user
Adding password for user webuser #修改网站认证数据库权限
chmod /etc/nginx/auth/passwd.db #修改网站认证数据库属主和属组
chown root:root /etc/nginx/auth/passwd.db #查看通过htpasswd生成的密码为加密格式
#cat /etc/nginx/auth/passwd.db
wyl:r5IXRXWSmlBk6
2、编辑nginx的配置文件
server {
listen ;
server_name localhost;
client_max_body_size 151m;
location / {
auth_basic "s1"; #虚拟主机认证命名
auth_basic_user_file /etc/nginx/auth/passwd.db; #虚拟主机用户名密码认证数据库
proxy_pass http://10.0.0.10:8088; #访问
}
}
3、重启nginx
nginx -s reload
4、访问测试
需要输入密码和账号,输入正确的用户名和密码之后,才可以访问相应的内容。
二、基于IP的访问控制
通过IP进行访问控制基于nginx模块ngx_http_access_module
1、模块安装
nginx中内置ngx_http_access_module,除非编译安装时指定了–without-http_access_module
2、指令
1、allow
语法: allow address | CIDR | unix: | all;
默认值: -
配置段: http, server, location, limit_except
允许某个ip或者一个ip段访问。如果指定unix:,那将允许socket的访问。
2、deny
语法:deny address | CIDR | unix: | all;
默认值: -
配置段: http, server, location, limit_except
禁止某个ip或者一个ip段访问.如果指定unix:,那将禁止socket的访问
3、示例
location / {
deny 192.168.1.1;
allow 192.168.1.0/;
allow 10.1.1.0/;
allow :0db8::/;
deny all;
}
从上到下的顺序,类似iptables。匹配到了便跳出。如上的例子先禁止了192.16.1.1,接下来允许了3个网段,其中包含了一个ipv6,最后未匹配的IP全部禁止访问。
被deny的将返回403状态码。
nginx的访问控制的更多相关文章
- Nginx IP访问控制,只允许指定的IP地址访问
Nginx可以进行IP访问控制,配置指定的IP地址访问服务器网站 今天领导提出一个新的业务需求,网站上线时让外部用户在上线时间段访问到的页面是维护页面,公司内部员工在上线时段可用正常访问公司的网站. ...
- Nginx详解九:Nginx基础篇之Nginx的访问控制
基于IP的访问控制:http_access_module 不允许指定网段的用户访问:配置语法:deny address | CIDR | unix: | all;默认状态:-配置方法:http.ser ...
- 基于Nginx实现访问控制、连接限制
0 前言 Nginx自带的模块支持对并发请求数进行限制, 还有对请求来源进行限制.可以用来防止DDOS攻击.阅读本文须知道nginx的配置文件结构和语法. 1. 默认配置语法 nginx.conf作为 ...
- nginx之访问控制http_access_module与http_auth_basic_module
http_access_module 作用 基于IP的访问控制 语法 使用 局限性 解决办法 1. http_x_forwarded_for http_auth_basic_module 作用 基于用 ...
- 全面掌握Nginx配置+快速搭建高可用架构 一 Nginx的访问控制
语法 示例 allow 127.0.0.1; deny all; 缺点:局限性 如果通过代理就可以绕过访问限制,限制不准确 解决 1. http_x_forwarded_for 2. 结合geo模块作 ...
- LNMP配置——Nginx配置 ——访问控制
#vi /usr/local/nginx/conf/vhost/test.com.conf 写入: server { listen 80; server_name test.com test1.com ...
- nginx 请求限制和访问控制
请求限制 限制主要有两种类型: 连接频率限制: limit_conn_module 请求频率限制: limit_req_module HTTP协议的连接与请求 HTTP协议是基于TCP的,如果要完成一 ...
- 006.Nginx访问控制
一 Nginx连接限制 1.1 HTTP协议的连接与请求 HTTP是建立在TCP, 一次HTTP请求需要先建立TCP三次握手(称为TCP连接),在连接的基础上再进行HTTP请求. HTTP请求建立在一 ...
- nginx应用总结(1)--基础认识和应用配置
在linux系统下使用nginx作为web应用服务,用来提升网站访问速度的经验已五年多了,今天在此对nginx的使用做一简单总结. 一.nginx服务简介Nginx是一个高性能的HTTP和反向代理服务 ...
随机推荐
- [原]openstack-kilo--issue(二十一) instance can't get ip 虚拟机不能得到ip(2)
===问题点==== 在使用vlan模式部署compute节点的时候出现了下面的错误:在controller节点的dhcp-agent.log中 2017-01-22 20:19:34.178 241 ...
- java注解和反射学习
spring框架很多地方都应用了注解,如@controller,所以要学会自定义注解及注解处理器. Class<?> cl=Class.froName(className) //通过类名加 ...
- day_5.14 py 飞机大战Demo
飞机未完,继续做 2018-5-14 21:05:45 明天继续 循环里面的坑; 删除列表元素后循环了打印的不一样,主要是比如相邻的删除了,33,44 删除33 循环一次后44跑到33位置 ...
- win10 开启蓝 由于其配置信息(注册表中的)不完整或已损坏
在管理员命令提示符下键入以下命令: Dism /Online /Cleanup-Image /ScanHealth 这条命令将扫描全部系统文件并和官方系统文件对比,扫描计算机中的不一致情况. Dism ...
- NFS文件服务器搭建
NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客户端应用可 ...
- Kernel parameter requirements ( Linux DB2)
Kernel parameter requirements ( Linux DB2) https://www.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/ ...
- [No0000179]改善C#程序的建议2:C#中dynamic的正确用法
dynamic是FrameWork4.0的新特性.dynamic的出现让C#具有了弱语言类型的特性.编译器在编译的时候不再对类型进行检查,编译期默认dynamic对象支持你想要的任何特性.比如,即使你 ...
- [No0000C8]英特尔快速存储IRST要不要装
IRST (英特尔快速存储技术)Intel Rapid Storage Technology(简称IRST)又称英特尔快速存储技术. Intel Rapid Start Technolog同样是简称( ...
- /etc/apt/sources.list" E212: Can't open file for writing解决方案
:w !sudo tee % > /dev/null 解决.
- winform进度条
参考资料: http://www.cnblogs.com/zzy0471/archive/2010/12/12/1903602.html http://www.cnblogs.com/haogj/ar ...