X-Pack介紹
X-Pack是Elastic Stack擴展,提供安全性,警報,監視,報告,機器學習和許多其他功能。默認情況下,當您安裝Elasticsearch時,會安裝X-Pack。
安裝默認發行版時,您會獲得基本許可證(30天使用期)。有關基本許可證中包含的免費功能的完整列表,請參見 https://www.elastic.co/subscriptions。
當然普通用戶認證功能此為免費功能,可以一直使用
在Elasticsearch中配置安全認證
單機版Elasticsearch認證
1、安裝elasticsearch,版本:7.6.1,參考:【ElasticSearch】 ElasticSearch安裝(一)
2、在配置文件中,開啟xpack的安裝認證功能
1 # ---------------------------------- X-Pack ------------------------------------ 2 # 開機xpack安全認證,默認為false 3 xpack.security.enabled: true 4 #
3、啟動Elasticsearch
4、設置所有內置用戶的密碼。
Elasticsearch安全功能提供 內置用戶來幫助您啟動和運行。
該 elasticsearch-setup-passwords 命令是首次設置內置用戶密碼的最簡單方法。
注意:該 elasticsearch-setup-passwords 命令使用瞬態引導密碼,該密碼在命令成功運行后將不再有效。您不能elasticsearch-setup-passwords
再次運行該命令。
設置密碼命令:./bin/elasticsearch-setup-passwords interactive
分別對內置用戶:elastic、apm_system、kibana、logstash_system、beats_system、remote_monitoring_user,設置了密碼
5、測試驗證
1)使用elasticsearch-head插件查看es,訪問時提示輸入用戶名/密碼訪問
2)概覽頁展示如下,增加了索引來保存用戶名/密碼
3)查看.security-7索引數據
4)使用curl命令訪問
命令:curl -u username:password http://127.0.0.1:9200
說明:ES的Web認證采用的是Basic Auth認證,Basic Auth認證參考:【Web】HTTP基本認證之 Basic Auth
集群Elasticsearch認證
Elastic Stack安全功能使信息加密往返於Elasticsearch集群以及從其內部的流量。
使用傳輸層安全性(TLS)(通常稱為“ SSL”)保護連接的安全。
1、安裝elasticsearch集群,版本:7.6.1,參考:【ElasticSearch】 ElasticSearch集群安裝(八)
2、為Elasticsearch集群創建一個證書頒發機構
命令:./bin/elasticsearch-certutil ca
過程:輸入命令 -> 回車(文件使用默認名) -> 回車(CA密碼為空) -> 得到elastic-stack-ca.p12文件(包含CA的公共證書 + 用於對每個節點的證書簽名的私鑰)
3、為集群中的節點生成證書和私鑰
命令:./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
過程:輸入命令 -> 回車(CA密碼為空) -> 回車(文件使用默認名) -> 回車(證書密碼為空) -> 得到elastic-certificates.p12文件(包含節點證書,節點密鑰和CA證書)
4、將節點證書elastic-certificates.p12文件拷貝到各個節點的config目錄下
證書頒發機構elastic-stack-ca.p12文件,自行保存或保存到master節點的config目錄下
5、在配置文件elasticsearch.yml中,開機xpack認證,並配置證書,內容如下:
1 # ---------------------------------- X-Pack ------------------------------------ 2 # 開機xpack安全認證,默認為false 3 xpack.security.enabled: true 4 # 必須開啟,節點間ssl通信 5 xpack.security.transport.ssl.enabled: true 6 # 驗證模式:證書 7 xpack.security.transport.ssl.verification_mode: certificate 8 xpack.security.transport.ssl.keystore.path: elastic-certificates.p12 9 xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
6、分別將集群所有節點啟動或重啟
7、設置所有內置用戶的密碼(同上)
設置密碼命令:./bin/elasticsearch-setup-passwords interactive
8、使用elasticsearch-head插件查看es
1)訪問時提示輸入用戶名/密碼訪問
2)概覽頁展示如下,增加了索引來保存用戶名/密碼