X-Pack安装使用

  • x-pack简介
    x-pack是elasticsearch的一个扩展包,将安全,警告,监视,图形和报告功能捆绑在一个易于安装的软件包中,虽然x-pack被设计为一个无缝的工作,但是你可以轻松的启用或者关闭一些功能

  • x-pack功能介绍
    X-pack提供以下几个级别保护elastic集群
    用户验证
    授权和基于角色的访问控制
    节点/客户端认证和信道加密
    审计

  • elasticsearch x-pack安装

    1
    2
    /bin/elasticsearch-plugin install x-pack  ##安装
    /bin/elasticsearch-plugin remove x-pack ##卸载
  • elasticsearch x-pack安装

    1
    2
    /bin/kibana-plugin install x-pack ##安装
    /bin/kibana-plugin remove x-pack ##卸载
  • 启动

    1
    2
    /bin/elasticsearch ## 启动elasticsearch
    /bin/kibana ## 启动kibana
  • 运行web页面

    1
    http://localhost:5601 ## 5601默认端口 如果修改则运行自己的端口 启动事终端会提示

默认超级账户 用户名elastic 密码changeme

修改密码

  • 方式一 安装完成web端修改
  • 方式二 终端修改
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    ## 修改elastic用户的密码:
    curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/elastic/_password' -d '{
    "password" : "123456"
    }'

    ## 修改kibana用户的密码:
    curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/kibana/_password' -d '{
    "password" : "123456"
    }'

    ## 创建用户组和角色,创建所属用户
    eg:创建developer用户组,该用户组对test*有all权限,对.kibana*有manage,read,index权限
    curl -XPOST -u elastic 'localhost:9200/_xpack/security/role/developer' -d '{
    "indices" : [
    {
    "names" : [ "test*" ],
    "privileges" : [ "all" ]
    },
    {
    "names" : [ ".kibana*" ],
    "privileges" : [ "manage", "read", "index" ]
    }
    ]
    }'

    ## 创建guest用户,密码是Alex
    curl -XPOST -u elastic 'localhost:9200/_xpack/security/user/guest' -d '{
    "password" : "Alex",
    "full_name" : "Alex",
    "email" : "guest@gmail.com",
    "roles" : [ "developer" ]
    }'

数据传递通信

  • 安装完x-pack之后默认kibana /elastic 通信都需要安全验证,所以如果通信之间需要设置。
  • kibana设置elasticsearch通信
    1
    2
    3
    ### kibana.yml中加入配置
    elasticsearch.username: "elastic" ## elasticsearch用户名
    elasticsearch.password: "changeme" ## 密码
  • logstash设置elasticsearch通信
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    ## logstash 配置文件加入配置
    input {
    stdin{}
    beats{
    port => 5044
    }
    }
    output {
    elasticsearch {
    hosts => ["http://localhost:9200"]
    user => elastic ## 配置elasticsearch用户
    password => changeme ## 密码
    }
    stdout{
    codec=>rubydebug
    }
    }