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协议下的,可以通过抓包获取到密码。

相关推荐
乘云数字DATABUFF2 小时前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Goodbye2 天前
大模型无状态架构:从 HTTP 协议到 Harness AI 工程的深度解析
http
荣--2 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森2 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜3 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB4 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
XIAOHEZIcode5 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220706 天前
如何搭建本地yum源(上)
运维
ping某7 天前
为什么 Nginx 明明监听了 80,转发后端时却用了 4xxxx 端口?
后端·nginx
霜落长河8 天前
抛弃TCP改用UDP,HTTP3怎么了?
http