云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南
文章转载自:https://mp.weixin.qq.com/s/iPfh9Mkwxf5lieiqt6ltxQ
服务器是命令行模式登录,没法以浏览器方式访问。而官方推荐的快捷部署方式,在kibana 端提供的访问方式如下:
i Kibana has not been configured.
Go to http://localhost:5601/?code=368039 to get started.
这个 localhost 针对的是云服务器,在我们本机是搞不定的。
更进一步说,官方提供的快捷的部署方式,针对的是本机有浏览器可以访问的场景,没有或者鲜有考虑云服务器部署情况。
最终还得回归本源:自己搞安全的方式,不用官方自动生成的 CA 和 密钥方式进行安全通信。
- 一方面:Elasticsearch 可控。
- 另一方面:与之安全通信的 Kibana 端 可用。

TLS tcp 加密通信设置
步骤1:先用默认的安装方式搞定 Elasticsearrch 安全配置
这一步,保存一下 elastic 密码,最后 kibana 访问要用。
验证机制:

步骤2:Elasticsearch 端改成自己生成CA 和 证书
参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/security-basic-setup.html
# 生成或创建认知中心。
./bin/elasticsearch-certutil ca
# 生成 TCP tls 加密通信的证书
./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
步骤3:修改 elasticsearch.yml 的安全配置
设置:集群名称(按照业务需求来)设置:节点名称(按照业务需求来)设置:TLS 安全加密,参考如下:
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.client_authentication: required
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
注意:这和自动生成的是一样的。改一下认证名称就可以。
步骤4:将密码存储在密钥库(这一步是坑,必须过!!)
这一步貌似 7.X 没有!
如果您在创建节点证书时输入了密码,请运行以下命令将密码存储在 Elasticsearch 密钥库中:
./bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
./bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
到这里,其实 TCP 安全通信部分配置完毕。
如果,此时启动 Elasticsearch, 至少不会报 TLS 加密相关的错误了。
由于,没有设置 Https,此时启动会报 http.p12 相关的 https 认证的错误。
Https 加密通信设置
参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/security-basic-setup-https.html
这块步骤非常多,直接按照官方文档来,就没有问题。
步骤1:生成 Http 的证书
./bin/elasticsearch-certutil http
步骤2:将生成的 zip 文件解压缩为 elasticsearch 和 kibana 两个文件夹。
zip 文件:elasticsearch-ssl-http.zip,解压缩后截图如下所示:

这两个分别就是:ES 端 Https 的安全加密机制和 kibana与ES 端加密通信机制所需。
官方给出的 sample-elasticsearch.yml 和 sample-kibana.yml 暖暖的,很贴心。
步骤3:在elasticsarch 端配置生成的 http.p12 证书。
其实我们用默认之前生成的就可以。
只需要把新生成的证书拷贝到给定的 config/certs 路径下面就可以。
步骤4:将密码存储在密钥库(这一步是坑,必须过!!)
./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password
到这里,其实 Elasticsearch 单独启动已没有报错了。
kibana 安全配置
其实:sample-kibana.yml 给出详细说明。
与elasticsearch 端默认的Http通信要改成 Https

使用生成的证书
前提:证书拷贝到 config 路径下面

需要配置非 elastic 管理员账户和密码
注意:7.X 版本 可以使用 elastic 账户的,8.0 安全需要,已被禁用。
默认给出了 kibana_system 账户,密码可以借助 reset_password 命令行工具实现。
./bin/elasticsearch-reset-password -u kibana_system
会自己帮我们生成密码,拷贝一下即可。

然后改动配置,参考如下:

云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南的更多相关文章
- 云服务器Centos7部署Tomcat服务器
目录 部署Tomcat服务器 1.安装JDK1.8 2.安装与启动tomcat 配置安全组(8080端口) 参考文章 部署Tomcat服务器 1.安装JDK1.8 JDK下载地址:https://ww ...
- 部署Flask项目到腾讯云服务器CentOS7
部署Flask项目到腾讯云服务器CentOS7 安装git yum install git 安装依赖包 支持SSL传输协议 解压功能 C语言解析XML文档的 安装gdbm数据库 实现自动补全功能 sq ...
- 阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7)
阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7) 1.效果图 1 2. 部署步骤 1 1. mysql安装附加(centos7) 7 ...
- 阿里云服务器centos7环境下安装xampp后,mysql有进程,但是却没有监听3306端口
配置阿里云服务器centos7中xampp环境时出现了一种情况: 在centos中可以使用命令进入mysql 修改后也可以远程用phpmyadmin连接mysql 但是用navicat却无法连接 先修 ...
- PHP--腾讯云服务器上部署LNMP环境
本文参考 云服务器上部署Laravel的实例教程 腾讯云 创建 Laravel5.4 项目 阿里云服务器部署php的laravel项目,在阿里云买ECS 搭建 Linux+Nginx+Mysql+PH ...
- unigui在阿里云服务器上部署
unigui在阿里云服务器上部署 客户租用了阿里云WINDOWS2008服务器,部署UNIGUI发现死活不行,WINDOWS2008自带的IE9浏览器打开URL,卡死在loading...... 我远 ...
- 云服务器ECS部署和卸载RabbitMQ
云服务器ECS部署RabbitMQ RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件,用于在分布式系统中存储转发消息,有良好的易用性.扩展性和高可用性.本文介绍如何通过ECS实例 ...
- 云服务器 Centos7.0 部署
CentOS安装jdk的三种方法 http://www.mamicode.com/info-detail-613410.html centos Linux下安装Tomcat和发布Java的web程序 ...
- 阿里云服务器centos7,docker部署mysql+Redis+vue+springboot+Nginx+fastdfs,亲测可用
一.购买云服务器 我是今年双十一期间在阿里云购买的服务器, 简单配置2核_4G_40G_3M,三年用了不到800块,不过当时我记得腾讯云更便宜,个人感觉,阿里的云服务器更加的稳定, 毕竟身经百战, 经 ...
随机推荐
- DIY蓝牙hub F1方向盘
介于已经入手了自己的第一套OWS FFB直驱力反馈方向盘,因此决定要自己做一款F1方向盘盘面,来提升一下F1 2020游戏的游戏体验感.整体的技术路线如下: [技术路线] 主控:esp32 软件环境: ...
- Python 中生成器的原理
生成器的使用 在 Python 中,如果一个函数定义的内部使用了 yield 关键字,那么在执行函数的时候返回的是一个生成器,而不是常规函数的返回值. 我们先来看一个常规函数的定义,下面的函数 f() ...
- Oracle oci python sdk简单使用
听说Oracle有个oracle always free计划,所以赶紧申请了个Oracle Cloud的账号,主要是用来FQ用的,之前用过Google的,不过只有1年的期限,由此看来这个很吸引人,搭建 ...
- Centos7 安装mysql服务器并开启远程访问功能
大二的暑假,波波老师送了一个华为云的服务器给我作测试用,这是我程序员生涯里第一次以root身份拥有一台真实的云服务器 而之前学习的linux知识在这时也派上了用场,自己的物理机用的是ubuntu系统, ...
- 算法竞赛进阶指南0x33同余
定义 如果整数a,b除以正整数m的余数相同,那么a,b模m同余 . 知识点 拓展欧几里得算法 代码 #include <bits/stdc++.h> using namespace std ...
- 项目开发中Maven的单向依赖-2022新项目
一.业务场景 工作多年,在真实的项目开发中经常会遇到将一个项目拆分成多个工程的情况,比如将一个真实的项目拆分成controller层,service层, dao层,common公共服务层等等.这样拆分 ...
- RocketMQ 详解系列
什么是RocketMQ RocketMQ作为一款纯java.分布式.队列模型的开源消息中间件,支持事务消息.顺序消息.批量消息.定时消息.消息回溯等.主要功能是异步解耦和流量削峰:. 常见的MQ主要有 ...
- 程序员的专属浪漫——用3D Engine 5分钟实现烟花绽放效果
谁说程序员不懂浪漫? 作为程序员,用自己的代码本事手搓一个技术感十足的惊喜,我觉得,这是不亚于车马慢时代手写信的古典主义浪漫. 那么,应该怎样创作出具有自我身份属性的浪漫惊喜呢? 玩法很多,今天给大家 ...
- codeforces600E Lomsat gelral【线段树合并/DSU】
第一次AC这道题,是三年前的一个下午,也许晚上也说不定.当时使用的\(DSU\) \(on\) \(tree\)算法,如今已经淡忘,再学习新的算法过程中,却与旧物重逢.生活中充满不可知会的相遇,即使重 ...
- Luogu1064 金明的预算方案 (有依赖的背包)
枚举多个状态 #include <iostream> #include <cstdio> #include <cstring> #include <algor ...