elasticsearch 配置用户名和密码

无密码的其他配置项在:https://blog.csdn.net/Xeon_CC/article/details/132064295

elasticsearch.yml配置文件:

xpack.security.enabled: true
xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.keystore.path: /path/to/elastic-certificates.p12
xpack.security.transport.ssl: enabled: trueverification_mode: certificateclient_authentication: requiredkeystore.path: /path/to/elastic-certificates.p12truststore.path: /path/to/elastic-certificates.p12
证书的密码:
abcd1234所有用户的密码:
bcda1234生成证书
elasticsearch-certutil ca --out /path/to/elastic-stack-ca.p12 --pass abcd1234如果你不想生成单独的证书,也就是三个节点共用一个证书,请不要执行这行命令,这行命令将被下文所提到的证书生成方式代替。
elasticsearch-certutil cert --ca /path/to/elastic-stack-ca.p12输入指定路径
/path/to/elastic-certificates.p12注意:设置密码这一步,三个节点都要执行。
设置密码
elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password
elasticsearch-keystore add xpack.security.http.ssl.truststore.secure_password
elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password查看密码
elasticsearch-keystore show xpack.security.http.ssl.keystore.secure_password
elasticsearch-keystore show xpack.security.http.ssl.truststore.secure_password
elasticsearch-keystore show xpack.security.transport.ssl.truststore.secure_password
elasticsearch-keystore show xpack.security.transport.ssl.keystore.secure_password如果你希望集群共享一个整数,那么三个节点,确保elastic-certificates.p12证书文件是复制到每个节点的。设置为false
xpack.security.http.ssl.enabled: false
修改密码
elasticsearch-setup-passwords interactive最后,配置文件改回去
xpack.security.http.ssl.enabled: true最后在elasticsearch-head访问:https://192.168.0.111:9200/?auth_user=xxx&auth_password=xxx

在上面的“生成证书”这个步骤中的第二行命令,可以换为以下的步骤,安全性会更高,注意,确保存在elastic-stack-ca.p12文件,也就上述“生成证书”步骤中的第一行命令生成的文件。
首先随便选择一个节点:在任何目录下创建instances.yml,并键入如下内容:

instances:- name: "node-1"dns:- "localhost"ip:- "192.168.1.105"- name: "node-2"dns:- "localhost"ip:- "192.168.1.105"- name: "node-3"dns:- "localhost"ip:- "192.168.1.105"

比如我放在config目录下

elasticsearch-certutil cert --in config/instances.yml --out config/certs/certificates.zip --ca config/certs/elastic-stack-ca.p12 --pass abcd1234

然后,解压certificates.zip文件,会得到node-1、node-2、node-3文件夹
把node-1.p12、node-2.p12、node-3.p12复制到每个对应es节点中的config/certs目录下,certs目录如果没有则自己新建。

最后更改elasticsearch.yml配置文件
在这里插入图片描述
把这些证书文件替换为各自的证书文件。

这种配置方式的安全性要更高,推荐使用这种每个节点的证书都不同的方式。

如何用python通过SSL证书连接ES集群?
在每一个节点执行一下命令:

使用openssl配置客户端证书

openssl pkcs12 -in node-1.p12 -out node-1.crt -nokeys -nodes
openssl pkcs12 -in node-2.p12 -out node-2.crt -nokeys -nodes
openssl pkcs12 -in node-3.p12 -out node-3.crt -nokeys -nodes

然后,合并证书;

type node-1.crt node-2.crt node-3.crt > combined_ca.crt

最后在python中使用combined_ca.crt文件,把服务器生成的这个文件拷贝到python项目的目录中。

es = Elasticsearch(['https://192.168.1.105:9201', 'https://192.168.1.105:9202', 'https://192.168.1.105:9203'],  # 你可以指定一个或多个节点http_auth=('elastic', 'your_password'),scheme='https',use_ssl=True,ca_certs='combined_ca.crt', # 指定证书的路径。verify_certs=True  # 设置为True意味着客户端将验证服务器的证书
)index_name='abccc_2023-08-09'
if not es.indices.exists(index=index_name):body = {"settings": {"number_of_shards": 3,},"mappings": {"properties": {"location": {"type": "geo_shape"},"geo_loctn": {"type": "geo_point"}}}}es.indices.create(index=index_name, body=body)print('create es index ...')

如果能创建索引,说明验证成功。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/24621.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软件测试分类总结

目录 1.根据源代码可见度划分 1.1黑盒测试 1.2白盒测试 1.3灰盒测试 2.根据开发阶段划分 2.1单元测试 2.2集成测试 2.3系统测试 2.4验收测试 3.按照实施组织划分 3.1α测试 3.2β测试 3.3第三方测试 4.按照是否运行程序划分 4.1静态测试 4.2动态测试 5.根据软件测试工作的…

GO学习之 函数(Function)

GO系列 1、GO学习之Hello World 2、GO学习之入门语法 3、GO学习之切片操作 4、GO学习之 Map 操作 5、GO学习之 结构体 操作 6、GO学习之 通道(Channel) 7、GO学习之 多线程(goroutine) 8、GO学习之 函数(Function) 9、GO学习之 接口(Interface) 文章目录 GO系列前言一、什么是…

神经影像脑网络图、brain map可视化汇总

神经影像脑网络图、brain map可视化汇总 介绍使用R语言进行脑成像可视化的例子代码使用Python制作的脑成像可视化示例代码介绍 神经影像可视化构成了科学结果解释和交流的核心,也是数据质量控制的基石。 通常,这些图像和图形是通过手动更改图形用户界面 (GUI) 上的设置来生成…

机器学习04-数据理解之数据可视化-(基于Pima数据集)

什么是数据可视化? 数据可视化是指通过图表、图形、地图等视觉元素将数据呈现出来的过程。它是将抽象的、复杂的数据转化为直观、易于理解的视觉表达的一种方法。数据可视化的目的是帮助人们更好地理解数据,从中发现模式、趋势、关联和异常,从而作出更明…

【安全测试】Web应用安全之XSS跨站脚本攻击漏洞

目录 前言 XSS概念及分类 反射型XSS(非持久性XSS) 存储型XSS(持久型XSS) 如何测试XSS漏洞 方法一: 方法二: XSS漏洞修复 原则:不相信客户输入的数据 处理建议 资料获取方法 前言 以前都只是在各类文档中见到过XSS,也进…

三星进军机器人市场?特斯拉首款人形机器人“擎天柱”明年上市

根据报道,三星电子正在积极研究进军机器人市场的战略。此战略由三星电子的Device eXperience(DX)部门的专业企划小组制定。据可靠消息透露,该企划小组已着手制定相关计划,以推动公司在机器人市场的发展。 根据外媒报道…

ClickHouse(九):Clickhouse表引擎 - Log系列表引擎

进入正文前,感谢宝子们订阅专题、点赞、评论、收藏!关注IT贫道,获取高质量博客内容! 🏡个人主页:含各种IT体系技术,IT贫道_Apache Doris,Kerberos安全认证,大数据OLAP体系技术栈-CSDN博客 &…

java反射机制原理、获取Class方式和其应用场景

1、反射是什么: 反射是一种动态地获取和操作类信息的行为。类信息包括类的属性、方法、构造函数等。 类信息在Java中通常存储在.class文件中。当我们编写Java代码并进行编译时,编译器(javac)将源代码转换为字节码,并将…

Mapper层公共字段自动填充

公共字段自动填充 问题分析 我们在进行一些新增修改操作时,我们需要设置创建时间、创建人、修改时间、修改人等字段。 这些字段属于公共字段,也就是也就是在我们的系统中很多表中都会有这些字段,如下: 序号字段名含义数据类型1c…

【分布式流控组件 Sentinel 快速入门】——图文详解操作流程

💧 分布式流控组件 S e n t i n e l 快速入门 \color{#FF1493}{分布式流控组件 Sentinel 快速入门} 分布式流控组件Sentinel快速入门💧 🌷 仰望天空,妳我亦是行人.✨ 🦄 个人主页——微风撞见云的博客&#…

智慧工地云平台源码,基于微服务+Java+Spring Cloud +UniApp +MySql开发

智慧工地可视化系统利用物联网、人工智能、云计算、大数据、移动互联网等新一代信息技术,通过工地中台、三维建模服务、视频AI分析服务等技术支撑,实现智慧工地高精度动态仿真,趋势分析、预测、模拟,建设智能化、标准化的智慧工地…

华为云交付

文章目录 一、华为云-公有云架构华为公有云的主要服务1.华为云服务—计算类2.华为云服务——存储类3.华为云服务—网络类4.华为云服务—管理和监督类5.华为云数据库 二、待续 一、华为云-公有云架构 华为公有云的主要服务 ECS:弹性云服务器( Elastic Cl…

穷举深搜暴搜回溯剪枝(3)

一)字母大小写全排列 784. 字母大小写全排列 - 力扣(LeetCode) 1)从每一个字符开始进行枚举,如果枚举的是一个数字字符,直接忽视 如果是字母的话,进行选择是变还是不变 2)当进行遍历到叶子结点的时候,直接将…

(三)Node.js - 模块化

1. Node.js中的模块化 Node.js中根据模块来源不同,将模块分为了3大类,分别是: 内置模块:内置模块由Node.js官方提供的,例如fs、path、http等自定义模块:用户创建的每个.js文件,都是自定义模块…

jmeter 5.1彻底解决中文上传乱码

1.修改源码,然后重新打jar包,就是所有上传文件名重新获取文件名 参考链接:多种Jmeter中文乱码问题处理方法 - 51Testing软件测试网 2.修改Advanced,必须选java

RaabitMQ(三) - RabbitMQ队列类型、死信消息与死信队列、懒队列、集群模式、MQ常见消息问题

RabbitMQ队列类型 Classic经典队列 这是RabbitMQ最为经典的队列类型。在单机环境中,拥有比较高的消息可靠性。 经典队列可以选择是否持久化(Durability)以及是否自动删除(Auto delete)两个属性。 Durability有两个选项,Durable和Transient。 Durable表…

【ARM Coresight 系列文章 2.5 - Coresight 寄存器:PIDR0-PIDR7,CIDR0-CIDR3 介绍】

文章目录 1.1 JEDEC 与 JEP1061.2 PIDR0-PIDR7(peripheral identification registers)1.2 CIDR0-CIDR3(Component Identification Registers) 1.1 JEDEC 与 JEP106 JEDEC和JEP106都是来自美国电子工业联合会(JEDEC,Joint Electron Device Engineering C…

深度学习(34)—— StarGAN(1)

深度学习(34)—— StarGAN(1) 文章目录 深度学习(34)—— StarGAN(1)1. 背景2. 基本思路3. 整体流程4. StarGAN v2(1) 网络结构(2) mapping network(3) style encoder(4)Loss 和之前…

4个顶级的支持消费级硬件的NeRF软件平台

似乎每天都有大量的创新发布,人们很容易感到不知所措。因此,让我们放慢脚步,看看4个主流的支持消费级硬件的NeRF 平台。 推荐:用 NSDT设计器 快速搭建可编程3D场景。 1、Instant-NGP(Instant-NeRF) 2022 年…

计算机网络-三种交换方式

计算机网络-三种交换方式 电路交换(Circuit Switching) 电话交换机接通电话线的方式称为电路交换从通信资源分配的角度来看,交换(Switching)就是按照某种方式动态的分配传输线路的资源 电话交换机 为了解决电话之间通信两两之间连线过多,所以产生了电话…