ELK详解(十八)——Nginx代理Kibana实战
今天继续给大家介绍Linux运维相关知识,本文主要内容是使用Nginx来代理Kibana。
一、Nginx代理Kibana简介
在ELK架构中,Kibana存在一个问题,即没有验证页面,这对ELK架构的安全性有着一定的影响。为了解决Kibana没有验证的问题,我们可以设置Nginx对Kibana的代理。
当用户访问时,使其首先访问Nginx,我们可以在Nginx上配置用户身份认证,以确保安全性,如果认证通过,我们再通过Nginx的反向代理功能,将客户端链接转移到Kibana上。这样,既实现了Kibana的登录身份验证,又保证了Kibana的正常功能使用。
二、Nginx配置
首先,我们安装Nginx,Nginx的安装可以参考文章:LNMP详解(二)——Nginx源码安装与启动,或者在安装EPEL的扩展源后,进行YUM安装Nginx(为方便起见,本实战采用了这种安装方式),执行命令:
yum install -y epel-release
yum install -y nginx
在Nginx安装完成后,我们进行Nginx的配置。由于Nginx在默认配置中,会自动引入/etc/nginx/conf.d/目录下的以.conf为结尾的文件。因此,我们直接在该目录下,创建一个kibana.conf的配置文件,文件内容如下所示:
upstream kibana{
server 127.0.0.1:5601 weight=1 max_fails=3 fail_timeout=30;
}
server{
listen 80;
auth_basic "Restricted Access";
auth_basic_user_file /etc/nginx/auth/user-passwd;
location / {
proxy_pass http://kibana;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
可以看出,在上述配置文件中,实现了Nginx对Kibana的反向代理和登录验证的配置。对上述配置存在疑惑的可以查阅文章:LNMP详解(七)——Nginx反向代理配置实战,在该文章中对上述配置的作用和效果有着详细的讲解。
Nginx配置完成后,我们根据上述配置生成身份验证文件,执行命令:
htpasswd -bc /etc/nginx/auth/user-passwd admin admin
这样,就会生成用户名和密码(在上述命令中,前面的是用户名,后面的是密码)均为admin的用户配置文件。该命令执行过程如下所示:
注意:如果您的设备上没有htpasswd命令,说明没有安装httpd-tools,可以执行命令:
yum install -y httpd-tools
进行安装。
完成配置后,我们执行命令:
syetemctl start nginx
可以打开Nginx,并使我们的配置生效。Nginx打开后,会监听本地81端口,如下所示:
三、Kibana配置
接下来,我们进行Kibana的配置,kibana的配置主要是将监听的IP由原来的网卡IP地址改为127.0.0.1,修改完成后的kibana配置文件如下所示:
完成后,我们重启Kibana的配置,执行命令:
systemctl restart kibana
结果如下:
可以看到,Kibana监听的IP是127.0.0.1,并不是我们的网卡IP。
四、效果检验
最后,我们来检验一下刚才的配置结果。
首先,我们通过原来的方式访问Kibana,结果如下:
可以看到,Kibana由于已经不监听网卡IP地址,因此,我们无法正常访问。
接下来,我们访问Nginx的代理81端口,结果如下:
可以看到,在Nginx的代理页面中,我们被要求输入用户名和密码。此时,我们输入刚才生成的用户名和密码,就可以进入到Kibana的页面,结果如下所示:
由上,可见我们的Nginx代理Kibana实战配置成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
相关文章
- Nginx配置文件_nginx.conf
- Nginx配置文件(nginx.conf)配置详解
- 安装搭建Nginx正向代理
- 代理IP能够帮助爬虫在哪些业务场景发挥作用?
- Nginx加密以及反向代理「建议收藏」
- nginx做正向代理_正向代理和反向代理图
- 安装NGINX_nginx安装步骤
- Nginx反向代理是什么意思?如何配置Nginx反向代理?
- 动态代理入门
- nginx反向代理实例
- Nginx反向代理、负载均衡、SSL配置、URL重写
- 如何在Java中使用HttpClient发送HTTP请求?并使用静态IP代理?
- 如何使用nginx作为docker容器中ASP.NET应用的反向代理
- Nginx反向代理
- odoo nginx反向代理后获取真实IP详解程序员
- nginx 反向代理和负载均衡详解程序员
- 简易nginx TCP反向代理设置详解程序员
- nginx负载均衡和反向代理和部署详解架构师
- Linux下安装Nginx的步骤详解(linux下安装nginx)
- Nginx反向代理+Tomcat+Springmvc获取用户访问ip详解编程语言
- 使用Nginx连接Redis服务器(nginx连接redis)
- Linux下安装Nginx迈出新步伐(linux安装nginx)
- 日志Linux删除Nginx日志:简易清理方式(linux删除nginx)
- Nginx网站架构实战——08、nginx Rewrite语法详解
- Nginx网站架构实战——02、nginx信号量
- 模块Nginx安装Redis模块:快速上手(nginx安装redis)