Elasticsearch集群安全防护提出几个建议

写在前面

2017年1月爆发了Elasticsearch数据勒索事件,涉及到的数据至少500亿条,被删除数据至少450TB。如何提高Elasticsearch应用的安全性,是开发者和客户都面临的重要问题。

本文针对ES集群的安全防护提出几个方案,当然并不说只有这些方案,仅仅是个人的一些经验而已。

用户角色和权限管理

这个方案用来控制用户在 Elasticsearch中的权限。通过设置不同的角色,然后把对应的功能分配给不同的角色,再赋予不同用户不同角色。这样可以达到为不同的用户开通不同操作权限的目的。

比如可以授权营销团队只读权限,只能查看数据但是不能修改数据。再比如不同的业务方只能看到自己的索引数据,不能看到别的业务方的数据等等。

在这里插入图片描述

数据定时备份

ES提供分片副本机制,但是副本并不提供对灾难性故障的保护。比如黑客入侵了我们的服务器,删除了主分片的数据。这个时候我们需要有一个完整的集群数据备份,以便在需要的时候可以随时进行恢复。
我们可以使用ES的 snapshot API。这个会拿到你集群里当前的状态和数据然后保存到一个共享仓库里。对于一个集群,第一次备份是数据的完整拷贝,所以过程有点慢。但是所有后续的快照会保留的是已存快照和新数据之间的差异。也就是增量备份,速度会快很多。
要使用这个功能,你必须首先创建一个保存数据的仓库。有多个仓库类型可以供你选择:
共享文件系统,
比如 NAS
Amazon S3
HDFS (Hadoop 分布式文件系统)
Azure Cloud

在这里插入图片描述

敏感数据加密

证券行业可能经常会存储一些敏感信息,比如用户的账户信息,银行卡号,余额等敏感信息。我们希望这些数据在集群和客户端传输时,能够防止盗窃、篡改和监听,保护数据安全。
ES可以借助 SSL/TLS 加密保护端对端传输、HTTP 传输。

在这里插入图片描述

跨机房容灾

跨机房容灾的方案思路是准备一个备用集群,这个集群的资源配置和生产集群完全一致。然后通过双写或者集群间同步的方式,在两个集群上保持同样的一份数据。
跨机房容灾在私有云环境操作会稍微复杂一些,一个是涉及到主备集群如何同步的问题,另一个是对资源的需求,需要独立再搭建一套备份集群。

在这里插入图片描述

如上图所示,有两种方式可以做跨机房容灾。 通过部署多套 Elasticsearch 集群,并且分布在不同地域的数据中心,然后接着 CCR或者业务上进行双写,将数据做一个实时的同步,假如其中一个数据中心失联或者因为不可抗力的因素,如台风、地震,我们还能通过访问剩下的集群来获取完整的数据。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值