给docker创建的elasticsearch容器添加密码

                      
                            <

一、修改配置文件

1.进入容器
docker exec -it elasticsearch bash

2.启用认证

vi config/elasticsearch.yml
#添加如下内容

http.cors.enabled: true

http.cors.allow-origin: "*"

http.cors.allow-headers: Authorization

xpack.security.enabled: true

xpack.security.transport.ssl.enabled: true


3.保存后,退出容器,重启ES


docker restart elasticsearch


二、设置用户密码

1.上一步重启ES容器后,再次进入容器:


docker exec -it elasticsearch /bin/bash


2.再次进入容器后,执行以下命令


./bin/elasticsearch-setup-passwords interactive

出现:Initiating the setup of passwords for reserved users elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user.

You will be prompted to enter passwords as the process progresses.

Please confirm that you would like to continue [y/N]

上边英文大概的意思是:你如果确定开启密码的话,需要设置以下六种账户的密码(建议设置成一样的)


Please confirm that you would like to continue [y/N]y



Enter 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]: 

Changed password for user [apm_system]

Changed password for user [kibana]

Changed password for user [logstash_system]

Changed password for user [beats_system]

Changed password for user [remote_monitoring_user]

Changed password for user [elastic]


3.完成以上的设置后,需要再次重启ES容器


docker restart es


三、验证

http://127.0.0.1:9200/


四、访问方式

http://账户:密码@127.0.0.1:9200

>