Linux下kibana的安装与配置

1. 环境配置

  1. 确保Linux服务器上已安装Java 8或更高版本。可以通过运行 java -version 来验证Java的版本。

  2. 下载Kibana 7.17.11的压缩文件,可以从Kibana 7.17.11下载

  3. 上传服务器,并解压Kibana压缩文件。

2. Kibana配置

编辑Kibana的配置文件 config/kibana.yml,设置以下配置:

yml 复制代码
# 指定Kibana服务器监听的端口,默认5601
server.port: 5602
# 绑定的主机地址
server.host: "192.1.1.1"
# 连接到的Elasticsearch节点的地址列表
elasticsearch.hosts: ["http://192.1.1.1:9201","http://192.1.1.1:9202","http://192.1.1.1:9203"]
# 通信的请求超时时间
elasticsearch.requestTimeout: 60000
# 指定Kibana界面的语言为中文
i18n.locale: "zh-CN"
  • server.port

    这个配置项指定Kibana服务器监听的端口

  • server.host

    这个配置项指定Kibana服务器绑定的主机地址。

  • elasticsearch.hosts

    这个配置项指定Kibana将连接到的Elasticsearch节点的地址列表。

  • elasticsearch.requestTimeout

    这个配置项指定Kibana与Elasticsearch通信的请求超时时间,以毫秒为单位 如果Kibana与Elasticsearch的请求超时,则会中断。

  • i18n.locale

    这个配置项指定Kibana界面的语言区域。"zh-CN",表示简体中文

3. 启动Kibana

Kibana不能使用root用户启动,因此需要创建一个名为 "es" 的用户和一个名为 "es" 的群组,然后将用户添加到该群组中:

bash 复制代码
# 新建群组es
 groupadd es
# 新建用户es并指定群组为es
 useradd -g es es
# 设置用户密码 
 passwd es  
# usermod 将用户添加到某个组group
 usermod -aG root es

安装目录赋权

bash 复制代码
chown -R es:es /mnt/data/install/kibana-7.17.11-linux-x86_64

进入到安装目录后,使用以下命令启动Kibana:

bash 复制代码
su es
./bin/kibana

启动成功

4. 访问Kibana

在浏览器中访问Kibana的Web界面 http://your_server_ip:port

禁用Kibana安全提示(Elasticsearch built-in security features are not enabled)

#! Elasticsearch built-in security features are not enabled. Without authentication, your cluster could be accessible to anyone. See https://www.elastic.co/guide/en/elasticsearch/reference/7.15/security-minimal-setup.html to enable security.

因为没有显式禁用安全选项导致,在es的安装路径下的config目录下elasticsearch.yml文件去 配置禁用安全选项xpack.security.enabled,之后重启Elasticsearch即可:

bash 复制代码
xpack.security.enabled: false

5. 添加安全性(可选)

以上设置可以保证基本使用,下面是开启安全的官方文档翻译:

设置Elasticsearch的最小安全性

您可以启用Elasticsearch的安全性功能,然后为内置用户创建密码。您可以随后添加更多用户,但使用内置用户可以简化启用集群安全性的过程。

最小安全性方案不足以用于生产模式集群。如果您的集群有多个节点,您必须先启用最小安全性,然后在节点之间配置传输层安全性(TLS)。

先决条件

  • 安装和配置Elasticsearch和Kibana。请参阅"Elastic Stack入门"。
  • 确保您使用的许可证包括您所需的特定安全功能。

基本许可证包括Elastic Stack的最小安全性设置,因此您可以只需下载分发版本并开始工作。您还可以启用免费试用许可证以访问Elastic Stack的所有功能。请参阅"订阅和许可证管理"。

启用Elasticsearch的安全性功能

当您使用基本许可证时,Elasticsearch的安全性功能默认处于禁用状态。启用Elasticsearch的安全性功能会启用基本身份验证,以便您可以运行具有用户名和密码身份验证的本地集群。

在您集群中的每个节点上,如果Kibana和Elasticsearch正在运行,请停止它们。

在您集群中的每个节点上,将xpack.security.enabled设置添加到$ES_PATH_CONF/elasticsearch.yml文件中,并将其值设置为true

yaml 复制代码
xpack.security.enabled: true

$ES_PATH_CONF变量是Elasticsearch配置文件的路径。如果您使用归档分发(zip或tar.gz)安装Elasticsearch,则该变量默认为$ES_HOME/config。如果您使用软件包分发(Debian或RPM),则该变量默认为/etc/elasticsearch

如果您的集群只有一个节点,请将discovery.type设置添加到$ES_PATH_CONF/elasticsearch.yml文件中,并将其值设置为single-node。此设置可确保您的节点不会意外连接到可能在您的网络上运行的其他集群。

yaml 复制代码
discovery.type: single-node

为内置用户创建密码

为了与集群通信,您必须为内置用户配置用户名。除非启用匿名访问,否则所有不包括用户名和密码的请求都将被拒绝。

只有在启用最小或基本安全性时,您才需要为elastickibana_system用户设置密码。

在您集群中的每个节点上,启动Elasticsearch。例如,如果您使用.tar.gz软件包安装Elasticsearch,请从ES_HOME目录运行以下命令:

bash 复制代码
./bin/elasticsearch

在另一个终端窗口中,通过运行elasticsearch-setup-passwords实用程序来设置内置用户的密码。

您可以对集群中的任何节点运行elasticsearch-setup-passwords实用程序。但是,应该只为整个集群运行此实用程序一次。

使用auto参数将随机生成的密码输出到控制台,以便以后在必要时进行更改:

bash 复制代码
./bin/elasticsearch-setup-passwords auto

如果要使用自己的密码,请改用interactive参数而不是auto参数运行命令。使用此模式将引导您通过内置用户的密码配置。

bash 复制代码
./bin/elasticsearch-setup-passwords interactive

保存生成的密码。您将需要这些密码以添加内置用户到Kibana。

设置elastic用户的密码后,将无法再次运行elasticsearch-setup-passwords命令。

下一步:配置Kibana以使用密码连接到Elasticsearch

当启用Elasticsearch的安全功能时,用户必须使用有效的用户名和密码登录Kibana。

您将配置Kibana以使用内置的kibana_system用户和之前创建的密码。Kibana执行一些需要使用kibana_system用户的后台任务。

此帐户不适用于个体用户,也没有权限从浏览器登录Kibana。相反,您将以elastic超级用户身份登录Kibana。

elasticsearch.username设置添加到KIB_PATH_CONF/kibana.yml文件中,并将其值设置为kibana_system用户:

yaml 复制代码
elasticsearch.username: "kibana_system"

`KIB_PATH

_CONF变量是Kibana配置文件的路径。如果您使用归档分发(zip或tar.gz)安装Kibana,则该变量默认为KIB_HOME/config。如果您使用软件包分发(Debian或RPM),则该变量默认为/etc/kibana`。

从安装Kibana的目录中运行以下命令来创建Kibana keystore并添加安全设置:

创建Kibana keystore:

bash 复制代码
./bin/kibana-keystore create

kibana_system用户的密码添加到Kibana keystore中:

bash 复制代码
./bin/kibana-keystore add elasticsearch.password

当提示时,输入kibana_system用户的密码。

重新启动Kibana。例如,如果您使用.tar.gz软件包安装Kibana,请从Kibana目录运行以下命令:

bash 复制代码
./bin/kibana

elastic用户身份登录Kibana。使用此超级用户帐户来管理空间、创建新用户和分配角色。如果在本地运行Kibana,请转到http://localhost:5601以查看登录页面。

下一步是什么?

恭喜!您已经启用了本地集群的密码保护,以防止未经授权的访问。您可以安全地以elastic用户的身份登录Kibana并创建其他用户和角色。如果您运行的是单节点集群,那么您可以在此停止。

如果您的集群有多个节点,则必须在节点之间配置传输层安全性(TLS)。如果不启用TLS,生产模式集群将无法启动。

设置Elastic Stack的基本安全性,以保护集群内所有节点之间的内部通信。

相关推荐
AI慧聚堂17 分钟前
自动化 + 人工智能:投标行业的未来是什么样的?
运维·人工智能·自动化
不爱学英文的码字机器19 分钟前
[Linux] Shell 命令及运行原理
linux·运维·服务器
cdut_suye30 分钟前
Linux工具使用指南:从apt管理、gcc编译到makefile构建与gdb调试
java·linux·运维·服务器·c++·人工智能·python
qq_4336184435 分钟前
shell 编程(三)
linux·运维·服务器
鸭梨山大。40 分钟前
Jenkins 任意文件读取(CVE-2024-23897)修复及复现
安全·中间件·jenkins
苹果醋342 分钟前
2020重新出发,MySql基础,MySql表数据操作
java·运维·spring boot·mysql·nginx
两张不够花44 分钟前
Jenkins 持续集成部署
运维·jenkins
Tlzns1 小时前
Linux网络——UDP的运用
linux·网络·udp
码农土豆1 小时前
PaddlePaddle飞桨Linux系统Docker版安装
linux·docker·paddlepaddle
Hacker_xingchen1 小时前
天融信Linux系统安全问题
linux·运维·系统安全