我已经在 Ubuntu 上安装了 Elasticsearch 7.1。我想用密码保护集群,所以我在 elasticsearch.yml
文件中设置了:xpack.security.enabled: true
。现在,当我重新启动 Elasticsearch 时,我收到消息:
Transport SSL must be enabled if security is enabled on a [basic] license. Please set [xpack.security.transport.ssl.enabled] to [true] or disable security by setting [xpack.security.enabled]
我使用的是基本许可证。我看过this guide其中解释了如何使用 elasticsearch-certutil
在节点上安装 SSL 证书。
问题:
是否可以在不将
xpack.security.transport.ssl.enabled
设置为 true 的情况下使用密码保护集群?如果我有上面提到的指南并在 elasticsearch 集群上安装了 SSL 证书,我的网络服务器上是否需要任何 ssl 证书?我不希望 Web 服务器和 elasticsearch 之间的通信使用 SSL。
最佳答案
根据 this answer :
For a cluster that is running in production mode with a production license, once security is enabled, transport TLS/SSL must also be enabled. On the other hand, if we are running with a trial license, then transport TLS/SSL is not obligatory.
这是不可能的。在生产模式下,如果你想通过启用(设置 xpack.security.enabled: true
)来使用任何 xpack 安全特性,那么你需要使用 TLS/SSL 证书。
默认情况下,Web 服务器(和 Kibana)可以在没有任何 TLS/SSL 证书的情况下与集群通信(该证书用于 ES 节点内的通信)。如果您确实想在集群和 Web 服务器之间使用 TLS/SSL,则需要设置 xpack.security.http.ssl.enabled
,默认情况下设置为 false。
关于elasticsearch - 如果在 [基本] 许可证上启用了安全性,则必须启用传输 SSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56318110/