美文网首页
ES集群开启xpack认证

ES集群开启xpack认证

作者: 宇VS然 | 来源:发表于2023-01-04 17:10 被阅读0次

     用es单机版的方式开启xpack认证的时候,执行./bin/elasticsearch-setup-passwords auto 或者 ./bin/elasticsearch-setup-passwords interactive 最终会出现 ERROR:Usercancelled operation 的错误!

    解决方法:

    1, 生成CA证书

    ./bin/elasticsearch-certutil ca

    a.出现提示时,接受默认文件名,即 elastic-stack-ca.p12。此文件包含 CA 的公共证书和用于为每个节点签署证书的私钥。

    b.输入 CA 的密码。如果不部署到生产环境,您可以选择将密码留空。

    2, 配置CA证书

    在任何单个节点上,为集群中的节点生成证书和私钥。包括在上一步中生成的 elastic-stack-ca.p12 输出文件

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

    a.输入您的 CA 的密码,或者如果您在上一步中没有配置密码,请按 Enter。

    b.为证书创建密码并接受默认文件名。

    输出文件是一个名为 elastic-certificates.p12 的密钥库。此文件包含节点证书、节点密钥和 CA 证书。

    3, 复制证书到集群

    在集群中的每个节点上,将 elastic-certificates.p12 文件复制到 $ES_PATH_CONF 目录。也就是config目录。

    4, 修改配置文件,加入一下配置

    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: /usr/share/elasticsearch/config/elastic-certificates.p12

    xpack.security.transport.ssl.truststore.path: /usr/share/elasticsearch/config/elastic-certificates.p12

    5, 配置密码

    若在第2步的时候设置了密码,则需要这一步操作,若没有设置密码,可以跳过此步

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

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

    6, 重启es

    7, 设置密码即可

    ./bin/elasticsearch-setup-passwords auto

    感谢:解决Elasticsearch集群开启账户密码安全配置自相矛盾的坑

    相关文章

      网友评论

          本文标题:ES集群开启xpack认证

          本文链接:https://www.haomeiwen.com/subject/pnarcdtx.html