生成Elasticsearch xpack安全认证证书

首次启动 Elasticsearch 时,会为用户生成密码,并自动为用户配置 TLS ,可以随时调整 TLS 配置,更新节点证书

一、生成证书

1、在任意节点上进入 Elasticsearch 的安装目录,使用 elasticsearch-certutil 为集群生成 CA 。

bin/elasticsearch-certutil ca

(1)设置 CA 文件名(默认即可)

(2)为 CA 设置密码

2、利用上一步的 elastic-stack-ca.p12 为集群生成证书和私钥。

bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12

(1)输入CA的密码

(2)为证书创建密码,并设置文件名(默认即可)

3、将证书拷贝到其他节点上。

二、使用TLS加密节点间通信

1、进入 Elasticsearch 配置目录,编辑 elasticsearch.conf 文件:

cluster.name: my-cluster

node.name: node-1

xpack.security.enabled: true

xpack.security.transport.ssl.enabled: true

xpack.security.transport.ssl.verification_mode: certificate

xpack.security.transport.ssl.client_authentication: required

xpack.security.transport.ssl.keystore.path: elastic-certificates.p12

xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

2、执行以下命令将证书密码保存到 Elasticsearch 的 keystore

bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password

bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password

3、为集群中的每个节点完成前面的步骤。

4、在集群的每个节点上,重新启动 Elasticsearch 。

三、为 Elasticsearch 加密 HTTP 客户端通信

1、 在任意单个节点上,从安装 Elasticsearch 的目录中,运行Elasticsearch HTTP 证书工具生成证书签名请求(CSR)。

bin/elasticsearch-certutil http

(1)是否生成 CSR ,输入 n 。

(2)是否使用现有 CA ,输入 y 。

(3)输入 CA 的路径。这是 elastic-stack-ca.p12 的绝对路径。

(4)输入 CA 的密码。

(5)输入证书的有效期。

(6)是否为每个节点生成一个证书,输入 y 。

(7)输入每个节点的名称(node.name)。

(8)输入所有节点的主机名、IP地址。

(9)输入私钥密码。

该命令生成一个 .zip 文件,其中包含 Elasticsearch 和 Kibana 使用的证书和密钥。每个文件夹都包含一个 README.txt ,说明如何使用这些文件。

2、解压缩生成的 elasticsearch-ssl-http.zip 文件。这个压缩文件包含用于Elasticsearch和Kibana的目录。

/elasticsearch

|_ README.txt

|_ http.p12

|_ sample-elasticsearch.yml

/kibana

|_ README.txt

|_ elasticsearch-ca.pem

|_ sample-kibana.yml

3、在集群中的每个节点上,完成以下步骤:

复制上面 elasticsearch 文件夹中的 http.p12 到 Elasticsearch 的配置目录下。

编辑 elasticsearch.yml ,启用 HTTPS 安全性,并指定 http.12 文件的位置。

xpack.security.http.ssl.enabled: true

xpack.security.http.ssl.keystore.path: http.p12

将私钥密码添加到 Elasticsearch 的安全设置中。

bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password

4、重新启动 Elasticsearch

相关推荐
Elasticsearch1 天前
如何通过 Claude Code 来写入 CSV 数据到 Elasticsearch
elasticsearch
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
大志哥1233 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
霸道流氓气质3 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工3 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智3 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_3 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
TableRow3 天前
参数化搜索的实现原理:从多维索引到查询优化
elasticsearch·全文检索
施努卡机器视觉3 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造