Open Distro for Elasticsearch:重置默认管理员密码
Open Distro for Elasticsearch: reset default admin password
我刚开始为 elasticsearch 打开发行版并尝试在 Kubernetes 集群上 运行 它。部署集群后,我需要更改 admin
用户的密码。
我经历了这个 post - default-password-reset
我才知道,要更改密码,我需要执行以下步骤:
exec
在主节点之一
- 使用
/usr/share/elasticsearch/plugins/opendistro_security/tools/hash.sh
脚本为新密码生成哈希值
- 用新哈希更新
/usr/share/elasticsearch/plugins/opendistro_security/securityconfig/internal_users.yml
- 运行
/usr/share/elasticsearch/plugins/opendistro_security/tools/securityadmin.sh
带参数
问题:
- 有什么方法可以在引导集群期间设置这些(通过
env
或 elasticsearch.yml
)?
我必须使用更新后的密码哈希重新创建 internal_users.yml
文件,并将该文件装载到数据库 pods.
的 /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/internal_users.yml
目录中
因此,当 Elasticsearch 节点启动时,它会使用默认用户的更新密码(即 admin
)启动。
我使用 bcrypt go package 生成密码哈希。
docker exec -ti ELASTIC_MASTER bash
/usr/share/elasticsearch/plugins/opendistro_security/tools/hash.sh
##输入通行证
百胜安装纳米
#用新的哈希替换生成的哈希
纳米 /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/internal_users.yml
#exec 这个命令发生
sh /usr/share/elasticsearch/plugins/opendistro_security/tools/securityadmin.sh -cd /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/ -icl -nhnv -cacert config/root-ca.pem -cert config/admin.pem -key config/admin-key.pem
您还可以执行以下命令从您的 kubernetes 集群中获取用户名和密码的值:
kubectl get secret -n wazuh elastic-cred -o go-template='{{.data.username | base64decode}}'
kubectl get secret -n wazuh elastic-cred -o go-template='{{.data.password | base64decode}}'
注意:'-n wazuh' 表示命名空间,使用适合您的名称
参考:https://www.elastic.co/guide/en/cloud-on-k8s/current/k8s-deploy-elasticsearch.html
我刚开始为 elasticsearch 打开发行版并尝试在 Kubernetes 集群上 运行 它。部署集群后,我需要更改 admin
用户的密码。
我经历了这个 post - default-password-reset
我才知道,要更改密码,我需要执行以下步骤:
exec
在主节点之一- 使用
/usr/share/elasticsearch/plugins/opendistro_security/tools/hash.sh
脚本为新密码生成哈希值 - 用新哈希更新
/usr/share/elasticsearch/plugins/opendistro_security/securityconfig/internal_users.yml
- 运行
/usr/share/elasticsearch/plugins/opendistro_security/tools/securityadmin.sh
带参数
问题:
- 有什么方法可以在引导集群期间设置这些(通过
env
或elasticsearch.yml
)?
我必须使用更新后的密码哈希重新创建 internal_users.yml
文件,并将该文件装载到数据库 pods.
/usr/share/elasticsearch/plugins/opendistro_security/securityconfig/internal_users.yml
目录中
因此,当 Elasticsearch 节点启动时,它会使用默认用户的更新密码(即 admin
)启动。
我使用 bcrypt go package 生成密码哈希。
docker exec -ti ELASTIC_MASTER bash
/usr/share/elasticsearch/plugins/opendistro_security/tools/hash.sh
##输入通行证
百胜安装纳米
#用新的哈希替换生成的哈希 纳米 /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/internal_users.yml
#exec 这个命令发生 sh /usr/share/elasticsearch/plugins/opendistro_security/tools/securityadmin.sh -cd /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/ -icl -nhnv -cacert config/root-ca.pem -cert config/admin.pem -key config/admin-key.pem
您还可以执行以下命令从您的 kubernetes 集群中获取用户名和密码的值:
kubectl get secret -n wazuh elastic-cred -o go-template='{{.data.username | base64decode}}'
kubectl get secret -n wazuh elastic-cred -o go-template='{{.data.password | base64decode}}'
注意:'-n wazuh' 表示命名空间,使用适合您的名称
参考:https://www.elastic.co/guide/en/cloud-on-k8s/current/k8s-deploy-elasticsearch.html