Step by step怎样部署一套生产环境下的elastic stack 7.2技术栈【六】——启用Kibana中的安全性配置

本章节主要包括配置kibana的会话安全和加密通信两项内容。

配置xpack.security.encryptionKey属性

用于加密cookie中的凭据的任意字符串,长度不超过32个字符。 至关重要的是,这个密钥不会暴露给Kibana的用户。 默认情况下,会在内存中自动生成一个值。 如果使用该默认行为,则在Kibana重新启动时,所有会话都将失效。

设置会话超时时间为30min。

在kibana.yml配置文件中:

xpack.security.encryptionKey: "something_at_least_32_characters"
xpack.security.sessionTimeout: 1800000

配置kibana使用https访问es服务

在节点1上es家目录下,为kibana服务制作数字证书:

./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12 --name es-node1 --ip 10.20.0.11 --pem

将得到的证书文件存放到kibana部署路径的配置文件目录下certs子目录中:

[elastic@es-node1 certs]$ pwd
/opt/kibana-7.2.0-linux-x86_64/config/certs
[elastic@es-node1 certs]$ ls
es-node1.crt  es-node1.key

在kibana.yml文件中为kibana配置ssl的相关参数

server.ssl.enabled: true
server.ssl.key: config/certs/es-node1.key
server.ssl.certificate: config/certs/es-node1.crt

此时,启动kibana服务,验证通过 https://10.20.0.11:5601 是否可以成功访问网站。
至此,我们在访问kibana服务时已经实现的加密通信。接下来,继续将kibana访问elasticsearch服务的过程切换到https加密通信。

配置kibana通过https访问elasticsearch

因为我们使用的是自签名证书,所以需要为kibana提供ca证书。
我们先在节点1上,将pkcs12格式的ca证书转换为kibana适用的pem格式,其中cacert.pem是证书公钥文件。

openssl pkcs12 -nocerts -nodes -in elastic-stack-ca.p12 -out private.pem
openssl pkcs12 -clcerts -nokeys -in elastic-stack-ca.p12 -out cacert.pem

在kibana.yml文件中配置elasticsearch.hosts参数,并指定ca证书文件位置::

elasticsearch.hosts: ["https://10.20.0.11:9200"]
elasticsearch.ssl.certificateAuthorities: [ "config/certs/cacert.pem" ]

将Kibana配置为通过HTTPS连接到Elasticsearch监控集群,在这里我们使用的是同一个es集群:

xpack.monitoring.elasticsearch.hosts: ["https://10.20.0.11:9200"]
xpack.monitoring.elasticsearch.ssl.certificateAuthorities: config/certs/cacert.pem

配置三个节点上的elasticsearch服务,在elasticsearch.yml文件中补充以下http.ssl服务使用的配置参数:

xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.keystore.path: certs/${node.name}.p12
xpack.security.http.ssl.truststore.path: certs/${node.name}.p12

将http.ssl访问证书时使用的密码信息存储在密钥库中:

bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password
bin/elasticsearch-keystore add xpack.security.http.ssl.truststore.secure_password
  • 在前面章节中我们为节点证书设置的密码是:es-node123
  • 三个es节点上均需要设置

重启服务进程并验证配置结果

重启三节点上的es服务进程:bin/elasticsearch
重启节点1上的kibana服务进程:bin/kibana
看到下面这样的日志输出时,可以确认配置成功了:

  log   [18:46:19.967] [info][listening] Server running at https://es-node1:5601
  log   [18:46:19.997] [info][status][plugin:spaces@7.2.0] Status changed from yellow to green - Ready

快捷链接:

  1. Step by step怎样部署一套生产环境下的elastic stack 7.2技术栈【一】—— 需要掌握的一些elastic重要概念与配置参数
  2. Step by step怎样部署一套生产环境下的elastic stack 7.2技术栈【二】—— 操作系统的初始化配置
  3. Step by step怎样部署一套生产环境下的elastic stack 7.2技术栈【三】—— 部署单机版本的elasticsearch技术栈
  4. Step by step怎样部署一套生产环境下的elastic stack 7.2技术栈【四】—— 在单机版es技术栈之上启用和配置es安全管理功能
  5. Step by step怎样部署一套生产环境下的elastic stack 7.2技术栈【五】—— 向es集群中增加更多节点并配置节点间的加密通信
  6. Step by step怎样部署一套生产环境下的elastic stack 7.2技术栈【六】——启用Kibana中的安全性配置
  7. Step by step怎样部署一套生产环境下的elastic stack 7.2技术栈【七】——启用Metricbeat的安全性配置

es集群中TLS配置参考材料:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值