首頁

目前文章總數:157 篇

  

最後更新:2024年 12月 07日

0072. Ubuntu Linux作業系統架設免費開源 GrayLog 收集Log資訊

日期:2024年 09月 14日

標籤: Linux Ubuntu MongoDB GrayLog Elasticsearch Java

摘要:C# 學習筆記


注意事項1:此篇是 2024.9.14 文章,如果是安裝非以下套件版本
      可能安裝過程會有相依性問題
注意事項2:此篇範例是將套件安裝在同一個Server下
應用所需:1. Linux主機 (本篇用 Ubuntu 版本:22.04)
     2. Java (版本:1.8.0)
     3. MongoDB (版本: v6.0.16)
     4. GrayLog (版本:6.0)
     5. Elasticsearch (版本:7.17.22)
解決問題:架設 Ubuntu 主機上的 GrayLog Server 收集Log
相關參考:0052. 在CentOS Linux作業系統架設免費開源 GrayLog 收集Log資訊
基本介紹:本篇分為五大部分。
第一部分:安裝 Java
第二部分:安裝 Elasticsearch
第三部分:安裝 MongoDB
第四部分:安裝 GrayLog
第五部分:GrayLog WebUI測試






第一部分:安裝 Java

Step 1:安裝Java 1.8.0

Elasticsearch 依賴於Java套件,需要先安裝Java
進入Ubuntu 後輸入以下:

sudo apt install openjdk-8-jdk-headless






第二部分:安裝 Elasticsearch

Step 1:安裝 Elasticsearch-GPG

使用 wegt 下載 GPG 簽名密鑰
Ubuntu 輸入以下:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -




Step 2:更新軟體包

添加完成 GPG 密鑰後需更新軟體包
Ubuntu 輸入以下:

sudo apt update




Step 3:添加 Elasticsearch 軟件

安裝 Elasticsearch 需將此軟體添加到 Ubuntu 的列表中
Ubuntu 輸入以下:

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list




Step 4:再次更新軟體包

Ubuntu 軟體包已更新,因此需要再更新
Ubuntu 輸入以下:

sudo apt update




Step 5:安裝 Elasticsearch

前置作業已完成,可以順利地安裝 Elasticsearch 軟體
Ubuntu 輸入以下:

apt install elasticsearch -y




Step 6:調整Elasticsearch配置

安裝完成後,請於 /etc/elasticsearch/elasticsearch.yml 開啟該檔案
將在cluster.name 的地方設定為 grayLog
※因為我們要將 Elasticsearch 與 GrayLog 相依


Step 7:開機自動啟動 Elasticsearch

為了持久化,重啟機器時需保持運行
Ubuntu 依序輸入以下:

sudo systemctl enable elasticsearch.service






第三部分:安裝 MongoDB

Step 1:添加 MongoDB 軟件

安裝 MongoDB 需將此軟體添加到 Ubuntu 的列表中,版本 6.0
Ubuntu 輸入以下:

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-6.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list




Step 2:更新軟體包

MongoDB 添加到 Ubuntu 軟體包後需更新軟體包
Ubuntu 輸入以下:

sudo apt update




Step 3:安裝MongoDB-主程式

因為已經配置好指定版本,因此指令不需要輸入版號
Ubuntu 輸入以下:

sudo apt-get install -y mongodb-org




Step 4:開機自動啟動 MongoDB

為了持久化,重啟機器時需保持運行
Ubuntu 依序輸入以下:

sudo systemctl enable mongod






第四部分:安裝 GrayLog

Step 1:下載 Graylog 軟件倉庫包

下載 GrayLog 6.0 的軟體包到 Ubuntu
進入Ubuntu 後輸入以下:

wget https://packages.graylog2.org/repo/packages/graylog-6.0-repository_latest.deb




Step 2:安裝 GrayLog 軟體倉庫包

將 graylog-6.0-repository_latest.deb 的文件安裝到系統中
進入Ubuntu 後輸入以下:

sudo dpkg -i graylog-6.0-repository_latest.deb




Step 3:更新軟體包

deb 添加到 Ubuntu 軟體包後需更新軟體包
Ubuntu 輸入以下:

sudo apt update




Step 4:安裝 GrayLog

接著可順利安裝 GrayLog 6.0
Ubuntu 輸入以下:

sudo apt-get install graylog-server




Step 5:取得 GrayLog Sha2密碼-1

GrayLog 強制需要設定密碼,需要安裝用戶先產生sha2的密碼,以便取得 root_password_sha2
Ubuntu 輸入以下:

echo -n "Enter Password: " && head -1 </dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1



Step 5:取得 GrayLog Sha2密碼-2

這邊範例是輸入123fff,然後得到一串雜湊
得到以下(每個人的會不同):

425de316d06a663e755e6b8ad72b92f8fc313afd18dc29fd485a9f1284fb678c




Step 6:取得 GrayLog 安全密碼

接著要取得 password_secret
先輸入以下:

< /dev/urandom tr -dc A-Z-a-z-0-9 | head -c${1:-96};echo;


可以得到(每個人的會不同):

dYohop-2hNpNeUeowhLwxttNEYRQFGR3-CrBj0S6Y7xmlNFUVPDL-mhVcirnMVmKoXxw55vhWrBaKHplPRWBDQxfxNizC0ML




Step 7:配置 GrayLog conf設定檔

/etc/graylog/server/server.conf 開啟檔案,還有其他項目需進行配置,依序配置以下:
7-1. 設定 root_timezone = ROC (預設UTC,依照所需而設定,ROC為亞洲)


7-2. 設定 allow_leading_wildcard_searches = true (設true表示可以用 * 查詢Log)


7-3. 設定另一個 Port 號,假如 Graylog 的預設 9000 被使用的話,需調整,這邊用 9001



Step 8:啟動 GrayLog

安裝後,為了持久化,開機的時侯自動執行
Ubuntu 依序輸入以下:

sudo systemctl enable graylog-server.service




Step 9:重新開機

上述都設定完成後,重新開機

reboot



Step 10:查詢首次配置帳號密碼

輸入以下指令,可以查出當前 Log ,這是 GrayLog 6.0 版本,第一次啟動時的配置

sudo tail -f /var/log/graylog-server/server.log


可以得到帳號:admin
可以得到密碼:RxmBsQavuA


Step 11:連到 GrayLog WebUI

輸入以下網址列,並且輸入 Step 10. 的帳號密碼
※192.168.51.28 是自己配置主機的內部域名

http://192.168.51.28:9001




Step 12:初始化配置

進入頁面後,右下角會出現配置項目,選擇預設值即可,選擇 Create CA 按鈕




Step 13:初始化配置 - 2

配置選擇預設,選擇 Create Policy 按鈕




Step 14:初始化配置 - 3

我們內部走 Http 使用,不需要憑證,選擇 Skip provisioning 按鈕


Step 15:初始化配置 - 4

最終即可完成


Step 15:初始化配置 - 完成

最後等待前面的配置全部完成




第五部分:GrayLog WebUI測試

Step 1:GrayLog - 登入

進入 -> http://192.168.51.28:9001/
可以看到以下畫面,帳號預設是admin 密碼是設定的Sha2(這裡用123fff)


Step 2:配置收Log-1

選擇右上角的System -> Input
選擇 GELP UDP (說明:UDP傳輸的結構化Log)


Step 3:配置收Log-2

依序選擇選擇
1. 點擊 Launch New Input
2. 輸入想要顯示的 Title
3. 設定Port (說明:設定的Port才能接收日誌)
都完成後點擊最下方保存,配置就完成了


Step 4:配置收Log-完成

配置成功會出現 Running


Step 5:成功收到Log

最後從代碼做個發送測試,查詢 GrayLog 可以正確收到資訊