52
ELK Stack - Kibana 操操 操操 Elasticsearch, Logstash, Kibana 操操操操 操操操操操操操操操操 操操操操操操操操操 操操操 [email protected] 1

ELK Stack - Kibana操作實務

Embed Size (px)

Citation preview

Page 1: ELK Stack - Kibana操作實務

ELK Stack - Kibana 操作實務Elasticsearch, Logstash, Kibana 一起講不完

從看得見的操作面開始總管理處資訊管理部 張凱迪[email protected]

1

Page 2: ELK Stack - Kibana操作實務

Outline• Basic Concept• Discover• Visualization• Dashboard• Conclusion

2

Page 3: ELK Stack - Kibana操作實務

Kibana• 有點像 Splunk 的東西• 嚴格說起來不能比• 認真說來也買不起

3

欄位名稱

搜尋條件符合搜尋條件之事件數分布

符合搜尋條件之事件內容

功能表選單

Page 4: ELK Stack - Kibana操作實務

基礎觀念

4https://kedy.gitbooks.io/elkstack/content/elasticsearch-01.html

Page 5: ELK Stack - Kibana操作實務

5http://log.udngroup.com:9200/_plugin/kopf

Page 6: ELK Stack - Kibana操作實務

基礎觀念

6

• 主要欄位• @source_host• @source_host_ip• @timestamp• @version

• 資料型態• 文字• 地點• 時間• 數字

Page 7: ELK Stack - Kibana操作實務

基礎觀念• Documents in Elasticsearch• 可以是非結構化型態

• 不定義欄位也可以搜尋跟儲存• 但不好分析 ( 無法視覺化 )• 要定義欄位

7

Page 8: ELK Stack - Kibana操作實務

Discover

8

Page 9: ELK Stack - Kibana操作實務

Discover

9

• 關鍵字搜尋

• 邏輯運算子• 指定欄位• 數值範圍• 可組合運用

Page 10: ELK Stack - Kibana操作實務

現在有什麼• 假單 (IIS5)• type: iis5

• Oracle ERP (Apache)• type: apache

• Paloalto ( 類 syslog)• type: paloalto

• 當 logstash grok 解析錯誤時會加上 tag: _grokparsefailure

10

Page 11: ELK Stack - Kibana操作實務

1973 年 蔣經國於行政院長任內公開演講• 當時工商界的困境• 政府借錢給企業,限定用在工業商業活動• 醬油的錢就是買醬油、買醋的錢就是買醋

11

Page 12: ELK Stack - Kibana操作實務

12

Page 13: ELK Stack - Kibana操作實務

賺錢要正當、用錢要恰當• 日誌分析也是• IIS 的 response 就是 IIS 的 response• Apache 的 response 就是 apache 的 response

• 不能混為一談• type 要限定好

13

Page 14: ELK Stack - Kibana操作實務

基礎觀念• 先清楚什麼 type 存什麼 log• 框好圈圈 , 找到結果才正確• 預期要找 IIS server Reponse=500• 使用使用 resposne: 500 去找• 結果會有一堆 apache 的 response:500 ( 因為都是 response 欄位 )

• 建議搜尋都要指定好 type• 同時看不同設備 再用布林運算 OR 同時呈現不同條件

14

Page 15: ELK Stack - Kibana操作實務

Discover- 搜尋• SourceAddress: “10.201.80.51”• 聯經數位假單系統測試主機

• 每分鐘觸發 6000 筆事件紀錄,累計約 6300 萬筆 15

Page 16: ELK Stack - Kibana操作實務

Discover- 搜尋• SourceAddress: “10.201.80.51”• 聯經數位假單系統測試主機

• 每天觸發 50 萬到 100 萬次不等,聞到怪怪的味道• 接著查連去哪、做什麼 ( 才有前面的故事可以講 )

16

Page 17: ELK Stack - Kibana操作實務

Discover- 搜尋• 好亂喔

17

Page 18: ELK Stack - Kibana操作實務

Discover- 搜尋• 顯示特定欄位 - 欄位後方按下 add

18•常用的搜尋做完記得存檔

Page 19: ELK Stack - Kibana操作實務

• 關鍵字搜尋

• 邏輯運算子• 指定欄位• 數值範圍• 可組合運用

操作時間1. ERP 非 200 OK 回應數量比例• Tip: 從左側欄位列看比例

2. 外部存取 ERP 回應為404 not found 最多是誰

3. 假單 70851 取得請假紀錄次數• Tip: GetPersonalLeave.asp• Tip: txtUserID

4. 今年八月 PA commit 次數• 要求 : 只顯示日期、命令

5. 今年八月 PA email 密碼嘗試• POP3, SMTP, IMAP 比例• 先觀察,用直覺累積經驗

19

Page 20: ELK Stack - Kibana操作實務

• ERP 系統非 200 OK 回應• type: apache AND NOT tags:"_grokparsefailure" AND

NOT response:200

操作時間 1

20

Page 21: ELK Stack - Kibana操作實務

操作時間 2• 外部存取 ERP 回應為 404 not found 最多是誰• type: apache AND NOT tags:"_grokparsefailure" AND

response:404 AND NOT clientip:10.*• RFC 定義之 private IP 更廣 , 可自行嘗試

21

Page 22: ELK Stack - Kibana操作實務

操作時間 3• 假單 70851 取得請假紀錄• Tip: GetPersonalLeave.asp• Tip: txtUserID

• type: iis5 AND NOT tags:"_grokparsefailure" AND "GetPersonalLeave.asp" AND "txtUserID=70851"

22

收件匣清單程式

取得趕快核數量個人請假報表清單程式取得員工請假紀錄計算工作誌列追事項數量

Page 23: ELK Stack - Kibana操作實務

操作時間 4• 今年八月 PA commit 紀錄、只顯示日期、命令• type: paloalto AND Type:CONFIG AND NOT

tags:_grokparsefailure AND Cmd:commit

23

Page 24: ELK Stack - Kibana操作實務

操作時間 5• PA email 密碼暴力嘗試紀錄• type: paloalto AND Type:Threat AND ThreatID:"MAIL:

User Login Brute Force Attempt(40007)“

24

Page 25: ELK Stack - Kibana操作實務

操作時間 5• PA email 密碼暴力嘗試紀錄• 沒看到 IMAP!?• type: paloalto AND Type:Threat AND ThreatID:"MAIL:

User Login Brute Force Attempt(40007)" AND NOT (Application:smtp OR Application:pop3)

25

Page 26: ELK Stack - Kibana操作實務

Visualize

26

Page 27: ELK Stack - Kibana操作實務

27

Page 28: ELK Stack - Kibana操作實務

Visualize- 視覺化• 建立視覺化搜尋• 選定視覺化類型•設定呈現內容• Y 軸

• 加總 , 計算 , 統計• X 軸

• 分線 , 分圖 , 堆疊•站在自己肩膀上• 儲存再利用

28

Page 29: ELK Stack - Kibana操作實務

Area chart• 以面積堆疊方式呈現結果

29

Page 30: ELK Stack - Kibana操作實務

Data table•簡單來說 就是個表格

30

Page 31: ELK Stack - Kibana操作實務

Line chart• 可以想成面積個別不堆疊

31

Page 32: ELK Stack - Kibana操作實務

Markdown widget

32

Page 33: ELK Stack - Kibana操作實務

Metric•簡易計算結果呈現• 加減乘除標準差• 最大最小平均值

33

Page 34: ELK Stack - Kibana操作實務

Pie chart•其實就是圓餅圖

34

Page 35: ELK Stack - Kibana操作實務

Pie chart•其實就是圓餅圖• 可以看更多

35

Page 36: ELK Stack - Kibana操作實務

Tile map• 資料型態需為 geoip

36

Page 37: ELK Stack - Kibana操作實務

Vertical bar chart•垂直霸圖

37

Page 38: ELK Stack - Kibana操作實務

Vertical bar chart•垂直霸圖• 分霸一下• 比較霸氣

38

Page 39: ELK Stack - Kibana操作實務

Visualize- 視覺化• 建立視覺化搜尋• 選定視覺化類型•設定呈現內容• Y 軸

• 加總 , 計算 , 統計• X 軸

• 分線 , 分圖 , 堆疊•站在自己肩膀上• 儲存再利用

39

Page 40: ELK Stack - Kibana操作實務

操作時間1. 用 Mertic 算出 PA九月前七天傳輸總量 (收 /送 / 總和 )2. 用 Data table 做九月前七天傳輸總量來源 IP 前 10名3. 用 Line chart 做九月前七天傳輸總量來源 IP 前 10名4. 用 Pie chart 做九月前七天傳輸總量來源 IP 前 10名• 多展現該 IP 使用的 Application

5. 自由發揮

40

Page 41: ELK Stack - Kibana操作實務

操作時間 1• 前面就有囉• 有認真聽嗎

41

Page 42: ELK Stack - Kibana操作實務

操作時間 2• 用 Data table 做九月前七天傳輸總量來源 IP 前 10名

42

Page 43: ELK Stack - Kibana操作實務

• 用 Line chart 做九月前七天傳輸總量來源 IP 前 10名操作時間 3

43

Page 44: ELK Stack - Kibana操作實務

操作時間 3• 用 Line chart 做九月前七天傳輸總量來源 IP 前 10名

44

Page 45: ELK Stack - Kibana操作實務

操作時間 4• 用 Pie chart 做九月前七天傳輸總量來源 IP 前 10名

45

Page 46: ELK Stack - Kibana操作實務

操作時間 4• 用 Pie chart 做九月前七天傳輸總量來源 IP 前 10名

• 多展現該 IP 使用的 Application

46

Page 47: ELK Stack - Kibana操作實務

Dashboard

47

Page 48: ELK Stack - Kibana操作實務

Dashboard-儀錶板• 要看的東西太多了• IP 流量 應用程式 威脅數量 威脅種類 內容… .

• 一個一個看視覺化會切到俗翹翹• 看這個我已經忘了前一個是什麼

•身為網管人,要「綜觀全局」• 一次看多一點

48

Page 49: ELK Stack - Kibana操作實務

Dashboard-儀錶板

49

• 視覺化做好要存檔• 直接 call 來用比較快

Page 50: ELK Stack - Kibana操作實務

Dashboard-儀錶板

50

•可以拖放尺寸位置、做完記得存檔

Page 51: ELK Stack - Kibana操作實務

操作時間•青菜蘿蔔各有所好,沒有絕對好壞對錯。•適合判讀的儀表,就是好儀表。• 請由存檔的視覺,製作儀表並解釋其意義。

51

Page 52: ELK Stack - Kibana操作實務

Conclusion• Kibana 結合 Elasticsearch成為分析資料快速上手的工具• 正確搜尋是一切根基• Garbage in garbage out

• 基於搜尋建立有意義的視覺分析• 日誌分析是最基本功能• 每門日誌都是一門學問

•匯聚有效的視覺分析,建立易於判讀的儀表板52