nginx用户认证配置测试

技术 置顶 精帖
0 674
peng49
peng49 2021-07-15 21:39:21
 

安装apache密码生成工具

sudo yum install httpd-tools

生成密码文件

htpasswd参数说明

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

创建保存密码的文件夹

sudo mkdir -p /etc/nginx/passwd

生成密码文件

sudo htpasswd -c -b /etc/nginx/passwd/test.passwd test_user test_password

如果需要创建多个用户,继续执行

sudo htpasswd -b /etc/nginx/passwd/test.passwd test_user2 test_password2

即可

配置nginx文件

  1. # 创建配置文件
  2. sudo vim /etc/nginx/conf.d/auth.conf
  3. #在配置文件中输入如下内容
  4. server {
  5. listen 3100;
  6. auth_basic 'Test Auth';
  7. auth_basic_user_file /etc/nginx/passwd/test.passwd;
  8. }

重新加载nginx配置

sudo systemctl reload nginx

访问 ip:3100 结果如下

输入上面生成密码文件时的测试用户名和密码

成功登陆,测试完成

参考链接:
Kibana登录认证设置
Nginx基于用户名和密码访问的auth_basic模块
Nginx 的两种认证方式

回帖
登录
忘记密码?