ElasticSearch 7.4集群部署 启用x-pack验证 Kibana7.4用户管理

一.es7.4集群搭建

1.1下载es以及修改相应配置
1.1.1节点规划
内网ip 节点
192.168.18.126 node-1
192.168.18.125 node-2
192.168.18.133 node-3
1.1.2下载
cd /opt
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.2-linux-x86_64.tar.gz
tar -zxvf elasticsearch-7.4.2-linux-x86_64.tar.gz
1.1.3修改配置

cd /opt/elasticsearch-7.4.2/config
vim elasticsearch.yml

cluster.name: es
# 节点名称
node.name: node-1
node.master: true
node.data: true

path.data: /opt/elasticsearch-7.4.2/data
path.logs: /opt/elasticsearch-7.4.2/logs

#允许远程访问
network.host: 0.0.0.0
transport.tcp.port: 19300
http.port: 19200

###
action.destructive_requires_name: true
discovery.zen.minimum_master_nodes: 2
discovery.seed_hosts: ["192.168.18.126","192.168.18.125","192.168.18.133"]
# 集群选举,对应三个节点
cluster.initial_master_nodes: ["node-1","node-2","node-3"]
#### 允许跨域访问
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: none
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

1.1.4设置普通用户

参考centos7安装elasticsearch-7.0.1伪集群

1.2启用x-pack验证

切换到es_123用户下,使用下面命令生成证书

bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""

启动elasticsearch

./elasticsearch -d

自动生成默认用户和密码

bin/elasticsearch-setup-passwords auto
1.3浏览器验证

在这里插入图片描述
在这里插入图片描述

二.Kibana7.4用户管理

2.1下载kibana以及修改相应配置
2.1.1下载
cd /opt
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.4.2-linux-x86_64.tar.gz
tar -zxvf kibana-7.4.2-linux-x86_64.tar.gz
2.1.2修改配置

cd /opt/kibana-7.4.2-linux-x86_64/config
vim kibana.yml

server.port: 15601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://192.168.18.126:19200"]
elasticsearch.username: "elastic"
elasticsearch.password: "xxxxx"
kibana.index: ".kibana"
xpack.reporting.encryptionKey: "a_random_string"
xpack.security.encryptionKey: "something_at_least_32_characters"
# 是否开启安全策略
# xpack.security.enabled: false
2.1.3 kibana用户管理

启动

/opt/kibana-7.4.2-linux-x86_64/bin/kibana --allow-root

添加用户并赋予相应的权限
在这里插入图片描述

2.1.4 用户权限
Elastic Stack安全功能将默认角色应用于所有用户,包括 匿名用户。默认角色使用户可以访问身份验证端点,更改自己的密码并获取有关自己的信息。
您还可以显式分配给用户一组内置角色。这些角色具有一组固定的特权,无法更新。

apm_system
授予APM系统用户将系统级数据(例如监视)发送到Elasticsearch所需的访问权限。
apm_user
授予对于APM用户(如所需的权限read和 view_index_metadata特权的apm-*和.ml-anomalies*指数)。
beats_admin
授予对.management-beats索引的访问权限,该索引包含Beats的配置信息。
beats_system
授予Beats系统用户将系统级数据(例如监视)发送到Elasticsearch所需的访问权限。
注意:   不应将此角色分配给用户,因为授予的权限可能会在版本之间发生变化。        该角色不提供对节拍索引的访问,并且不适合将节拍输出写入Elasticsearch。data_frame_transforms_admin
授予manage_data_frame_transforms群集特权,使您可以管理转换。该角色还包括针对机器学习功能的所有 Kibana特权。
data_frame_transforms_user
授予monitor_data_fram_transforms群集特权,使您可以使用转换。该角色还包括针对机器学习功能的所有 Kibana特权。
ingest_admin
授予访问权限以管理所有索引模板和所有接收管道配置。
注意:这个角色也没有提供用于创建指数的能力; 这些特权必须在单独的角色中定义。

kibana_dashboard_only_user
授予对Kibana仪表板的访问权限和对Kibana的只读权限。该角色无权使用Kibana中的编辑工具。有关更多信息,请参阅 仅Kibana仪表板模式。
kibana_system
授予Kibana系统用户读取和写入Kibana索引,管理索引模板和令牌以及检查Elasticsearch集群可用性所必需的访问权限。该角色授予对.monitoring-*索引的读取访问权限以及对索引的读写访问权限.reporting-*。有关更多信息,请参阅在Kibana中配置安全性。
注意:不应将此角色分配给用户,因为授予的权限可能会在版本之间发生变化。
kibana_user
授予访问Kibana中所有功能的权限。有关Kibana授权的更多信息,请参见Kibana授权。
logstash_admin
授予访问.logstash*索引以管理配置的权限。
logstash_system
授予Logstash系统用户将系统级数据(例如监视)发送到Elasticsearch所需的访问权限。有关更多信息,请参见 在Logstash中配置安全性。
注意:不应将此角色分配给用户,因为授予的权限可能会在版本之间发生变化。
该角色不提供对logstash索引的访问,因此不适合在Logstash管道内使用。
machine_learning_admin
资助manage_ml集群权限,读取访问.ml-anomalies*, .ml-notifications*,.ml-state*,.ml-meta*指数和写入访问 .ml-annotations*索引。该角色还包括针对机器学习功能的所有 Kibana特权。
machine_learning_user
授予查看机器学习配置,状态和处理结果所需的最低特权。该角色授予monitor_ml集群特权,对.ml-notifications和.ml-anomalies*索引的读取访问权限(存储机器学习结果)以及对.ml-annotations*索引的写入访问权限。该角色还包括针对机器学习功能的所有Kibana特权。
monitoring_user
授予除使用Kibana所需的X-Pack监视用户所需的最低特权。该角色授予对监视索引的访问权限,并授予读取基本群集信息所必需的特权。该角色还包括弹性堆栈监视功能的所有Kibana特权。还应该为监视用户分配kibana_user角色。
remote_monitoring_agent
授予将数据写入监视索引(.monitoring-*)所需的最低特权。该角色还具有创建Metricbeat索引(metricbeat-*)并将数据写入其中所需的特权。
remote_monitoring_collector
授予收集弹性堆栈的监视数据所需的最低特权。
reporting_user
授予X-Pack报告用户所需的特定特权,而不是使用Kibana所需的特权。该角色授予访问报告索引的权限;每个用户只能访问自己的报告。还应为报告用户分配一个kibana_user角色和一个角色,以授予他们访问将用于生成报告的数据的权限。
snapshot_user
授予必要的特权,以创建所有索引的快照并查看其元数据。该角色使用户可以查看现有快照存储库的配置和快照详细信息。它不授予删除或添加存储库或还原快照的权限。它还不允许更改索引设置或读取或更新索引数据。
superuser
授予对群集的完全访问权限,包括所有索引和数据。具有superuser角色的用户还可以管理用户和角色,并 模拟系统中的任何其他用户。由于此角色的允许性质,在将其分配给用户时要格外小心。
transport_client
授予通过Java Transport Client访问集群所需的特权。Java Transport Client使用Node Liveness API和Cluster State API(在启用嗅探功能时)获取有关集群中节点的信息。如果用户使用传输客户端,请为其分配此角色。

注意
有效使用传输客户端意味着授予用户访问群集状态的权限。这意味着用户可以查看所有索引,索引模板,映射,节点以及基本上与集群有关的所有内容的元数据。但是,此角色未授予查看所有索引中的数据的权限。

watcher_admin
授予对.watches索引的读取访问权限,对监视历史记录和触发的监视索引的读取访问权限,并允许执行所有监视程序操作。
watcher_user
授予对.watches索引,获取监视操作和监视者统计信息的读取权限。

参考:https://www.cnblogs.com/wangyong-blog/p/11598120.html
参考:https://discuss.elastic.co/t/ssl-errors-remaining-after-upgrade-to-7-5-0/212520
参考:https://blog.csdn.net/jiedaodezhuti/article/details/103972554

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章