Nginx-http_auth_basic_module使用

文章目录


前言

nginx可以通过HTTP Basic Authutication协议进行用户名和密码的认证。


一、ngx_http_auth_basic_module

生效阶段: NGX_HTTP_ACCESS_PHASE

模块默认编译进nginx,通过--without-http_auth_basic_module禁用。

二、指令

1.auth_basic

使用示例:

bash 复制代码
Syntax:	auth_basic string | off;
Default:	
auth_basic off;
Context:	http, server, location, limit_except

1.auth_basic_user_file

使用示例:

bash 复制代码
Syntax:	auth_basic_user_file file;
Default:	---
Context:	http, server, location, limit_except

示例

生成密码文件

bash 复制代码
Usage:
    htpasswd [-cmdpsD] passwordfile username
    htpasswd -b[cmdpsD] passwordfile username password

    htpasswd -n[mdps] username
    htpasswd -nb[mdps] username password
 -c  Create a new file. # 创建一个新的文件
 -n  Don't update file; display results on stdout. # 直接输出产生的结果,无需写入或者更新文件。
 -m  Force MD5 encryption of the password.#  采用md5哈希
 -d  Force CRYPT encryption of the password (default).
 -p  Do not encrypt the password (plaintext).
 -s  Force SHA encryption of the password.
 -b  Use the password from the command line rather than prompting for it. # 密码会放在命令行里。
 -D  Delete the specified user. # 删除某个账户
# 生成密码 
htpasswd -cb  auth.pass  admin admin@6688
#查看
[root@test20 nginx]# cat auth.pass 
admin:$apr1$sZKLzS5n$DA2E0qxK3Rap7QmyWzKIR/

配置basic认证

bash 复制代码
[root@test20 ~]# cat /etc/nginx/conf.d/access.conf 
server {
	server_name access.test.io;
	root html/;
	location / {
		auth_basic "auth_basic认证";
		auth_basic_user_file auth.pass;
	}
}

浏览器验证



总结

basic认证在一些场景还是有用的,但是basic毕竟是http协议下的,可以通过抓包获取到密码。

相关推荐
进击的阿尔法猿13 分钟前
docker
运维·docker·容器
北京阿法龙科技有限公司21 分钟前
AR 虚实叠加技术在工业设备运维中的实现流程方案
运维·ar
刘一说28 分钟前
CentOS 系统 Java 开发测试环境搭建手册
java·linux·运维·服务器·centos
木易双人青8 小时前
01-Docker-简介、安装与使用
运维·docker·容器
专注API从业者9 小时前
Python + 淘宝 API 开发:自动化采集商品数据的完整流程
大数据·运维·前端·数据挖掘·自动化
Lovyk10 小时前
Linux 正则表达式
linux·运维
ac.char11 小时前
在CentOS系统中查询已删除但仍占用磁盘空间的文件
linux·运维·centos
中科米堆13 小时前
中科米堆CASAIM自动化三维测量设备测量汽车壳体直径尺寸
运维·自动化·汽车·视觉检测
缘华工业智维14 小时前
CNN 在故障诊断中的应用:原理、案例与优势
大数据·运维·cnn
开航母的李大15 小时前
软件系统运维常见问题
运维·服务器·系统架构·运维开发