首页 > 系统相关 >5、Nginx 常见模块 auth_basic:实现账户认证功能

5、Nginx 常见模块 auth_basic:实现账户认证功能

时间:2023-05-15 19:06:55浏览次数:40  
标签:http nginx admin auth Nginx htpasswd basic

Nginx 账户认证功能

由 ngx_http_auth_basic_module 模块提供此功能

官方帮助:

http://nginx.org/en/docs/http/ngx_http_auth_basic_module.html

语法格式:

Syntax:	auth_basic_user_file file;
Default:	—
Context:	http, server, location, limit_except

范例:

auth basic             提示字符串       
auth basic user file   后跟密码账户的文件路径

第一步:安装
需要安装包来启动这个服务
centos安装包
yum -y install httpd-tools
ubuntu安装包
apt -y install apache2-utils


第二步:创建访问认证用户和密码
创建用户 -c 
非交互式方式提交密码 -b
htpasswd -cb /apps/nginx/conf/.htpasswd user1 123456   #创建用户、密码和存放文件
cat /apps/nginx/conf/.htpasswd                         #查看存放用户密码的文件
user1:$apr1$2luIRVEi$RhPG6IuR5Jvn9kghpnGPH/
再创建第二个账户,不需要加c,加c就把第一个覆盖了
htpasswd -b /apps/nginx/conf/.htpasswd user2 123456


第三步:创建资源
cd /data/nginx/html/pc/
mkdir admin
echo admin page > admin/index.html

第四步:配置资源可认证访问
vim www.meng.org.conf
server {
    listen 80 ;
    server_name www.meng.org;
    root /data/nginx/html/pc/;   
    location /admin {                                # 访问admin这个文件是需要密码的         
        auth_basic      "please input username and password";   # 提示字符串
        auth_basic_user_file /apps/nginx/conf/.htpasswd;        # 账户密码文件
   }
}
nginx -s reload
tail -f /apps/nginx/logs/access.log   打开访问日志

在另一机器进行访问curl www.meng.org/admin/ 报状态码401(质询) 弹出对话框,输入用户密码
新版本的浏览器不显示提示字符串   IE浏览器可以 在windos命令行 输iexplore调出IE浏览器 
也可非交互式访问 curl http://user1:[email protected]/admin/
admin page

以上走的是http协议,账户密码可以被抓包软件抓到。 不加密的协议,都可以被抓到包。


标签:http,nginx,admin,auth,Nginx,htpasswd,basic
From: https://blog.51cto.com/mfc001/6280434

相关文章

  • ubuntu22.04 ssh连接失败 userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedA
    userauth_pubkey:keytypessh-rsanotinPubkeyAcceptedAlgorithms[preauth]sshd[14785]:error:Receiveddisconnectfromxxxxport45190:3:com.jcraft.jsch.JSchException:Authfail[preauth]OpenSSH从8.7以后版本开始默认不支持ssh-rsa签名的方式,需要手动设置解决......
  • Nginx编译安装
    1.进入安装目录:#cd/usr/local/src2、下载nginx源码文件nginx网址:http://nginx.org/en/download.html 3、复制文件下载地址:http://nginx.org/download/nginx-1.22.1.tar.gz4、开始下载:#wget http://nginx.org/download/nginx-1.22.1.tar.gz 5、解压#tar-zxvf nginx......
  • nacos 使用nginx做负载均衡
    nacos要使用nginx做负载均衡需要使用到stream模块,如果编译nginx的时候没有添加stream模块的,建议重新编译(否则改一个出现N个错误)编译命令:./configure--prefix=/usr/local/nginx--with-streamnginx.conf配置:stream与http同级  upstream与http下的server同级 ......
  • nginx 正则路径匹配
    Nginx路径匹配符号=表示精确匹配^~表示uri以某个常规字符串开头,大多情况下用来匹配url路径,nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~/static//aa匹配到(注意是空格)。~正则匹配(区分大小写)~*正则匹配(不区分大小写)!~区分大小写不匹配!~*不区分大小写不匹......
  • nginx反向代理与负载均衡
    什么是正向代理和反向代理正向代理:客户端与服务端之间再架设一台服务器,客户端先访问的是这台中间架设的服务器,再由中间这台服务器给目标服务器,发送请求.客户端设置一个代理ip,服务器不清楚是客户本机发送还是代理服务器发送正向代理是一个客户端和原始服务器之间的服务......
  • LINUX下用YUM安装nginx出现No package nginx available.的问题与解决方案
    1.备份CentOS-Base.repomv/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.bak2.下载新的CentOS-Base.repo到/etc/yum.repos.d/wget-o/etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo3.把服务器的包信息下载到本......
  • 三菱伺服MR-JE-C与三菱FX-5UPLC进行两轴CCLINK-Basic总线通信程序。
    三菱伺服MR-JE-C与三菱FX-5UPLC进行两轴CCLINK-Basic总线通信程序。控制模式:有回原点,定位控制,速度控制,力矩控制,4种模式中随意切换。赠送,:通信地址分配表,编程手册,威伦通触摸屏UI模版,伺服驱动器参数文件。ID:3689682192553998......
  • csrf跨站请求伪造、csrf相关装饰器、auth认证模块
    csrf跨站请求伪造、csrf相关装饰器、auth认证模块csrf跨站请求伪造简单来说就是攻击者通过一些技术手段欺骗用户的浏览器去访问一个自己曾经认证过的网站并执行一些操作,用于浏览器曾经认证过,所以被访问的网站会以为是真正的用户操作而去执行。经典例子钓鱼网站:假设是一个跟银......
  • nginx 并发限制limit_conn启动不了nginx
    直接在http下写limit_conn启动不了nginx基本语法limit_conn指令的基本语法为:limit_connconnlimit;1其中,connlimit为最大并发连接数。一旦某时刻,连接数超过该值,Nginx将返回503错误页面并关闭新连接的接入。使用error_page指令可对此页面进行自定义配置。除了主要指令之......
  • nginx源码安装步骤
    1、安装依赖包yuminstall-ygccyuminstall-ypcrepcre-develyuminstall-yzlibzlib-develyuminstall-yopensslopenssl-devel2、下载nginx源码包并解压 3、进入解压后的包nginx-1.16.1中4、执行命令 ./configure【参数可选:--prefix=/path/可指定ng......