kibana - 如何使用 SSL 在 Filbeat 和 Elasticsearch 之间建立安全连接
问题描述
我无法在 Filebeat 和 Elasticsearch 之间建立 SSL 连接。
我缺乏关于 SSL 的知识。我正在使用 X-Pack 使用命令生成证书certutil
。 bin/xpack/certutil ca
生成一个名为 的证书颁发机构elastic-stack-ca.p12
。
然后
$ bin/x-pack/certutil cert --ca elastic-stack-ca.p12
我相信它会创建一个由该 CA 签名的证书。这导致文件elastic-certificates.p12
. 从这里我一无所知。
我尝试通过设置到 ES 的 HTTPS 连接来测试证书是否有效。
我放
xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.key: /path/to/elastic-certificates.p12
xpack.security.http.ssl.certificate: /path/to/elastic-certificates.p12
xpack.security.http.ssl.certificate_authorities: [ "/path/to/elastic-stack-ca.p12" ]
但是,这会带来很多错误,其中之一是
caught exception while handling client http traffic, closing connection
当我https
在 Kibana 中添加 IP 和 CA 时,它无法与 ES 连接。
我想知道如何成功设置https。此外,如何在两台服务器之间建立 SSL 连接。一个包含 Filebeat,但没有 X-Pack 和带有 ES 的接收服务器,同时安装了 X-Pack。
解决方案
在您的 中添加这些 SSL 设置后elasticsearch.yml
,您还需要将密码添加到 Elasticsearch 密钥库和信任库。certutil
运行命令时应该设置密码。你可以这样做:
$ echo password | /usr/share/elasticsearch/bin/elasticsearch-keystore add --stdin xpack.security.transport.ssl.keystore.secure_password
$ echo password | /usr/share/elasticsearch/bin/elasticsearch-keystore add --stdin xpack.security.transport.ssl.truststore.secure_password
确保在进行这些更改后重新启动 Elasticsearch。
推荐阅读
- php - 如何从具有主题 functions.php 文件的函数中调用插件短代码?
- angularjs - 当我的其他功能调用时如何聚焦/单击按钮?
- firebase - 有没有办法在 firebase 控制台中查看每个 firebase 函数的调用次数?
- ruby-on-rails - Rails 中的时间模块
- java - 从 SQL 数组转换为 String[] 数组会引发 PSQLException
- html - 在 iOS 中的 UITableViewCell 上渲染 HTML
- arrays - 将数组中的值分配给MATLAB中的另一个数组
- c - 我需要帮助来修改 pnscan
- vuetify.js - 以 vuelidate 或任何其他方式验证日期
- reactjs - createPortal 不会覆盖 div 内容(如 ReactDOM.render)