nginx启用status页面并实现nginx的登录账户认证

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx启用status页面并实现nginx的登录账户认证相关的知识,希望对你有一定的参考价值。

启用status页面并实现nginx的登录账户认证

开启status页面

1.查看编译安装时所编译的模块
要开启status页面依赖于ngx_http_stub_status_module这个模块

[[email protected] ~]# nginx -V
nginx version: nginx/1.14.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/apps/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-stream --with-stream_ssl_module --with-stream_realip_module

2.修改配置文件开启status页面

[[email protected] ~]# vim /apps/nginx/conf/servers/vs.conf
server 
    server_name www.mylinuxops.com;
    listen 443;
    ssl on;
    ssl_certificate /apps/nginx/certs/www.mylinuxops.com.crt;
    ssl_certificate_key /apps/nginx/certs/www.mylinuxops.com.key;
    ssl_session_timeout 10m;
    ssl_session_cache shared:SSL:20m;
    location / 
        root /data/www;
        index index.html;
 
    location /status 
        stub_status;
 

3.测试访问

[[email protected] ~]# curl --cacert /apps/nginx/certs/ca.crt https://www.mylinuxops.com/status
Active connections: 1
server accepts handled requests
 10 10 5
Reading: 0 Writing: 1 Waiting: 0

对status页面进行登录账户认证

1.创建一个用来认证登录的账号

[[email protected] ~]# htpasswd -bcm /apps/nginx/conf/.htpasswd masuri 111111

2.修改配置文件,启用账号认证

[[email protected] ~]# vim /apps/nginx/conf/servers/vs.conf
server 
    server_name www.mylinuxops.com;
    listen 443;
    ssl on;
    ssl_certificate /apps/nginx/certs/www.mylinuxops.com.crt;
    ssl_certificate_key /apps/nginx/certs/www.mylinuxops.com.key;
    ssl_session_timeout 10m;
    ssl_session_cache shared:SSL:20m;
    location / 
        root /data/www;
        index index.html;
 
    location /status 
        stub_status;
        auth_basic      "login";
        auth_basic_user_file    conf/.htpasswd;

2.检查配置文件,重读配置文件生效

[[email protected] ~]# nginx -t
nginx: the configuration file /apps/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /apps/nginx/conf/nginx.conf test is successful
[[email protected] ~]# nginx -s reload

3.测试
不使用认证

[[email protected] conf]# curl -k https://www.mylinuxops.com/status
<html>
<head><title>401 Authorization Required</title></head>
<body bgcolor="white">
<center><h1>401 Authorization Required</h1></center>
<hr><center>nginx/1.14.2</center>
</body>
</html>

使用账号密码登录认证

[[email protected] conf]# curl -k -u masuri:111111 https://www.mylinuxops.com/status
Active connections: 1
server accepts handled requests
 23 23 17
Reading: 0 Writing: 1 Waiting: 0

以上是关于nginx启用status页面并实现nginx的登录账户认证的主要内容,如果未能解决你的问题,请参考以下文章

启用nginx status状态详解

nginx 部署单页应用并启用Gzip

ELK 7.6分析 Nginx 日志 并启用x-pack权限认证

Nginx状态监控及日志分析

zabbix监控nginx

Nginx 服务器如何开启status检测