前言

es之前版本一直无用户验证功能,不过官方有提供一x-pack,但是问题是付费。在es的6.3.2版本中,已经集成了x-pack,虽然es团队已经对x-pack开源,但是在该版本中如果需要使用到安全加密功能,依然还是需要付费购买license,search guard社区版可以免费提供用户验证功能

1.安装环境

程序 版本 安装方式
elasticsearch 6.6.3 rpm
kibana 6.6.1 rpm
java 1.8.0 tar
centos 6.6 /

es安装环境

elasticsearch node hostname
10.124.147.22 10-124-147-22
10.124.147.23 10-124-147-23
10.124.147.32 10-124-147-32

2.search guard安装

官方安装文档>> 点击我

安装有两种方法,本次选用快速安装,其中涉及到https的自签证书,官方不是很推荐,不过可以使用

2.1 在elasticsearch安装

-找到elasticsearch的bin目录/usr/share/elasticsearch/bin/

[root@10-124-147-22 bin]# pwd
/usr/share/elasticsearch/bin
[root@10-124-147-22 bin]# ./elasticsearch-plugin install com.floragunn:search-guard-6:6.3.2-22.3

install 后面的链接地址,依自己的es版本进行选择Artifact选项中的值,相关链接>>点击我

进行demo模式的安装

[root@10-124-147-22 tools]# pwd
/usr/share/elasticsearch/plugins/search-guard-6/tools
[root@10-124-147-22 tools]# bash install_demo_configuration.sh

依按说明三个Y确认即可

同时在其它node之上进行安装并重启es

2.2 测试elasticsearch上的安装

web访问 安装该es节点的9200端口,

如本安装过程中,访问https://10.124.147.22:9200/_searchguard/authinfo

需要注意的是,此处是https而非http

默认用户名与密码均为admin

如果打印了admin的json信息,则安装ok

2.3在kibana上安装

1.停止kibana

2.进入kibana的plugin目录

[root@10-124-147-22 bin]# pwd
/usr/share/kibana/bin
[root@10-124-147-22 bin]# ./kibana-plugin install https://search.maven.org/remotecontent?filepath=com/floragunn/search-guard-kibana-plugin/6.3.1-14-beta-1/search-guard-kibana-plugin-6.3.1-14-beta-1.zip

url地址在官网上查找>>点击我

需要找对自己的版本,安装之时,在kibana 6.3.2的时候,search guard暂时还未出现其适配版,所以将kibana降级为6.3.1

3.kibana配置文件更新

kibana配置文件需要加入以下

[root@10-124-147-22 bin]# grep ^[^#] /etc/kibana/kibana.yml
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.url: "https://localhost:9200"
elasticsearch.username: "kibanaserver"
elasticsearch.password: "kibanaserver"
elasticsearch.ssl.verificationMode: none
elasticsearch.requestHeadersWhitelist: [ "Authorization", "sgtenant" ]
xpack.monitoring.enabled: false
xpack.graph.enabled: false
xpack.ml.enabled: false
xpack.watcher.enabled: false
xpack.security.enabled: false

在es的6.3.2版本中,已经集成了x-pack,虽然es团队已经对x-pack开源,但是在该版本中如果需要使用到安全加密功能,依然需要付费购买license,对于后面对xpack的控制选项在search guard中并未提供,但是实际测试的时候,需要添加,否则kibana无法正常启动

需要注意的是es的url由http变成https

2.4 kibana的search guard测试

web访问5601端口即可

用户名与密码名均为admin

进入之后,可以看到左侧菜单栏多出search guard选项,即表示安装ok

3.kibana中search guard默认密码的更改

1.生成新的密码

[root@10-124-147-22 tools]# pwd
/usr/share/elasticsearch/plugins/search-guard-6/tools
[root@10-124-147-22 tools]# ./hash.sh -p letv.bigdata
$2y$12$nwfMezsKdWhPMoj5iqZ/6.H9RpXFvDbd59K1mTxqWmH8IY/bFWSXm

2.修改sg_internal_users.yml配置文件

将其中hash之后的密码替换成刚才生成的密码,配置文件路径为/usr/share/elasticsearch/plugins/search-guard-6/sgconfi/sg_internal_users.yml

#password is: letv.bigdata
admin:
#readonly: false
hash: $2y$12$nwfMezsKdWhPMoj5iqZ/6.H9RpXFvDbd59K1mTxqWmH8IY/bFWSXm
roles:
- admin
attributes:
#no dots allowed in attribute names
attribute1: value1
attribute2: value2
attribute3: value3

3.注释掉readonly选项

当打开此选项之时,在kibana上面无法修改admin用户密码

4.生效search guard配置文件

[root@10-124-147-22 tools]# pwd
/usr/share/elasticsearch/plugins/search-guard-6/tools
[root@10-124-147-22 tools]# ./sgadmin_demo.sh

如果没有重载search guard配置文件,即使重启了es,也无法生效

elasticsearch 6.x 安装search guard的更多相关文章

  1. Elasticsearch 5.0 安装 Search Guard 5 插件 (五)

    一.Search Guard 简介 Search Guard  是 Elasticsearch 的安全插件.它为后端系统(如LDAP或Kerberos)提供身份验证和授权,并向Elasticsearc ...

  2. Elasticsearch 5.0 安装 Search Guard 5 插件

    一.Search Guard 简介 Search Guard  是 Elasticsearch 的安全插件.它为后端系统(如LDAP或Kerberos)提供身份验证和授权,并向Elasticsearc ...

  3. (转) Elasticsearch 5.0 安装 Search Guard 5 插件

    一.Search Guard 简介 Search Guard  是 Elasticsearch 的安全插件.它为后端系统(如LDAP或Kerberos)提供身份验证和授权,并向Elasticsearc ...

  4. elasticsearch安装与使用(5)-- search guard安装与配置

    一.安装search guard插件必须要安装两部分: ①search-guard-xx ②search-guard-ssl (XX指的是与elasticsearch引擎对应的版本) github地址 ...

  5. ELK之elasticsearch6安装认证模块search guard

    参考:https://www.cnblogs.com/marility/p/9392645.html 1,安装环境及软件版本 程序 版本 安装方式  elasticsearch  6.3.1  rpm ...

  6. ELK之安装了search guard认证后安装elasticsearch-head

    安装searc guard参考https://www.cnblogs.com/minseo/p/10576126.html 安装elasticsearch-head参考 https://www.cnb ...

  7. Elasticsearch和Kibana安装

    Elasticsearch安装 Elasticsearch至少需要Java 8.在撰写本文时,建议你使用Oracle JDK版本1.8.0_131.Java安装因平台而异,所以在这里不再赘述.Orac ...

  8. Elasticsearch介绍及安装部署

    本节内容: Elasticsearch介绍 Elasticsearch集群安装部署 Elasticsearch优化 安装插件:中文分词器ik 一.Elasticsearch介绍 Elasticsear ...

  9. Elasticsearch 及 Kibana 安装篇

    简介 官网-安装介绍 这里记载了各个软件包的安装方法,Linux Mac Windows-- 本文记载的是在 CentOS 系统安装 Elasticsearch 7.0.0 版本的步骤. 安装 Jav ...

随机推荐

  1. SDOI2018凉凉记

    好久没有更博客了...因为我在颓废学习.. SDOI一轮结束了...我也该回来学地生了... 凉凉 ————————————————我是分割线———————————————— Day0 愉快感冒的Da ...

  2. GSL+DevC++使用

    在DEV C++中配置GSL1.8库 前面写了如何在vs2005中添加gsl,本文所所述为在dev c++中使用gsl库,由实践总结而得. 准备软件: 1.Orwell Dev C++ 5.6.2 N ...

  3. JPA @Id 和 @GeneratedValue 注解详解

    JPA @Id 和 @GeneratedValue 注解详解   @Id: @Id 标注用于声明一个实体类的属性映射为数据库的主键列.该属性通常置于属性声明语句之前,可与声明语句同行,也可写在单独行上 ...

  4. MySQL DDL Demo

    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11606833.html DDL Demo CREATE TABLE `user` ( `id` ) u ...

  5. python每日练习--基础题

    """ 1. 现有面包.热狗.番茄酱.芥末酱以及洋葱,数字显 示有多少种订购组合, 其中面包必订,0 不订,1 订,比如 10000,表示只订购面包 "&quo ...

  6. shell脚本学习(5)join

    join  不是简单的把两个文本连接起来 sale.txt quotas.txt

  7. iOS设计模式之装饰者模式

    一,什么是装饰模式 模式定义 装饰者包含被装饰者的所有接口和引用,方法实现完全是引用调用自己的方法,在装饰者子类添加新功能. 注释: Category不要重写被装饰对象的方法,否则改变了被装饰对象的行 ...

  8. python的os.path.join()

    在python中,os.path.join()是用来拼接目录路径得.同类型得还有join(),os.path.spilt(),spilt()三个函数.1,os.path.join(),将join()里 ...

  9. PHP连接FTP服务的简单实现

    PHP连接FTP服务: <?php class Ftp { private $connect; private $getback; /** * ftp连接信息 * @var array */ p ...

  10. LINUX shell脚本相关

    调试脚本 测试脚本语法:bash -n file.sh 查看脚本每一步执行情况:bash -x file.sh   位置变量:$1,$2,... 特殊变量:           %?:最后一个命令的执 ...