给使用docker安装的ES和Kibana设置账号密码

之前的一篇文章写过怎么安装ES、Kibana以及配置ES的中文分词器:使用Docker快速安装部署ES和Kibana并配置IK中文分词器以及自定义分词拓展词库

今天来讲一下怎么给使用docker安装的ES和Kibana设置账号密码

ES安装后,默认是不开启用户名密码验证的,如果你的ES服务是部署在内网的话,不使用账号密码还不会有太大的安全隐患。但是如果,你的ES服务是暴露在外网环境的话,不设置账号密码肯定是非常不安全的,那如何开启用户名密码验证呢?

下面就开始操作

一、给ES设置账号密码

如果是Docker安装的ES的话,首先需要进入ES容器

复制代码
docker exec -it es /bin/bash

注意:如果你docker安装ES时,已经加上了 -v 的参数,通过挂载卷的方式把ES容器里的配置文件映射到宿主机了的话,那你也可以不进入容器编辑配置文件,直接编辑映射到宿主机里的那个配置文件也行

1、启用认证

复制代码
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

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

复制代码
docker restart es

2、设置用户密码

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

复制代码
docker exec -it es /bin/bash

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

复制代码
./bin/elasticsearch-setup-passwords interactive

会出现以下画面

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

elastic、apm_system、kibana、logstash_system、beats_system、remote_monitoring_user

需要设置的账户密码比较多,所以这个过程有点漫长,耐心点设置就行了

输入y开始设置

都输入完成后,会出现以下画面

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

复制代码
docker restart es

重启后,输入ES的访问地址:http://192.168.56.10:9200

发现已经提示让你输入账号密码了

输入刚才设置的账号密码,就可以登录进去了

二、给Kibana设置账号密码

首先进入kibana容器

复制代码
docker exec -it kibana /bin/bash

配置账号密码

复制代码
vi config/kibana.yml

#添加以下内容
elasticsearch.username: "elastic"
elasticsearch.password: "xxxxxxxxxx"

保存,exit 退出容器,重启Kibana

复制代码
#重启Kibana
docker restart kibana

重启后,输入Kibana的访问地址:http://192.168.56.10:5601/app/kibana#/home

发现Kibana也已经提示让你输入账号密码了

输入刚才设置的账号密码,就可以登录进去了

相关推荐
潮湿的心情5 分钟前
亚洲牧原:活跃行业交流,延伸公益版图,市场拓展再结硕果
大数据·人工智能
落雪小轩韩7 分钟前
Git 常用操作与注意事项全攻略
大数据·git
winds~8 分钟前
【Git】git的回退功能
大数据·git·elasticsearch
熊猫钓鱼>_>40 分钟前
Hadoop 用户入门指南:驾驭大数据的力量
大数据·hadoop·分布式
Leo.yuan2 小时前
数据分析师如何构建自己的底层逻辑?
大数据·数据仓库·人工智能·数据挖掘·数据分析
Aurora_NeAr2 小时前
Apache Iceberg数据湖高级特性及性能调优
大数据·后端
SoFlu软件机器人2 小时前
飞算科技正在撬动各行业数字化转型的深层变革
大数据·科技
mit6.8244 小时前
论容器化 | 分析Go和Rust做医疗的后端服务
docker·golang·rust
东风微鸣4 小时前
Python 脚本最佳实践2025版
docker·云原生·kubernetes·可观察性
samLi06205 小时前
【工具变量】全国省市区县土地出让结果公告数据(2000-2024年)
大数据