nginx配置kibana访问用户名和密码认证、及无认证访问配置

发布时间 2023-09-30 15:07:31作者: 香吧香

转载请注明出处:

  在nginx上配置kibana页面访问时,默认是采用kibana的认证,一般直接安装kibana后,是没有用户名和密码认证的。

  如果要在负载均衡上配置反向代理和用户认证,可按以下步骤进行配置:

  1.安装Nginx: 首先,确保已经安装了Nginx,并且可以正常访问Kibana页面。

  2.生成密码文件: 使用 htpasswd 工具生成用户名和密码的文件。运行以下命令来创建密码文件,将用户名和密码替换为自己想要设置的用户名和密码。

sudo htpasswd -c /etc/nginx/.htpasswd 用户名

  这将在 /etc/nginx/.htpasswd 文件中创建一个包含加密密码的条目。如果需要添加更多用户,请省略 -c 参数

  3.配置Nginx

    打开 Nginx 的配置文件,一般位于 /etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf。找到 Kibana 相关的 server 块。

    添加以下配置来启用基本认证,并将 用户名 替换为你在第 2 步中创建的用户名,/etc/nginx/.htpasswd 是你的密码文件路径:

      server {
        listen 15601;
        resolver 127.0.0.11 ipv6=off valid=1s;
        location / {
            set $upstream_endpoint http://elk:5601;
            proxy_pass $upstream_endpoint;
            proxy_redirect   off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   X-Forwarded-Host $server_name;
            auth_basic           "Administrator’s Area";   # 认证提示信息
            auth_basic_user_file /etc/nginx/.htpasswd;     # 密码文件路径
            # satisfy all;
            # deny  192.168.1.2;
            # allow 192.168.1.1/24;
            # deny  all;
        }
      }

  这将为 Kibana 页面添加基本认证,当用户访问时将提示输入用户名和密码。

  4.重启Nginx

    保存并关闭 Nginx 配置文件后,通过运行以下命令来重启 Nginx 服务:

sudo systemctl restart nginx

    现在,当用户访问 Kibana 页面时,他们将被要求输入用户名和密码以进行身份验证。

    如果想要实现无用户名和密码认证的访问,只需修改 Nginx 配置,删除 location / 中的 auth_basicauth_basic_user_file 配置项。然后重新启动 Nginx 服务即可。

  5.页面访问和登录kibana

  效果如图所示: