如何在Ubuntu22.04上安裝ELK stack教學

這篇文章將會介紹如何在Ubuntu 22.04安裝ELK stack,ELK stack由三個開源軟體組成包含:Elasticsearch、Logstash、Kibana,其中Elasticsearch是核心,前端的處理資料以及後端的呈現圖表都可以自由替換不同工具。

Elasticsearch提供分散式、Json格式輸出的搜尋引擎。Logstash是解析log、資料正規化的工具。Kibana則能提供視覺化的圖表。三者合在一起就是一套免費開源的log處理方案!

首先安裝JAVA

$ sudo apt update
$ sudo apt install default-jre
$ sudo apt install openjdk-11-jdk

Install Elasticsearch

因為elasticsearch預設沒有在Ubuntu的apt庫裡面,所以需要手動加入,以下安裝8.3.3版

$ sudo -i
$ wget -qO - <https://artifacts.elastic.co/GPG-KEY-elasticsearch> | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
$ apt-get install apt-transport-https
$ echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] <https://artifacts.elastic.co/packages/8.x/apt> stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
$ apt update
$ apt install elasticsearch=8.3.3

安裝完之後執行systemctl daemon-reload,如果想設定開機會自動開啟服務的話可以使用enable。

$ systemctl daemon-reload
$ systemctl start elasticsearch
$ systemctl status elasticsearch # 看狀態
$ systemctl enable elasticsearch # 設定下次開機可以自動開啟

再執行以下改elastic的密碼

$ /usr/share/elasticsearch/bin/elasticsearch-reset-password -i -u elastic

建成功後可以開瀏覽器輸入你的https://<yourip>:9200/,記得http要加s

我測試機的ip是192.168.149.145,所以就是https://192.168.149.145:9200/

日後要調整elasticsearch的設定可以到/etc/elasticsearch/elasticsearch.yml

Install Kibana

安裝只要一行

$ apt-get install kibana=8.3.3

Kibana預設使用localhost,所以如果你是使用虛擬機或是日後有遠端的需求,需要到kibana的設定檔修改


$ vim /etc/kibana/kibana.yml
# 最上方加上
server.host: "0.0.0.0"

跟Elasticsearch步驟一樣啟動

$ systemctl start kibana
$ systemctl status kibana
$ systemctl enable kibana

Kibana的port號是5601,可以使用此url進入(IP記得換成你自己的)http://192.168.149.145:5601/

進入Kibana的畫面後會看到需要設定的畫面,執行以下的指令取得Token並貼上

$ /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana

執行後把得到的字串丟到Kibana上

再來會遇到需要要求verification code的畫面

執行以下指令,把得到的code輸入進Kibana

$ /usr/share/kibana/bin/kibana-verification-code

接著就可以登入了!

操作介面

可以修改Kibana密碼

$ /usr/share/elasticsearch/bin/elasticsearch-reset-password -i -u kibana_system

Install Logstash

一行指令就可以安裝完!

$ apt-get install logstash=1:8.3.3-1

安裝完後再把Logstash開啟

$ systemctl start logstash 
$ systemctl status logstash 
$ systemctl enable logstash
Yuki大學畢業後當過資訊安全顧問,現為清華大學資安所碩一,主要研究網路上洩漏的資料。曾參加AIS3並獲得最佳專題獎,參與過新聞操弄的實習,期許自己能用電腦科技與寫作改善社會環境。
Back To Top
error: 內容被保護 !!