es 7.5.1版本 集群配置安全证书和开启ssl加密通信

前提是:已经搭建起来集群了,并且集群可以正常运行。所有的节点都是健康的状态。

另外我所有的操作都是直接使用启动es集群的用户做的,如果不是这个用户的话,对生成的证书还需要赋予可执行权限。

# # 生成证书,给集群添加证书认证

  生成证书不需关注集群是否启动。也就是不管集群有没有启动,都可以生成证书。

  先进到 bin 目录下:

 然后执行(执行这个的时候,全部回车就可以,不再对证书设置密码,如果这里再设置其他的密码的话,需要在yml里边加其他的配置,我用没有加的方式) : ./elasticsearch-certutil ca

这样运行则会在:如下图,生成一个

 接着还在 bin 目录下执行(还是一路直接回车,因为上边就没有设置密码):./elasticsearch-certutil cert --ca elastic-stack-ca.p12

 会生成第二个证书文件:

 接着把这个证书文件 cp 到 config 目录下

 如果你有多个节点的话,则每个节点的的config 下边都需要放一份 证书文件,或者配置文件,直接指定这同一份证书文件。

 

# # 修改 config 里边的配置文件

添加如下的配置:

# 开启安全认证
xpack.security.enabled: true
# 开启ssl
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
# 生成ca证书
xpack.security.transport.ssl.keystore.path: /es/elasticsearch-7.5.0/config/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /es/elasticsearch-7.5.0/config/elastic-certificates.p12

 然后这个时候就需要重新启动集群了,重启集群配置才能生效。

 这个时候应该成功,自己去 logs 日志文件里边查看一下集群是否正常启动

 

# # 添加用户名和密码

 接下来还是到 bin下边执行,需要分别设置几个密码,可以设置成相同的。

# 配置密码
./elasticsearch-setup-passwords interactive

[angus@Server bin]#./elasticsearch-setup-passwords interactive
Initiating the setup of passwords for reserved users 				elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user.
You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]y

Enter password for [elastic]: 
Reenter password for [elastic]: 
Passwords do not match.
Try again.
Enter password for [elastic]: 
Reenter password for [elastic]: 
Enter password for [apm_system]: 
Reenter password for [apm_system]: 
Enter password for [kibana]: 
Reenter password for [kibana]: 
Enter password for [logstash_system]: 
Reenter password for [logstash_system]: 
Enter password for [beats_system]: 
Reenter password for [beats_system]: 
Enter password for [remote_monitoring_user]: 
Reenter password for [remote_monitoring_user]: 
Changed password for user [apm_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]

# # 开启 走https 请求(所有的请求必须走 https )

  还是修改 config 下边的 elasticsearch.yml 文件

xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.keystore.path:  /es/elasticsearch-7.5.0/config/elastic-certificates.p12
xpack.security.http.ssl.truststore.path:  /es/elasticsearch-7.5.0/config/elastic-certificates.p12

 

# # 修改完上边的,就会发现,kibana连不上了,需要修改kibana 的配置文件

 到 存放我们生成的证书的目录下去,也就是 config 下边,然后执行命令  openssl pkcs12 -in elastic-certificates.p12 -cacerts -nokeys -out elastic-ca.pem  则会生成一个文件如下:

 然后 

pwd 

看一下当前的路径,然后修养kibana 的配置文件

vim kibana.yml
		  server.host: 0.0.0.0
          // ip 替换成自己的ip
		  elasticsearch.hosts: ["https://10.10.10.10:9200"]
		  elasticsearch.username: kibana
          // 密码替换成自己在上边生成的密码
		  elasticsearch.password: 111
          //path替换成 pwd 查看出来的路径,也就是我们生成的 elastic-ca.pem 证书的路径
		  elasticsearch.ssl.certificateAuthorities: ["path/elastic-ca.pem"]
		  elasticsearch.ssl.verificationMode: certificate

 然后可以启动 kibana了,去kibana 的bin目录下执行,然后查看日志的结果

./kibana > kibana.log & 

 如果之前已经启动过kibana了:使用这个命令   

lsof -i:5601

   (5601 还是kibana 默认的端口号,如果没有改过就是5601,如果自己改过,就用自己的)

 可以查看出来 kibana的 进程号,然后 

  kill  -9  进程号

 进程号如下:

 然后重启kibana 

./kibana > kibana.log & 

 

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值