输入指定路径
/path/to/elastic-cert.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-stack-ca.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
查看证书过期时间:
#生成pem文件
openssl pkcs12 -in /path/to/your/elastic-stack-ca.p12 -clcerts -nokeys -out extracted_certificate.pem
#通过pem文件查看证书过期时间:
openssl x509 -in /path/to/your/extracted_certificate.pem -noout -enddate
在上面的“生成证书”这个步骤中的第二行命令,可以换为以下的步骤,安全性会更高,注意,确保存在elastic-stack-ca.p12文件,也就上述“生成证书”步骤中的第一行命令生成的文件。
首先随便选择一个节点:在任何目录下创建instances.yml,并键入如下内容:
instances:
- name: “node-1”
dns:- “localhost”
ip: - “192.168.1.105”
- “localhost”
- name: “node-2”
dns:- “localhost”
ip: - “192.168.1.105”
- “localhost”
- name: “node-3”
dns:- “localhost”
ip: - “192.168.1.105”
- “localhost”
如果要配置公网域名:
instances:
- name: “node-1”
dns: [“abc.cde.com”, “localhost”]
ip: [“192.168.1.123”] - name: “node-2”
dns: [“abc.cde.com”, “localhost”]
ip: [“192.168.1.123”] - name: “node-3”
dns: [“abc.cde.com”, “localhost”]
ip: [“192.168.1.123”]
比如我放在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配置文件
![在这里插入图片描述](https://img-blog.csdnimg.cn/7594ec79238840b882ac989b4c7f4935.png)
把这些证书文件替换为各自的证书文件。
这种配置方式的安全性要更高,推荐使用这种每个节点的证书都不同的方式。
如何用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
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数大数据工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上大数据开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
**
[外链图片转存中…(img-fcVX1MF7-1712958079700)]
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!