栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

elasticsearch 7.7.1 x-pack kibana认证登录

elasticsearch 7.7.1 x-pack kibana认证登录

简介: x-pack是elasticsearch的一个收费的扩展包,将权限管理,警告,监视等功能捆绑在一个易于安装的软件包中,x-pack被设计为一个无缝的工作,但是你可以轻松的启用或者关闭一些功能。

版本:

elasticsearch 7.7.1

kibana 7.7.1

系统mac os

一、修改x-pack部分源码

x-pack的lisence校验在elasticsearch-7.7.1/modules/x-pack-core的x-pack-core-7.0.0.jar中,需要使用JD-GUI之类的反编译工具打开

查看x-pack-core-7.0.0.jar包的两个文件:

(找到文件后需要把代码复制出来到你的idea,注意文件在你idea中的文件路径必须要和x-pack-core-7.0.0.jar里的路径一致,不然后面改完编译后再替换回去会有问题)

1.修改验证licence是否有效的类:org.elasticsearch.license.LicenseVerifier

文件位置在org.elasticsearch.license下,将里面两个方法的内容删除直接返回true,如图:

2.修改验证jar包是否被修改的类:org.elasticsearch.xpack.core.XPackBuild

文件位置在org.elasticsearch.xpack.core下,XPackBuild这个文件不同版本源码逻辑可能有些区别,核心思想就是把 CURRENT = 后面方法的参数写死成 "Unknown"就可以了,其他的都不用动,如图:

 修改完后编译生成class文件,然后把两个class文件替换到x-pack-core-7.0.0.jar里:

替换方式随意,我这里执行命令替换的

jar -uvf x-pack-core-7.7.1.jar org/elasticsearch/license/LicenseVerifier.class

jar -uvf x-pack-core-7.7.1.jar org/elasticsearch/xpack/core/XPackBuild.class

也可以解压jar包手动替换再压缩

替换完之后再把x-pack-core-7.0.0.jar包替换到elasticsearch下的 /modules/x-pack-core路径中

二、申请license

官方申请地址:https://license.elastic.co/registration

下载下来是一个json格式的文件:

 type参数是许可证类型:GOLD(黄金),PLATINUM(白金),ENTERPRISE(企业) 可自行修改

expiry_date_in_millis参数是过期时间,改一个大点的时间

三、禁用elasticsearch安全协议

导入许可证书之前要先关闭xpack安全认证,打开../config/elasticsearch.yml文件在末尾添加:xpack.security.enabled: false

并启动elasticsearch服务:./bin/elasticsearch -d

四、导入license,更新许可

直接从kibana许可管理中更新许可,会提示上传文件,把刚才下好的json格式的license文件上传,看到过期时间改变了就是成功了。

 导入成功后把es的安全认证打开:vim elasticsearch.yml

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

五、内置账号创建密码

使用内置帐号需要设置密码,进入elasticsearch bin目录,执行命令:./elasticsearch-setup-passwords interactive   

会有一个确认提示,直接 y

然后逐个给内置帐号设置密码,如图:

六、修改kibanna内置账号

vim kibana.yml 修改为刚才设置的帐号密码

elasticsearch.username: "elastic"
elasticsearch.password: "xxxxxx"

重启kibana后访问http://localhost:5601/会弹出登录框:

登录后返回 {“statusCode”:404,”error”:”Not Found”,”message”:”Not Found”} 问题处理:

查看kibana状态 localhost:5601/api/status 

确认全部为绿色,清除浏览器cookie即可,这是因为Kibana将用户名/密码对加密,并将其存储在cookie中。当Kibana收到后续请求时,它会解密cookie,提取用户信息,并请求Elasticsearch验证用户名/密码对是否正确。

开启认证后es启动报错问题

ELK 7.8.0 two node cluster “At least one primary shard for the index [.security-7] is unavailable

.security索引损坏了,把损坏的索引删除即可,因为开启认证之后的crul命令要加上认证信息,执行以下命令:

curl --user elastic:123456 -H "Content-Type: application/json" http://localhost:9200/.security-*

其他问题欢迎留言~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/707896.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号