zoukankan      html  css  js  c++  java
  • elasticsearch 服务安全配置

    一、目前主要通过插件的形式来控制:

    常用的插件主要包括:elasticsearch-http-basic,search-guard,shield

    由于shield是收费的暂时还未研究(研究后统一补充)

    search-guard主要用于elasticsearch2.x以后的版本(研究后统一补充)

    elasticsearch-http-basic主要用于elasticsearch1.x的版本

    基于目前我们es集群大部分都是1.5.2版本的,所以主要使用http-basic来控制来自http请求的访问。

    二、elasticsearch-http-basic安装:

    1.下载elasticsearch-http-basic-1.5.1.jar(下载地址:https://github.com/Asquera/elasticsearch-http-basic/releases

    2.在ES的plugins文件夹下新建http-basic文件夹

    3.把下载的 elasticsearch-http-basic-1.5.1.jar拷贝到新建的http-basic文件夹下

    4.修改ES的配置文件elasticsearch.yml,在文件末尾添加以下配置:

    配置名                                           默认值                                 说明

    http.basic.enabled                         true                                     开关,开启会接管全部HTTP连接

    http.basic.user                               "admin"                               账号

    http.basic.password                      "admin_pw"                         密码

    http.basic.ipwhitelist                      ["localhost", "127.0.0.1"]    白名单内的ip访问不需要通过账号和密码,支持ip和主机名,不支持ip区间或正则

    http.basic.trusted_proxy_chains    []                                        信任代理列表

    http.basic.log    false                                                                把无授权的访问事件添加到ES的日志

    http.basic.xforward    ""                                                            记载代理路径的header字段名

    5.重启ES集群

    三、目前我们主要通过http.basic.ipwhitelist 白名单 + 用户名、密码来控制外部机器对ES集群的http请求,

    1.在白名单内的ip列表用户无需验证可直接通过ES节点的ip地址访问ES,白名单外的用户无权访问ES集群

    2.由于白名单无法控制通过域名的访问,如果要通过域名访问ES必须要通过用户名和密码来访问

  • 相关阅读:
    使用SpringAOP获取一次请求流经方法的调用次数和调用耗时
    疫苗之殇与理性应对之道
    【做更好的职场人】理性、弹性、开放的沟通
    使用IntelljIDEA生成接口的类继承图及装饰器模式
    订单导出应对大流量订单导出时的设计问题
    预发和线上的自动化对比工具微框架
    从实战角度看如何构建高质量的软件:一线工程师的一份质量手记
    代码问题及对策
    若干设计经验教训小记
    输入输出无依赖型函数的GroovySpock单测模板的自动生成工具(上)
  • 原文地址:https://www.cnblogs.com/liuzy2014/p/6383188.html
Copyright © 2011-2022 走看看