赞
踩
TLS(传输层安全性)是用于网络间通信的标准化加密协议的总称。另一方面,传输协议是Elasticsearch用于数据传输的特殊名称。
在 Elasticsearch 端,TLS 结构用于保证集群(节点)之间的数据以加密方式传输,并防止未提供相关加密证书的节点在未通知的情况下连接到现有的集群结构。除此之外,我们还将激活xpack.security模块。
当我们使用 Elasticsearch 基本许可时,安全模式默认安装为禁用。对于这个过程,我们首先需要激活xpack.security
模块。为此,在安装了 Elasticsearch 的电脑上,我们需要在 C:\elastic\config 目录(你安装在哪个目录)下的elasticsearch.yml文件中添加以下两行代码。
如果您的集群包含多个节点,我们需要在所有节点上执行此操作。
- xpack.security.enabled: true
- xpack.security.transport.ssl.enabled: true
在此过程之后,我们需要重新启动服务以检测更改并继续进行其他配置。重启服务后,我们进入Elasticsearch安装目录下的bin文件夹,在这里打开命令行。
elasticsearch-certutil ca
然后我们使用命令 创建证书。
当我们输入这个命令时,它会要求我们为我们将创建的证书命名。如果直接按回车,它会创建一个名为 default elastic-stack-ca.p12 ( p12 extension ) 的证书。
重命名后,我们为证书设置密码。请务必记下此处的密码,因为我们还将在创建密钥库并将其他节点添加到集群时使用它。
完成上述操作后,将使用我们为 Elasticsearch 主目录指定的名称创建一个证书。我们正在将此证书移动到Elasticsearch 主目录中的config文件夹中。
迁移后,我们在Elasticsearch主目录的bin 文件夹中运行命令行。在这个阶段,我们将创建我们的密钥库文件,如下所示:
elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
:输入命令并回车。它正在等待我们的密码。我们使用我们提供给证书的密码创建我们的密钥库文件。elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
: 输入命令并回车。当它要求输入密码时,我们再次输入相同的密码并按回车。在这一步之后,我们在elasticsearch.yml文件中进行相关的证书和密钥库定义如下。
- xpack.security.transport.ssl.verification_mode: certificate
- xpack.security.transport.ssl.client_authentication: required
- xpack.security.transport.ssl.keystore.path: global-test-ca.p12
- xpack.security.transport.ssl.truststore.path: global-test-ca.p12
最新版本的 elasticsearch.yml 文件:
通过这个过程,我们现在指定我们的证书和密钥库文件以用于节点之间的数据传输。
现在,最后,让我们在 bin 文件夹中再次运行命令行来确定要在 HTTP 请求中使用的密码。运行命令行后,我们可以设置两种密码:
elasticsearch-setpassword auto
:它会自动确定密码并在进程结束时将其显示在控制台上。elasticsearch-setpassword interactive
: 您必须为每个模块逐一输入并验证密码。最后,我们只需要重启每个节点上的服务。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。