Kibana访问权限控制

   ELK平台搭建完成后,由于Kibana的服务也是暴露在外网,且默认是没有访问限制的(外部所有人都可以访问到),这明显不是我们想要的,所以我们需要利用Nginx接管所有Kibana请求,通过Nginx配置将Kibana的访问加上权限控制,简单常见的方式可以使用如下三种方式:

方案一:利用Nginx用户认证模块

   使用Nginx的用户认证模块(ngx_http_auth_basic_module模块,Nginxg一般已经默认安装),用户访问时会直接弹出登录提示,要求输入用户名及密码后登录。
此方案需要依赖htpasswd命令生成密码文件:

方案二:利用Nginx的IP访问控制

   利用Nginx的IP访问控制,限定允许和禁止访问的IP,非允许的IP访问后网页会显示403 Forbidden信息

   Nginx配置清单:

##如果是大规模集群环境,此处配置多台Kibana服务器即可
upstream kibana_server {
    server 192.168.8.202:5601;
    server 192.168.8.203:5601;
}

server {

    listen 80;
    server_name  218.61.2.109;
    charset utf8;
    location / {
        proxy_pass http://kibana_server$request_uri;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        ##方案一、用户认证方式,依赖apache-utils中的生成密码工具
        ##auth_basic "secret";
        ##auth_basic_user_file /usr/local/nginx/passwd.db;

        ##方案二、只有公司的外网IP,局域网IP可以访问
        allow   5*.**.**.**0;
        allow   192.168.8.0/24;
        deny    all;
    }
}

参考:http://wushengheibai.com/post/elk1

方案三、离线安装X-Pack

  基于5.X以上版本,可以安装X-Pack,但是X-Pack需要license.X-Pack离线安装命令如下:

bin/elasticsearch-plugin install file:///path/x-pack-5.2.2.zip
bin/kibana-plugin install file:///path/x-pack-5.2.2.zip

修改默认密码可以参见:https://huoding.com/2016/12/11/566

http://wdxtub.com/2016/11/19/babel-log-analysis-platform-3/

posted @ 2017-04-05 22:37  moonandstar08  阅读(11716)  评论(0编辑  收藏  举报