centos7下linux中,为kibana配置nginx反向代理,并添加登录验证

centos7下linux中,为kibana配置nginx反向代理,并添加登录验证

    • 1.安装配置Kibana
      • 1.1 下载 Kibana 安装软件
      • 1.2 解压
      • 1.3 修改配置文件
      • 1.4 启动 Kibana
      • 1.5 验证 Kibana
      • 1.6 查看本地监听端口:
    • 2. 安装 Nginx
      • 2.1 配置 Nginx 官方 yum 源
      • 2.2 安装软件
      • 2.3 修改 Nginx 配置文件
      • 2.4 配置验证
      • 2.5 启动nginx
    • 3. 访问测试

在使用ELK进行日志统计的时候,由于Kibana自身并没有身份验证的功能,任何人只要知道链接地址就可以正常登录到Kibana控制界面。由于日常的查询,添加日志和删除日志都是在同一个web 中进行,这样就有极高的安全隐患。任何人都有权限对其进行修改。
为了避免这一问题,可以使用Nginx的验证功能来代理Kibana.

1.安装配置Kibana

1.1 下载 Kibana 安装软件

[root@localhost ~] # wget https://download.elastic.co/kibana/kibana/kibana-7.4.0-linux-x64.tar.gz

1.2 解压

 [root@localhost ~]# tar xzvf kibana-7.4.0-linux-x64.tar.gz

文件目录结构如下:

[root@localhost ~] # ls
bin config installedPlugins LICENSE.txt node node_modules optimize  package.json README.txt src webpackShims

1.3 修改配置文件

[root@localhost ~] # cd config
[root@localhost ~] # vi kibana.yml

找到 # server.host,修改成以下:

server.host:“127.0.0.1”

找到 #server.basePath,修改成以下:

server.basePath: "/app/kibana"

1.4 启动 Kibana

[root@localhost ~] # cd ../bin
 [root@localhost ~] # ./kibana

1.5 验证 Kibana

由于我们是配置在 localhost,所以是无法直接访问 Web 页面的。
可以使用 netstat 来检查缺省端口 5601,或者使用 curl:

 [root@localhost ~]# curl localhost:5601

得到如下:


1.6 查看本地监听端口:

[root@localhost ~] # netstat -lntp|grep 5601
 tcp        0      0 127.0.0.1:5601          0.0.0.0:*               LISTEN      6034/node 

Kibana安装启动成功!

2. 安装 Nginx

Nginx 提供了反向代理服务,可以使外面的请求被发送到内部的应用上。

2.1 配置 Nginx 官方 yum 源

[root@localhost ~] #  sudo vi /etc/yum.repos.d/nginx.repo

插入下方:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

2.2 安装软件

[root@localhost ~] # sudo yum install nginx httpd-tools

2.3 修改 Nginx 配置文件

[root@localhost ~] # cd /etc/nginx/conf.d
[root@localhost conf.d]# ls
default.conf
[root@localhost conf.d]# vim default.conf 

在server内添加下面内容:

server{
		。。。。。。
		。。。。。。
		//添加内容
		location /app/kibana/ {
		        auth_basic "Restricted Access";
		        auth_basic_user_file /etc/nginx/htpasswd.users;
		        proxy_pass http://127.0.0.1:5601/;
		        proxy_set_header Host $host:;
		}
		//结束
		。。。。。。
}

我们要达到的结果是访问:http://服务器IP地址/kibana,就可以进入kibana首页

2.4 配置验证

创建验证文件授权,需要先安装httpd-tools工具:

[root@localhost ~] # yum install -y  httpd-tools 
[root@localhost ~] # htpasswd -bc /etc/nginx/htpasswd.users admin 123 # 创建验证文件,并添加用户
Adding password for user admin
[root@localhost ~] # cat /etc/nginx/htpasswd.users 
admin:$apr1$9AMiN0Ud$Q95cyrPix89nw3h3d4cwo0

2.5 启动nginx

[root@localhost ~] # nginx -t
[root@localhost ~] # systemctl start nginx
[root@localhost ~] # netstat -lntp|grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      6085/nginx: master  

3. 访问测试

访问http://192.168.11.129/app/kibana/
大家自己测试的时候输入服务器或者虚拟机的 ip/kibana/ 即可
centos7下linux中,为kibana配置nginx反向代理,并添加登录验证_第1张图片
输入刚才设置的用户名和密码 admin 123

进入首页:
centos7下linux中,为kibana配置nginx反向代理,并添加登录验证_第2张图片

你可能感兴趣的:(centos7下linux中,为kibana配置nginx反向代理,并添加登录验证)