elastic学习-本地kibana通过安全证书连接远程elasticsearch

1. 需要的证书文件

1.1 前情提要

原因是阿里云服务器内存资源有限,实在是养不起kibana,所以只在阿里云部署es,在本地计算机启动一个kibana来连接;
当然也可以是elasticsearch-head或者elasticvue浏览器插件的.

1.2 需要的3个文件

kibana通过证书访问远程es需要这3个文件:crt/csr/key
主要是本地kibana需要这三个配置, 所以后面生成这3个文件之后, 要下载下来, 放到本地kibana/config目录下,配置上全路径:

elasticsearch.ssl.certificate: d:/xxx/kiana/config/kibana.crt
elasticsearch.ssl.key: d:/xxx/kiana/config/kibana.key
elasticsearch.ssl.certificateAuthorities: [ "d:/xxx/kiana/config/elasticsearch-ca.pem" ]

2. 证书的生成

  • csr/key/crt生成都需在es所在服务器上!

2.1 生成csr/key证书

bin/elasticsearch-certutil csr -name kibana -dns myhost
#会在es的根目录下生成 csr-bundle.zip 文件, `unzip csr-bundle.zip`解压开:
#会有2个文件: 
  • kibana/kibana.csr
  • kibana/kibana.key

2.2 生成crt证书

openssl x509 -req -in kibana.csr -signkey kibana.key -out kibana.crt
# 会生成crt文件:
  • kibana.crt

3. 本地kibana配置文件

server.port: 5601
server.host: "localhost"
elasticsearch.hosts: ["https://myhost.com:9200"]

#不能使用elastic账号,elastic账号是管理员账号
#可以通过`bin/elasticsearch-certutil -u kibana -i`自定义一对账密
elasticsearch.username: "kibana"
elasticsearch.password: "mypassword"

#配置下面3个证书文件(服务器es上生成的crt/key/pem)
elasticsearch.ssl.verificationMode: none
elasticsearch.ssl.certificate: D:/_tmp/kibana-8.5.2/config/kibana.crt
elasticsearch.ssl.key: D:/_tmp/kibana-8.5.2/config/kibana.key
elasticsearch.ssl.certificateAuthorities: [ "D:/_tmp/kibana-8.5.2/config/elasticsearch-ca.pem" ]
上面就是本地kibana.yml的全部配置, 然后直接启动即可连接.

4. 备注说明

  • 服务器hostname=myhost
  • 服务器域名=myhost.com
  • 如果还不行,可能还需要服务es支持cors,因为之前配置elasticvue和head插件已经配置了,这里没写,服务器es主要配置如下:
cluster.name: my-cluster
node.name: node-1
path.data: /xxx/es-8.5.2/data
path.logs: /xxx/es-8.5.2/logs
# 设置网络访问节点
network.host: myhost
# 设置网络访问端口
http.port: 9200 
# 安全认证
xpack.security.enabled: true
xpack.security.enrollment.enabled: true
# http的认证
xpack.security.http.ssl: 
  enabled: true
  keystore.path: /xxx/es-8.5.2/config/certs/http.p12
  truststore.path: /xxx/es-8.5.2/config/certs/http.p12
# 传输认证
xpack.security.transport.ssl: 
  enabled: true
  verification_mode: certificate
  keystore.path: /xxx/es-8.5.2/config/certs/elastic-certificates.p12
  truststore.path: /xxx/es-8.5.2/config/certs/elastic-certificates.p12
# 此处注意, node-1是上面配置的节点名称
cluster.initial_master_nodes: ["node-1"]
http.host: [_local_, _site_]
ingest.geoip.downloader.enabled: false
xpack.security.http.ssl.client_authentication: none

#elasticvue/head/kibana
http.cors.enabled: true
http.cors.allow-origin: "*"

# elasticvue/head/kibana:
http.cors.allow-headers: X-Requested-With,Content-Type,Content-Length,Authorization

遇见超乎想象的自己!

319 声望
16 粉丝
0 条评论
推荐阅读
elastic学习-elastic stack 基础安全(transport层)
./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12证书名为: elastic-certificates.p12

风雪十年灯阅读 523

Ubuntu 20.04 搭建 Elasticsearch 7.x 小集群(qbit)
环境ES 节点硬件:3 台 AWS m5.4xlarge(16 vCPU/64GB 内存)Kibana 硬件:1 台 AWS m5.large(2 vCPU/8GB 内存)操作系统:Ubuntu 20.04 LTSElasticsearch 7.9.3Kibana 7.9.3机器示意图操作系统这里主要讲 EBS ...

qbit阅读 4.2k

elasticsearch(2)- DQL 用法
Query DSL:ElasticSearch提供了一个可以执行的JSON风格的DSL(domain-specific language 领域特定语言),这个被称为Query DSL。

KerryWu1阅读 1.2k

Helm3-安装ElasticSearch和Kibana
因为自己的网站要做全文检索功能,本身我是使用mongodb做为数据库的,但是考虑到后期数据量非常大而且用户体验也要跟上,所以准备入手elasticsearch做为我的站内搜索,现分享给大家。

Awbeci阅读 2.3k

es笔记六之聚合操作之指标聚合
本文首发于公众号:Hunter后端原文链接:es笔记六之聚合操作之指标聚合聚合操作,在 es 中的聚合可以分为大概四种聚合:bucketing(桶聚合)mertic(指标聚合)matrix(矩阵聚合)pipeline(管道聚合)bucket类似于分类分...

Hunter2阅读 492

封面图
将 ES 的快照备份到 Windows 共享目录(qbit)
已将 Windows 的 //172.31.19.143/es_snapshot 共享目录挂载到 ES 服务器的 /mnt/winshare 目录

qbit阅读 2.1k

Linux下安装ElasticSearch+head+kinbana
Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级...

Zeran阅读 1.8k

遇见超乎想象的自己!

319 声望
16 粉丝
宣传栏