实战 es6_腾讯云 Elasticsearch 实战篇(二十二) ES6.8权限使用配置
前言|
在前面的章節中我們講了開源架構ELK、騰訊云Elasticsearch產品系列。我們也知道了,在構建騰訊云ES集群的時候,我們選擇的6.8.2白金版具備充分的安全的機制來保證數據和訪問的安全。那么,它到底是如何實現的呢?我們今天就來簡單聊聊這個問題:
一、在ElasticSearch6.8及以上版本開啟安全認證功能
ElasticSearch的商業插件X-pack 在ES6.x版本以前一直都是收費,不對外免費開放的。在ES6以后陸續放開了一些功能,比如前面講到的Monitor集群監控功能。在ES6.8及以后版本ES又將部分安全性功能免費開放了,包含安全認證功能,之后版本又開放一些基礎認證功能,對于普通用戶來說是夠用的。這里要提一下的是kibana的登錄和權限是與ES緊密相關的,其實真正起作用的是Elasticsearch,因為kibana只是一個視圖頁面,真正工作的是Elasticsearch。現在我們就6.8版本的【基于角色的訪問控制】進行操作、驗證。步驟如下:
第一步:下載、安裝ES、Kibana 6.8.2 版本(此處省略,可參考本博客前面的教程)
第二步:修改ES配置文件 elasticsearch.yml 添加“ xpack.security.enabled: true”到配置文件,保存并退出
Xpack安全機制
基礎版本的安全性功能是默認關閉的。
然后啟動ES,注意需要用普通用戶啟動ES,注意一定要先啟動ES,才能進行后續安全設置
啟動ES
第三步:/bin/elasticsearch-setup-passwords interactive 啟用ES默認的內置用戶
安全設置用戶密碼
顯示下面的圖示:輸入“y”
下面的這些用戶都是ES默認的用戶,需要設置密碼,一定要記住,可以暫時設置相同的。后面可以改
ES默認用戶
第四步:設置kibana登錄的用戶名、密碼。在kibana.yml配置文件里進行修改
注意,這個用戶名和密碼一定跟ES剛剛設定的內置賬號密碼一樣。否則,Kibana啟動報錯!!
添加用戶名和密碼
第五步:啟動kibana
啟動kibana就可以使用用戶名與密碼進行訪問。如下截圖
kibana啟動
Kibana界面
登錄Kibana看看,就出現了安全訪問的登錄框。輸入在Kibana設定的內置用戶登錄即可.用戶必須使用有效的用戶ID和密碼登錄Kibana。
安全登錄界面
二、如何在Kibana配置文件中屏蔽密碼、用戶字眼??
前面我們知道,登錄ES的安全賬號密碼都配置在Kibana的配置文件里,但是這樣,始終不安全,那么能不能屏蔽掉這些關鍵字眼呢??再來解決這個問題:
如果你不想將用戶ID和密碼放在kibana.yml文件中明文配置,可以將它們存儲在密鑰庫中。運行以下命令以創建Kibana密鑰庫并添加配置:
首先 先創建秘鑰庫: ./kibana-keystore create
其次:添加登錄用戶名: ./kibana-keystore add elasticsearch.username
輸入要添加的用戶名(密文)
再次:添加登錄用戶名的密碼: ./kibana-keystore add elasticsearch.password
輸入用戶名密碼(密文)
最后,驗證一下:使用剛剛新建賬號密碼、同時清除Kibana配置文件中原有的yml文件的用戶、密碼內容。重啟Kibana
Kibana登錄界面
使用Curl驗證一下“
Curl指令
用其他用戶是不行的:
驗證其它用戶
考慮一下:為什么這樣?因為盡管是默認用戶,但是沒有配置它在服務中使用,所以,它無效!!
三、總結:
本節從實際角度去部署了一下ES、Kibana的安全訪問功能。是一個非常實際可用的功能,建議大家多試試!
總結
以上是生活随笔為你收集整理的实战 es6_腾讯云 Elasticsearch 实战篇(二十二) ES6.8权限使用配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HTML+CSS+JS实现 ❤️canv
- 下一篇: IDEA 启动、编译、clean、安装m