ELASTICSEARCH7.4 免费启用X-PACK插件 设置账号、权限 包含错误--ERROR: FAILED TO SET PASSWORD FOR USER [APM_SYSTEM]

kibana面板本来用不同的用户空间开放给不用的用户使用,但是不同的面板空间都需要新建索引管理,很不方便;而且通过删除url后缀就能访问到默认空间,很不安全。官方给的消息说从6.8 和 7.1 开始默认提供x-pack的安全功能,虽然只是一部分,但也够用了。针对网上千奇百怪的文章,整理了一套自己能用的启用方式。

1. 升级java11版本

如果升级jdk,我使用的jdk8不支持启用,最低标准是jdk11。
2. 配置 es文件,末尾添加配置项

---- vim elasticsearch.yml

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

3. 重启-elasticsearch,就能启用,如果出现问题;删除配置就恢复;使用chrome插件-elasticsearch head;就发现已经有密码验证了。

 

 

 

4. 设置密码,可以根据自己情况生成密码,我使用的auto;因为手动配置密码,在【apm_system】账户时提示失败;自动生成就没问题

cd /usr/share/elasticsearch/bin
//生成随机密码
elasticsearch-setup-passwords auto
or
//设置默认账号密码
elasticsearch-setup-passwords interactive

 

使用 手动修改密码--elasticsearch-setup-passwords interactiveEnter password for [elastic]:
Reenter password for [elastic]:
Enter password for [apm_system]:
Reenter password for [apm_system]:
Enter password for [kibana]:
Reenter password for [kibana]:
Enter password for [logstash_system]:
Reenter password for [logstash_system]:
Enter password for [beats_system]:
Reenter password for [beats_system]:
Enter password for [remote_monitoring_user]:
Reenter password for [remote_monitoring_user]:
Connection failure to: http://127.0.0.1:9200/_security/user/apm_system/_password?pretty failed: Read timed out
ERROR: Failed to set password for user [apm_system].

 注意在执行该命令前一定要确保elasticsearch.yml里discovery.seed_hosts和cluster.initial_master_nodes节点都正常运行,不能确保就改本机节点,否则出现错误:ERROR: Failed to set password for user [apm_system]

5. 修改kibana中elasticsearch用户密码、重启,vim /etc/kibana/kibana.yml (使用的是kibana用户,但是登陆还的用超管用户--elastic);

 

 

 

 6. 登陆之后会发现es没有接收到logstash的消息了;还需要配置logstash中的密码才能发送;

 

 

7. 如果配置了elasticalert,也需要在配置文件中修改才能接收到告警信息;

8. 配置成功后,登陆kibana,在【管理】中发现多了【安全】的配置;

 

 

9. 创建角色、用户,分配权限、工作区可见内容;内置用户不能修改;

 

 

 

 

 

 这样就可以根据不同的用户分配权限了,还是官网自产的东西便于使用。

posted @ 2021-04-27 16:54  a-du  阅读(3148)  评论(0编辑  收藏  举报