基本上是官網的步驟,兩個文檔
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/security-minimal-setup.html#_prerequisites_10
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/security-basic-setup.html
minimal security 適用單機版本。
- 設置xpack.security,要在elasticsearch.yml裏面配置上
xpack.security.enabled: true
這是一個靜態變量(我7.16版本),意味着只能修改了重啓才生效。
- 設置發現類型
discovery.type: single-node
然後設置密碼,bin/elasticsearch-setup-passwords auto ,
然後在kibana裏面設置密碼就可以,很方便。
可以直接寫在配置文件裏面,或者是放在kibana-keystore裏面,我試下來,會優先用keystore裏面的密碼,如果兩個地方都設置並且不一樣的話:
./bin/kibana-keystore create
./bin/kibana-keystore add elasticsearch.password
生成環境的話要用第二個文檔security-basic-setup
區別就在於多了個ca ,
./bin/elasticsearch-certutil ca
./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
第二步,ca可以設置密碼,可以不設置。配置文件裏寫上
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.client_authentication: required
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
如果你的證書有設置密碼,還需要將密碼加到elasticsearch-keystore
./bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
./bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
這個ca配置每臺機器都需要配置,ca只需要生成一次,放到每臺機器上。配置文件每臺都需要改,
這裏還涉及一個數據問題,然後你es前面沒有mq的話,數據就寫不進了。這些security參賽都是靜態的,所以最好是剛搭建集羣的時候就開啓,之後開啓就會比較麻煩,但是還好,我們前面是有kafka的,全部停服務配置重啓,沒有丟數據,唯一就是恢復的時候比較慢,數據要trans log 一下。然後吧logstash,kibana的 都加上密碼或者寫入keystore ,搞定。