乐闻世界logo
搜索文章和话题

Elasticsearch 的默认用户和密码是什么?

4个答案

1
2
3
4

Elasticsearch 在默认情况下并没有设置用户权限认证机制。但从5.x版本开始,Elastic Stack 引入了 X-Pack 插件,随后在7.x版本中,Elasticsearch 和Kibana 的基本安全特性被默认启用在了基本版中,这一特性包括了密码保护。

当你首次安装 Elasticsearch 时,你需要初始化内置用户的密码。Elasticsearch拥有几个内置用户,例如 elastickibanalogstash_system 等。其中,elastic 用户是超级用户,可以用来登录 Kibana 和操作 Elasticsearch 集群。

在启用了基本安全特性的 Elasticsearch 版本中,没有默认密码。相反,你需要在设置过程中使用 elasticsearch-setup-passwords 命令来为内置用户设置密码。例如,通过以下命令可以为所有内置用户设置密码:

bash
bin/elasticsearch-setup-passwords auto

该命令会为每个内置用户生成随机密码,并在命令行中显示。另外,也可以使用交互式命令 interactive 来为每个用户设置你想要的密码。

如果是Elasticsearch集群的Docker容器实例,也可以通过设置环境变量 ELASTIC_PASSWORD 来指定 elastic 用户的密码。

请注意,出于安全原因,应该避免使用默认密码或弱密码,并且在部署的时候应该为所有的内置用户设置强密码。此外,对于生产环境,最好遵循最小权限原则配置用户角色,以降低安全风险。

2024年6月29日 12:07 回复

默认值是

shell
user: elastic password: changeme

所以:

shell
$ curl -u elastic:changeme localhost:9200 { "name" : "5aEHJ-Y", "cluster_name" : "docker-cluster", "cluster_uuid" : "3FmaYN7rS56oBTqWOyxmKA", "version" : { "number" : "5.6.2", "build_hash" : "57e20f3", "build_date" : "2017-09-23T13:16:45.703Z", "build_snapshot" : false, "lucene_version" : "6.6.1" }, "tagline" : "You Know, for Search" }

了解有关更改默认值的更多信息。

2024年6月29日 12:07 回复

如果您在elasticsearch 7.7版本中启用了基本的x-pack安全性xpack.security.enabled: true(在撰写本答案时),它将不会changeme像旧版本的x-pack中那样具有默认密码()。

正如安全入门官方文档中提到的

X-Pack 安全性提供了一个内置的弹性超级用户,您可以使用它来开始设置。该elastic用户拥有集群的完全访问权限,包括所有索引和数据,因此elastic用户默认没有设置密码。

所以您需要更改密码elastic,如果您想在安装后更改密码,请按照交互模式指南中的内置用户设置密码进行操作

这需要您从 elasticsearch bin 文件夹运行以下命令。

shell
bin/elasticsearch-setup-passwords interactive
2024年6月29日 12:07 回复

设置用户名和密码

ssh到系统,停止elasticsearch和kibana服务,然后运行以下命令

shell
sudo nano /etc/elasticsearch/elasticsearch.yml

更新此文件,通过添加以下行来启用安全性

shell
xpack.security.enabled: true

更改密码

执行以下步骤更改密码

步骤1:

shell
cd /usr/share/elasticsearch/

第2步:

shell
sudo bin/elasticsearch-setup-passwords auto

自动 - 使用随机生成的密码 交互式 - 使用用户输入的密码

或者

shell
sudo bin/elasticsearch-setup-passwords interactive

您可以在“交互”模式下运行该命令,该模式会提示您输入elastic、kibana_system、logstash_system、beats_system、apm_system和remote_monitoring_user用户的新密码:

以上命令可以帮助您设置密码

启动弹性搜索

  1. 通过运行 systemctl 命令启动 Elasticsearch 服务:

    sudo systemctl启动elasticsearch.service

系统启动该服务可能需要一些时间。如果成功的话不会有任何输出。

  1. 启用 Elasticsearch 在启动时启动:

    sudo systemctl 启用elasticsearch.service

启动并启用 Kibana

  1. 启动 Kibana 服务:

    sudo systemctl 启动 kibana

如果服务启动成功,则没有任何输出。

  1. 接下来,将 Kibana 配置为在启动时启动:

    sudo systemctl 启用 kibana

2024年6月29日 12:07 回复

你的答案