[TOC]

一、elastic stack 根底平安

1. 生成证书

1.1 机会: 启动Elasticsearch之前

1.2 借助certutil工具-生成ca证书

./bin/elasticsearch-certutil ca
证书文件名为: elastic-stack-ca.p12

1.3 借助certutil工具-生成证书(在任一节点)

./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
证书名为: elastic-certificates.p12

1.4 将elastic-certificates.p12证书copy到所有node的config下

2. 利用生成证书-加密节点间通信

2.1 elasticsearch.yml:配置cluster.name

# 集群内的节点name雷同cluster.name: my-cluster

2.2 elasticsearch.yml:配置node.name

# 每个节点不同node.name: node1

2.3 elasticsearch.yml:退出certificate配置:

因为应用了ca证书制作颁发的certificates证书,verification mode就指定它, 前面还有ca生成的http证书, 配置就是http的(前面再说)
xpack.security.transport.ssl.enabled: truexpack.security.transport.ssl.verification_mode: certificate xpack.security.transport.ssl.client_authentication: requiredxpack.security.transport.ssl.keystore.path: elastic-certificates.p12xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

2.4. 后面3个步骤在所有节点上操作完

3. 在所有的节点上, start elasticsearch


4.对于证书文件的阐明

4.1 elastic-stack-ca.p12 蕴含

    1. 你的CA的公共证书
    1. 你要为各节点签订证书要用的私钥

4.2 elastic-certificates.p12

这个文件是一个 keystore 文件, 蕴含:

    1. 节点证书
    1. 节点私钥key
    1. CA证书(可易了解为前面有我就不必ca了)

4.3 keystore 是什么

密钥(key)和证书(certificates)存在一个文件中称为keystore。
在keystore里,蕴含两种数据:

  • 密钥实体(Key entity)——密钥(secret key)又或者是私钥和配对公钥(采纳非对称加密)
  • 可信赖的证书实体(trusted certificate entries)——只蕴含公钥

Keystore能够了解为寄存利用签名的文件。