大规模日志分析平台-ELK之Kibana访问权限控制

Posted 无声黑白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大规模日志分析平台-ELK之Kibana访问权限控制相关的知识,希望对你有一定的参考价值。


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

方案一、

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

大规模日志分析平台-ELK之Kibana访问权限控制

方案二、

利用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;
  }
}

当然,还有很多其它方式来实现更细粒度的权限控制(比如根据用户控制可展示的Dashboard等),例如使用一些插件或直接修改Kibana源代码来实现。


以上是关于大规模日志分析平台-ELK之Kibana访问权限控制的主要内容,如果未能解决你的问题,请参考以下文章

ELK日志分析平台之kibana数据可视化

ELK日志分析平台之kibana数据可视化

ELK搭建实时日志分析平台之二Logstash和Kibana搭建

使用ELK(Elasticsearch + Logstash + Kibana) 搭建日志集中分析平台实践

Linux企业运维——ELK日志分析平台(下)kibana数据可视化xpack安全验证轻量级metricbeat

Linux企业运维——ELK日志分析平台(下)kibana数据可视化xpack安全验证轻量级metricbeat