修改日期 | 修改人 | 备注 |
2021-05-13 16:44:38[当前版本] | 俞鹏 | V1.0 |
2021-05-13 16:44:03 | 俞鹏 | V1.0 |
2021-05-13 16:22:43 | 俞鹏 | V1.0 |
从上面启动ES并访问我们可以发现在访问ES过程中我们没有任何安全认证就可以直接访问并操作ES,这在生产环境下如果端口号向外暴露的话对数据安全性无法得到保障。当然还有其它解决方案比如使用nginx作代理防护这里就不作过多介绍。
(1)、生成节点证书:(只需要生成一个,其他节点共用一个即可)
借助elasticsearch-certutil命令生成证书:
bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""
(2)、配置通信证书:(配置文件elasticsearch.yml)
xpack.security.enabled: true xpack.security.transport.ssl.enabled: true xpack.security.transport.ssl.verification_mode: certificate xpack.security.transport.ssl.keystore.path: elastic-certificates.p12 xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
(3)、重新设置密码
重启elasticsearch服务
重新设置密码
执行设置用户名和密码的命令,需要为4个用户分别设置密码:elastic、kibana、logstash_system、beats_system
a、可以自动设置密码bin/elasticsearch-setup-passwords auto
b、也可以手动设置密码
bin/elasticsearch-setup-passwords interactive
(2)、访问Kibina地址,同样需要输入用户名及密码:
xpack.monitoring.enabled: true xpack.monitoring.elasticsearch.username: "elastic" xpack.monitoring.elasticsearch.password: "*****" xpack.monitoring.elasticsearch.hosts: ["http://ip:9200"]