Elasticsearch 入門(四)開啟 Elasticsearch 安全功能(使用Xpack)


Elasticsearch 入門(四)開啟 Elasticsearch 安全功能(使用Xpack)

elasticsearch 在7.1版本之后可以免費使用x-pack,不需要額外付費

Elasticsearch 安全功能入門

從 Elastic Stack 6.8 和 7.1 開始,我們在默認分發包中免費提供多項安全功能,例如 TLS 加密通信、基於角色的訪問控制 (RBAC),等等。

在 Elasticsearch 主節點上配置 TLS

1.首先在之前的docker-compose文件上加上

....
    image: docker.elastic.co/elasticsearch/elasticsearch:7.7.0
    environment: 
      - "xpack.security.enabled=true"
....
  1. 啟動容器后進入容器 docker exec -it containerid bash
  2. cd 命令更改至 master 目錄,然后運行下列命令:
    bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""
  3. vi config/elasticsearch.yaml
    將下列代碼行粘貼到文件末尾。
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
  1. 手動生成密碼。bin/elasticsearch-setup-passwords interactive

第 2 步:Elasticsearch 集群密碼 一旦主節點開始運行,便可以為集群設置密碼了。在新終端中,我們必須通過 cd 命令更改至主節點目錄。然后我們運行命令 bin/elasticsearch-setup-passwords auto。這將會為不同的內部堆棧用戶生成隨機密碼。或者,您也可以跳過 auto 參數,改為通過 interactive 參數手動定義密碼。請記錄這些密碼,我們很快就會再次用到這些密碼。

  1. 保存記錄好的密碼

在 Kibana 中配置基於角色的訪問控制 (RBAC)

  1. 進入Kibana容器 docker exec -it containerid bash
  2. 文本編輯器打開config/kibana.yml文件
  3. 找到類似下面的代碼行
#elasticsearch.username: "user"
#elasticsearch.password: "pass"

對 username 和 password 字段取消注釋,方法是刪除代碼行起始部分的 # 符號。將 "user" 更改為 "kibana",然后將 "pass" 更改為 setup-passwords 命令告訴我們的任何 Kibana 密碼。保存文件,然后我們便可通過運行 bin/kibana 啟動 Kibana 了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM