为 Elasticsearch 设置账号密码

  |   0 评论   |   0 浏览

ES 安全的几个层面

  • 集群身份认证与用户鉴权(账号密码)
  • 集群内部安全通信(9300
  • 集群与外部间的安全通信(https1859480852486078464.webp
  • 本文只讲最基本的账号密码设置
  • ES 内置用户:https://www.elastic.co/guide/...

账号密码配置

  • 打开配置文件 elasticsearch.yml,修改或添加以下内容
    xpack.security.enabled: true
    
  • 重启 elasticsearch
    sudo systemctl restart elasticsearch
    
  • 生成密码(特别要记住 elastickibana_system 的密码)
    # 自动生成(须记住密码!!)
    /usr/share/elasticsearch/bin/elasticsearch-setup-passwords auto
    # 手动生成
    /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive
    
  • 打开配置文件 kibana.yml,修改或添加以下内容
    elasticsearch.username: "kibana_system"
    elasticsearch.password: "刚才生成的密码"
    
  • 重启 kibana,使用 elastic 账号登录1859481639677247488.webp
  • 可在 Stack Managent 下创建不同的角色和用户1859481901376651264.webp

Python 客户端调用示例

from elasticsearch import Elasticsearch
host = '192.168.2.3:9200'
user = 'elastic'
pwd = 'xxx'
# 下面两种格式二选一
es = Elasticsearch(host, http_auth=(user, pwd))
#es = Elasticsearch(f'http://{user}:{pwd}@{host}')
es.cat.nodes()

标题:为 Elasticsearch 设置账号密码
作者:michael
地址:https://blog.junxworks.cn/articles/2024/11/21/1732169667760.html