ELK官方文档:在Kibana加密通讯
介绍
安全套接字层(SSL)和传输层安全性(TLS)为传输中的数据提供加密。虽然这些术语通常可以互换使用,但Kibana仅支持TLS,它取代了旧的SSL协议。
浏览器将流量发送到Kibana,而Kibana将流量发送到Elasticsearch。这些通信通道分别配置为使用TLS。
TLS需要X.509证书来验证通信方并执行传输中数据的加密。每个证书都包含一个公共密钥,并具有一个关联的但独立的私有密钥;这些密钥用于加密操作。Kibana支持PEM或PKCS#12格式的证书和私钥。
加密浏览器和Kibana之间的流量
您无需为这种类型的加密启用Elasticsearch安全功能。
1、获取Kibana的服务器证书和私钥。
当从Web浏览器接收连接时,Kibana将需要使用此“服务器证书”和相应的私钥。
获取服务器证书时,必须正确设置其主题备用名称(SAN),以确保具有主机名验证的现代Web浏览器将信任它。您可以将一个或多个SAN设置为Kibana服务器的标准域名(FQDN),主机名或IP地址。选择SAN时,应该选择将用于连接浏览器中的Kibana的任何属性,这可能是FQDN。
您可以选择使用该elasticsearch-certutil工具生成证书签名请求(CSR)和私钥。例如:
bin/elasticsearch-certutil csr -name kibana-server -dns some-website.com,www.some-website.com
这将产生一个名为的ZIP存档kibana-server.zip。提取该归档文件以获得PEM格式的CSR(kibana-server.csr)和未加密的私钥(kibana-server.key)。在此示例中,CSR具有的公用名(CN)kibana-server,SAN的SAN some-website.com和的另一SAN www.some-website.com。
您将需要使用证书颁发机构(CA)签署CSR以获得服务器证书。该证书的签名将由配置为信任CA的Web浏览器进行验证。
2、配置Kibana以访问服务器证书和私钥。
a、如果您的服务器证书和私钥为PEM格式:
在中指定服务器证书和私钥kibana.yml:
server.ssl.certificate: "/path/to/kibana-server.crt"
server.ssl.key: "/path/to/kibana-server.key"
如果您的私钥已加密,则将解密密码添加到您的Kibana密钥库中:
bin/kibana-keystore add server.ssl.keyPassphrase
b、否则,如果您的服务器证书和私钥包含在PKCS#12文件中:
在中指定您的PKCS#12文件kibana.yml:
server.ssl.keystore.path: "/path/to/kibana-server.p12"
如果您的PKCS#12文件已加密,则将解密密码添加到Kibana密钥库中:
bin/kibana-keystore add server.ssl.keystore.password
如果您的PKCS#12文件没有使用密码保护,则取决于生成方式,您可能需要将其设置 server.ssl.keystore.password为空字符串。
有关证书和密钥设置的更多信息,请参阅Kibana配置设置。
3、配置Kibana以为入站连接启用TLS。
指定在kibana.yml以下位置使用TLS :
server.ssl.enabled: true
4、重新启动Kibana。
进行这些更改之后,您必须始终通过HTTPS访问Kibana。例如,https:// <your_kibana_host> .com。
加密Kibana和Elasticsearch之间的流量编辑
要执行此步骤,您必须启用Elasticsearch安全功能,或者必须具有为Elasticsearch提供HTTPS端点的代理。
1、在Elasticsearch的HTTP层上启用TLS。
2、获取Elasticsearch的证书颁发机构(CA)证书链。
当连接到Elasticsearch时,Kibana需要适当的CA证书链来正确建立信任。
a、如果您遵循Elasticsearch文档来生成节点证书并使用了该 elasticsearch-certutil http命令,请kibana在其输出中检查目录。根据您选择的选项,输出可能包含PEM格式的CA证书链。
b、否则,您可能为每个Elasticsearch节点都有一个PKCS#12文件。您可以从这些文件之一中提取CA证书链。例如:
openssl pkcs12 -in elastic-certificates.p12 -cacerts -nokeys -out elasticsearch-ca.pem
这将生成一个名为PEM格式的文件elasticsearch-ca.pem,其中包含PKCS#12文件中的所有CA证书。
3、配置Kibana以信任HTTP层的Elasticsearch CA证书链。
如果您的CA证书链为PEM格式:
在中指定一个或多个CA证书kibana.yml:
elasticsearch.ssl.certificateAuthorities: ["/path/to/elasticsearch-ca.pem"]
b、否则,如果您的CA证书链包含在PKCS#12文件中:
您不应使用包含私钥的PKCS#12文件。这是不必要的安全风险。如果只有一个包含私钥的PKCS#12文件,一种更安全的方法是提取PEM格式的CA证书链。
elasticsearch.ssl.truststore.path: "/path/to/elasticsearch-ca.p12"
在中指定您的PKCS#12文件kibana.yml:
elasticsearch.ssl.truststore.path: "/path/to/elasticsearch-ca.p12"
如果您的PKCS#12文件已加密,则将解密密码添加到Kibana密钥库中:
bin/kibana-keystore add elasticsearch.ssl.truststore.password
如果您的PKCS#12文件没有使用密码保护,则取决于生成方式,您可能需要将其设置 elasticsearch.ssl.truststore.password为空字符串。
有关证书和密钥设置的更多信息,请参阅Kibana配置设置。
4、配置Kibana以为与Elasticsearch的出站连接启用TLS。
在中为Elasticsearch指定HTTPS URL kibana.yml:
elasticsearch.hosts: ["https://<your_elasticsearch_host>.com:9200"]
使用HTTPS协议会导致默认elasticsearch.ssl.verificationMode选项full,该选项利用主机名验证。有关此设置的更多信息,请参阅Kibana配置设置。
如果启用了Elastic监视功能,并且已经设置了单独的Elasticsearch监视集群,则还可以配置Kibana以通过HTTPS连接到监视集群。步骤相同,但每个设置都以开头xpack.monitoring.。例如,xpack.monitoring.elasticsearch.hosts,xpack.monitoring.elasticsearch.ssl.truststore.path等。
参考链接 :
https://www.elastic.co/guide/en/kibana/current/configuring-tls.html#configuring-tls-kib-es
ELK官方文档:在Kibana加密通讯相关推荐
- ELK官方文档收集Kibana监视数据编辑
注意:需要安装插件 X-PACK 介绍 如果在集群中启用弹性监控功能,则可以选择收集有关Kibana的指标. 以下方法涉及将度量发送到生产集群,该度量最终将它们路由到监视集群.有关替代方法,请参阅使用 ...
- 最新Elasticsearch8.4.3 + Kibana8.4.3在云服务器Centos7.9安装部署(参考官方文档)
一.前言 最近笔者学习Elasticsearch,官方最新稳定版为 Elasticsearch-8.4.3,想在云服务器上Centos7.9搭建.搭建之路坑多路少啊(指网上的博文教程五花八门,基本 ...
- Flask官方文档学习--从零开始解读(一)
介绍 Flask是一个基于Python语言的轻量级Web框架,与之经常对比的框架还有Django.Tornado等框架,当然学习这些肯定首先要有一点Python基础,当然由于框架带来的优越性,通常在实 ...
- 【Spring Boot官方文档原文理解翻译-持续更新中】
[Spring Boot官方文档原文理解翻译-持续更新中] 文章目录 [Spring Boot官方文档原文理解翻译-持续更新中] Chapter 4. Getting Started 4.1. Int ...
- iOS 9官方文档(翻译)
iOS9已经发布一段时间了,我也在最近升级了Xcdoe 7.0正式版,升级后才发现又有了很多奇妙的变化,于是查看官方文档的一些解释,顺便做了一些翻译,和大家分享一下(转载请注明出处). iPad多任务 ...
- 【kubernetes/k8s概念】Kubernetes1.12从零开始(初):课程介绍与官方文档汇总
说明 资料和交流方式 Kubernetes的文档介绍 Kubernetes中的术语与资源的操作方法 Kubernetes的API约定与启用方法 Kubernetes中资源(Object)的定义 kub ...
- Android HIDL 官方文档(七,END)—— 网络堆栈配置工具(Network Stack Configuration Tools)
网络工具封装 网络工具封装过滤器 1 供应商接口与链 2 允许使用的命令 21 ip 22 iptables ip6tables 23 ndc 24 tc 对应的官方文档地址:HIDL(General ...
- K8S-网络模型、POD/RC/SVC YAML 语法官方文档
2019独角兽企业重金招聘Python工程师标准>>> K8S-网络模型.POD/RC/SVC YAML 语法官方文档 博客分类: Kubernetes K8S-网络模型.POD/R ...
- 如何在ORACLE CLOUD中创建和访问容器集群丨内附官方文档链接
墨墨导读:本文描述如何在Oracle Cloud中创建并访问容器服务.为了简单,所有的操作都是针对root隔离区. 创建允许容器运行的政策官方文档链接 这一步是必须的,否则可以增加容器容器. 官方文档 ...
最新文章
- SAP MM 采购附加费计入物料成本?
- 腾讯Android自动化测试实战3.1.4 Robotium的控件获取、操作及断言
- linux权限c是什么意思,linux服务器下权限设置
- 数据库如何处理数据库太大_网络数据库中的数据处理
- java性能分析工具_java性能分析工具
- linux netfilter路由表,Linux netfilter 学习笔记 之十四 netfilter模块会修改数据包关联的路由缓存吗...
- laydate 和 Vue 奇怪的清空问题
- Python Selenium Webdriver常用方法总结
- 操作系统编写之代码解释
- Docker存储驱动之总览
- 【游戏体验】Colour My World(让我的世界充满色彩)
- linux 端口映射 命令,linux查看端口映射命令
- MASM入门(二)MASM基本语法
- 微信联盟链接不到服务器怎么,LOL微信登不上去怎么办?微信登不上解决方法推荐...
- php重构求圆柱圆锥的体积,六年级数学下册2.8 圆锥的体积教案 (新版)苏教版...
- 图扑数字孪生数据中心机房,助力产业绿色低碳转型
- 现在web前端主要做什么工作
- FORM 6i 安装
- 【allegro 17.4软件操作保姆级教程一】软件操作环境设置
- 一个APP想法,如何做到从想法到上线的全过程操作
热门文章
- 无线网卡没有linux驱动,ubuntu18.04没有无线网卡驱动怎么办?
- 软raid1 重新同步_软RAID搭建基于linux系统搭建RAID5
- 如何用python爬取公众号文章搜狗微信搜索_python如何爬取搜狗微信公众号文章永久链接的思路解析...
- Eclipse用法和技巧十六:自动添加未实现方法2
- 不相交轮换的乘积怎么求_浅谈两种求条件极值的方法
- juniper srx电话单通
- Sequel Pro登录失败
- 两道关于回溯法,分支限界法的算法题
- day10 多进程、多线程(一)
- 4月份西部数码.wang域名注册量报告:增速严重缩水