重要!!Elasticsearch 安全加固指南
1、安全无小事
此处省略 1 万字 。。。。。。
2、Elasticsearch 安全演进历史
6.3 版本之前 X-Pack 需要单独安装。
6.3(含)及之后版本 X-Pack 已集成到 Elasticsearch。
如果没有第三方加固,1.X——6.8之前版本,Elasticsearch 都属于“裸奔”状态。
6.8 版本和 7.1 版本之后,Elasticsearch X-Pack 基础功能免费。
1.X——7.X,Elasticsearch 安全都不是必选项,也就是部署 Elasticsearch 安全是否开启都是自己随意的,Elasticsearch 没有强制要求。
直到 8.X 版本,Elasticsearch 才自动默认集成安全功能。
Elasticsearch 版本迭代历史:
发布日期 | 版本号 | 时间间隔 |
---|---|---|
2010-05-14 | V0.7 | |
2014-02-14 | V1.0 | 1372 天 |
2015-10-28 | V2.0 | 621 天 |
2016-10-26 | V5.0 | 364 天 |
2017-11-14 | V6.0 | 384 天 |
2019-04-10 | V7.0 | 512 天 |
2022-02-11 | V8.0 | 1038 天 |
3、Elasticsearch 如何安全加固?
3.1 重要数据不要放到“公网”
数据不要放到“公网”,放到断开互联网的内网!
不论自建云平台还是公共云平台,都算”公网“,都是接通了互联网的。
3.2 集群不要“裸奔”
”裸奔“就是将数据的”底ku“脱掉给别人看。
对于普通技术人员,但凡懂一点网络扫描知识,就如“入无人之地”。
更不用说黑客!
3.3 集群尽早升级到 8.X 版本
当前是 2022-07-03,距离8.0 发布已过去近5个月,8.X 已更新到 8.3.1 版本了。不要纠结了,升级吧。
3.4 安全要全方位
7.X 版本的安全分为三类:
minmal security 最小安全 basic security 基础安全 Https security 高阶安全
最小安全至少得有,也就是说,别人访问我们的 Elasticsearch 集群 和 kibana 至少需要账号和密码。
8.X 没有上面的三类划分,因为 8.X 已经将安全由可选项变为“默认必选项”,这是安全利好消息。
除了账号、密码、security CRT 认证,我们期望 Elasticsearch 集群支持 Https访问,Kibana 也要支持 Https 访问。
当然,更高级别的安全,如:kerberos 认证,如果公司需要也要尽量搞。
集群安全搞好了,数据“躺平”放心了!
充分用好 Kibana 空间、角色、用户的划分,确保集团公司和分公司、公司下的不同层级、相同层级的不同用户看到的数据是不一样的。
3.5 重要数据要脱敏存储
以防万一,即便数据被“脱裤”,确保不会丢失敏感数据信息。
比如:身份证号、手机号、住址信息等。
3.6 必要时,集群外加一层代理
如:Nginx 或者 medcl 大神开源的性能更加牛逼的“极限网关”。
3.7 如果不喜欢 Elasticsearch 自带安全,你还可以选择?
3.7.1 search-guard
https://search-guard.com/
使用前要注意:Elasticsearch 和 search-guard 公司有官司,具体查看:
https://www.elastic.co/cn/blog/dear-search-guard-users
3.7.2 readonlyrest
readonlyrest 为 Elasticsearch 和 kibana 第三方安全插件。
https://readonlyrest.com/
要说明的是:不论 Elasticsearch、search-guard 还是 readonlyrest,高阶安全功能都是收费的。
4、近几年,多次强调的安全
上面都不是马后炮,咱们近几年一直在强调安全,具体文章如下:
5、小结
大家的 Elasticsearch 集群版本是多少?做了哪些安全防护?
有没有更好的安全防护措施?
欢迎留言交流。