一.X-Pack的定義
x-pack是一個Elastic Stack擴展,它提供安全性、警報、監視、報告、機器學習和許多其他功能。安裝ElasticSearch 7.X版本時,會默認安裝X-Pack。
這篇文章我們只講設置它安全性的配置。
二.准備環境(WINDOW環境下)
1.Elasticsearch Head瀏覽器插件,在各瀏覽器應用中心搜索安裝即可
(QQ瀏覽器示例,其他瀏覽器類似)
2.安裝配置好ELK(7.X版本),能夠正常運行(偷懶一點只裝Elasticsearch和Elasticsearch Head瀏覽器插件也可以)
三.配置X-Pack安全性
1.確定主節點,因為接下來的操作要在主節點bin目錄進行
有星星標志的是主節點
2.打開PowerShell並切換到主節點bin目錄
3.生成證書
a) 輸入命令./elasticsearch-certutil ca生成證書
b) 輸入證書保存路徑和密碼
c) 輸入命令./elasticsearch-certutil cert --ca .\config\elastic-stack-ca.p12, 生成第二個證書(注意命令最后參數是第一個證書的相對路徑)
d) 輸入第一個證書密碼進行驗證
e) 輸入第二個證書保存的路徑和密碼
4.將elasticsearch節點密碼添加至elasticsearch-keystore
a) 輸入命令
./elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
b) 輸入第二個證書的密碼進行驗證
c) 輸入命令
./elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
d) 輸入第二個證書的密碼進行驗證
5.打開主節點config目錄,拷貝兩證書和密碼保存檔到另外的elasticsearch node config目錄
6.修改elasticsearch各個節點config目錄下的elasticsearch.yml文件
a) 添加以下配置屬性,注意證書的相對路徑
xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: ..\config\elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: ..\config\elastic-certificates.p12
7.重啟elasticsearch主節點
8.待所有的elasticsearch所有節點重啟完畢后,設置elasticsearch 節點密碼
a)執行設置密碼命令
./elasticsearch-setup-passwords interactive
b)按PowerShell提示操作,按y確定繼續操作
c)設置各個系統預設users密碼(為了方便記憶可以設置成一樣的,后面在kibana可以進行修改)
9.修改kibana配置
a) 停止kibana服務
b) 進入kibana config目錄修改kibana.yml檔,添加以下屬性配置(注意密碼是設置節點elastic用戶名的密碼)
elasticsearch.username: "elastic"
elasticsearch.password: "您設置的密碼"
c) 重啟kibana
10.同理修改logstash配置
a) 進入logstash目錄,修改logstash.conf文件
b) 找到output屬性節點,在所有elasticsearch配置中加上使用者和密碼配置
user=> "elastic"
password=> "您設置的密碼"
c) 保存檔,然后打開系統服務重啟logstash服務
四.成果展現
1.訪問ES的都需要輸入密碼
a)Kibana
b)logstash
c)還有你代碼里請求ES的API,在請求中加上basic驗證附加elasticsearch用戶名密碼
d)Elasticsearch Head
2.修改用戶名密碼或者用戶權限角色
好了,這篇文章到此結束!
參考文獻如下(感謝以下文獻作者的分享):
1.https://www.elastic.co/guide/en/elasticsearch/reference/master/setup-xpack.html#