Elasticsearch - Configuring security in Elasticsearch 开启用户名和密码访问
ES7.x
首先,确认您的Elasticsearch集群是否启用了安全性功能。您可以通过检查配置文件 elasticsearch.yml
或者通过 curl
请求检查:
curl -u elastic:current_password -X GET "localhost:9200/_xpack/security/_authenticate?pretty"
在修改配置文件前,首先需要停止Elasticsearch服务。使用以下命令:
sudo systemctl stop elasticsearch
编辑Elasticsearch配置文件 elasticsearch.yml
,移除或注释掉与安全相关的配置。例如:
# xpack.security.enabled: true
同时,确保在 elasticsearch.yml
文件中,以下设置被正确配置或移除:
xpack.security.enabled: false
curl -X DELETE -u elastic:passwd* "http://127.0.0.1:9200/.security-7"
ES 8.x ,可以使用Elasticsearch提供的 elasticsearch-reset-password
工具
https://www.elastic.co/guide/en/elasticsearch/reference/current/reset-password.html
修改完配置文件后,重新启动Elasticsearch服务:
sudo systemctl start elasticsearch
确保Elasticsearch服务正常运行,并且密码验证已被禁用。您可以通过以下命令确认:
curl -X GET "localhost:9200"
如果返回了集群的状态信息而未要求认证信息,说明配置已生效。
删除Elasticsearch密码虽然可以简化测试环境,但应小心操作,确保在生产环境中保持严格的安全配置。
在Elasticsearch 7.x中删除密码虽然可以简化测试或开发环境的配置,但也会带来明显的安全风险,包括:
在生产环境中,应始终保持和增强Elasticsearch的安全配置,以确保数据的完整性和安全性。