注意:以下操作均在非 root 用户下进行
1.在根目录下,为集群创建认证机构
bin/elasticsearch-certutil ca
依次输入回车(文件使用默认名)、然后再输入密码
2.为节点生成证书
bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
依次输入回车(文件使用默认名)、然后再输入密码。密码建议跟上一步相同
bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
输入第一步创建的密码。
bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
输入第一步创建的密码。
3.为节点颁发证书
将 elastic-certificates.p12
、elastic-stack-ca.p12
、 elasticsearch.keystore
(在bin目录下)一同 scp 至 config 目录下
scp elastic-certificates.p12 elastic-stack-ca.p12 config
在根目录下执行
scp elasticsearch-keystore ../config
在 bin 目录下执行。确保这文件都在 config 目录下:
若是其他服务器的节点,命令如下:
scp elastic-certificates.p12 elasticsearch.keystore elastic-stack-ca.p12 root@192.168.1.100:/usr/local/elasticsearch-7.6.1/config/
4.修改配置文件
#---------------------security------------------
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
使用 su root 进行 vim 修改。
启动 x-pack 安全组件,启用 ssl 加密通信,并且配置认证证书。
修改完, 用普通用户重启 es。
5.密码设置
bin/elasticsearch-setup-passwords interactive
通过设置访问密码,这是elastic用户和其他一些系统内置用户的密码。