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

相关推荐
ulias2124 小时前
Linux系统中的权限问题
linux·运维·服务器
青花瓷5 小时前
Ubuntu下OpenClaw的安装(豆包火山API版)
运维·服务器·ubuntu
问简6 小时前
docker 镜像相关
运维·docker·容器
Dream of maid7 小时前
Linux(下)
linux·运维·服务器
齐鲁大虾7 小时前
统信系统UOS常用命令集
linux·运维·服务器
Benszen7 小时前
Docker容器化技术实战指南
运维·docker·容器
ZzzZZzzzZZZzzzz…7 小时前
Nginx 平滑升级:从 1.26.3 到 1.28.0,用户无感知
linux·运维·nginx·平滑升级·nginx1.26.3·nginx1.28.0
一叶知秋yyds8 小时前
Ubuntu 虚拟机安装 OpenClaw 完整流程
linux·运维·ubuntu·openclaw
斯普信云原生组9 小时前
Prometheus 环境监控虚机 Redis 方案(生产实操版)
运维·docker·容器
safestar201210 小时前
ES批量写入性能调优:BulkProcessor 参数详解与实战案例
java·大数据·运维·jenkins