ElasticSearch 新增使用者訪問許可權
上次因為Apache Log4j2安全漏洞問題,把這個給漏洞也給搞出來了,本來訪問這個ES只需要ip和埠,感覺還可以。哈哈哈哈,但是他不安全,如果它沒檢測出來,我就自然忽略就行了。
但是既然已經暴漏了,只能硬著頭皮去做了。我看了安全漏洞分析的提示我,讓我去用elasticsearch-http-basic這個外掛,我頓時感覺人生有了目標。
於是我開始百度這個外掛,廢了就牛二虎之力下載到了這個最新版本的外掛。
於是我又開始百度,這個外掛如何使用,我按照流程做了配置,結果無論怎末都訪問不了。不知到怎末回事。最後我又百度了一下什麼原因,結果我看到了,這個ES6.8版本以後就不支援這個了,他有自己的一套認證了,那就是xpack。頓時感覺挺蛋疼的。哎,還是搜一下這個叫xpack如何使用吧。
就這樣我又開始百度了,網上介紹的也不少,功夫不負有心人,終於被窩給搞定了。
具體怎末做的,下面我一一道來:
首先停掉ES服務:
然後在elasticsearch.yml配置檔案中加上這句程式碼:xpack.security.enabled: true
找到elasticsearch的bin資料夾:
然後cmd 定位到bin資料夾,執行 ./elasticsearch-setup-passwords interactive
執行設定使用者名稱和密碼的命令,需要設定:elastic ,kibana,logstash_system,beats_system
然後重啟一下ES服務,重新執行一下ES,出現的使用者名稱和密碼的認證了。
然後開啟headmaster看看效果
看上去應該沒啥問題了,但是我要如何通過程式碼訪問ES資料庫呢,因為以前訪問就是直接ip和埠,現在肯定時不行了,那要如何訪問呢,其實很簡單,不需要大改只需要對訪問es資料庫
的http連結稍作修改就行:
http://ip:port/ 改為http://使用者名稱:密碼@ip:埠 就可以了。
.Net Core