ELK之十一----通过nginx代理kibana并实现登陆认证

一、通过nginx代理kibana并实现登陆认证

1、安装nginx

1、编译安装nginx服务

[root@elk-1 nginx-1.14.2]# tar xvf nginx-1.14.2.tar.gz 
[root@elk-1 nginx-1.14.2]# cd nginx-1.14.2/
[root@elk-1 nginx-1.14.2]# ./configure --prefix=/apps/nginx
[root@elk-1 nginx-1.14.2]# make -j 2 && make install

2、修改nginx配置文件,定义一个认证kibana.conf的文件

[root@elk-1 ~]# vim /apps/nginx/conf/nginx.conf
include /apps/nginx/conf.d/*.conf;  # 在最后一行大括号内定义include
} 
[root@elk-1 ~]# mkdir /apps/nginx/conf.d  # 创建一个此目录

3、在/apps/nginx/conf.d目录下创建一个域名访问的kibana.conf配置文件

[root@elk-1 conf.d]# cat  kibana.conf 
upstream kibana_server {
        server  127.0.0.1:5601 weight=1 max_fails=3  fail_timeout=60;
}

server {
        listen 80;
        server_name kibana-net.com;  # 定义域名
        auth_basic "Restricted Access";
        auth_basic_user_file /apps/nginx/conf/htpasswd.users;  
        location / {
        proxy_pass http://kibana_server;
        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;
        }
}

4、在hosts文件中进行域名解析

[root@elk-1 conf.d]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.7.100 kibana-net.com

在本机也需要修改host文件:C:\Windows\System32\drivers\etc

2、开始对nginx加密认证

1、在centos系统安装httpd-tools包,里边有一个htpasswd命令,可以创建用户并进行加密设置

# yum install httpd-tools -y

2、创建一个用户名,并设置一个秘密

[root@elk-1 conf.d]# htpasswd -bc /apps/nginx/conf/htpasswd.users liu 123456  # 第一次创建目录可以加上-c选项,第二次创建第二个账号,就不能再添加-c选项,账号是liu ,密码是123456
Adding password for user liu
[root@elk-1 conf.d]# htpasswd -b /apps/nginx/conf/htpasswd.users ma 123456
Adding password for user ma

3、启动nginx服务

# /apps/nginx/sbin/nginx

3、在网页上访问kibana域名

1、此时访问的域名就需要输入密码  

 

 

 

 

posted @ 2020-03-23 23:31  一叶知秋~~  阅读(1061)  评论(0编辑  收藏  举报