Install Splunk Enterprise

Splunk เป็นเครื่องมือที่ช่วยในจัดเก็บและวิเคราะห์ข้อมูลความปลอดภัยของระบบเครือข่ายภายในองค์กร เป็นหนึ่งในเครื่องมือประเภท Security Information and Event Management ( SIEM ) ซึ่งหลายคนเข้าใจผิดว่ามันเป็นเครื่องมือประเภท Data Analytic ซึ่งมันจะเป็นเชิง Business แต่ Splunk เป็นเครื่องมือที่ใช้วิเคราะห์ข้อมูลประเภท Log เป็นหลัก ควรเรียกว่า Log Management & Log Analytic มากกว่า จึงเหมาะกับการนำมาทำ Centralized Log


Pros

  • Collect and Index Data : สามารถจัดเก็บและวิเคราะห์ข้อมูลได้หลากหลายรูปแบบ เช่น Website, Application
  • Search and Investigate : การค้นหาทำได้อย่างรวดเร็ว สามารถกำหนดเงื่อนไขได้ง่ายแบบ  Interactive
  • Correlate and Analyze : สามารถสร้าง Pattern เฉพาะของแต่ละประเภทข้อมูล เพื่อหาความสัมพันธ์ของข้อมูล แล้วนำมาวิเคราะห์
  • Visualize and Report : สามารถแสดงข้อมูลและออก Report ให้สามารถเข้าใจได้ง่ายแบบ Data Visualization
  • Monitor and Alert :
  • Access from Anywhere : สามารถใช้งาน Splunk ผ่านทาง Web หรือผ่านทาง Mobile App ทำให้สามารถเข้าถึงข้อมูลได้จากทุกที่

Download

Install

STEP1

  • ดาวน์โหลดและติดตั้ง Splunk Enterprise ใช้ตัวฟรีไม่ได้นะ
  • เข้าไปที่หน้าเว็บ http://localhost:8000 แล้วกรอก Username ด้วย admin และ password ที่เราตั้ง
  • คลิก Settings แล้วเลือก Data Inputs แล้วคลิก Files & Directories
  • คลิก New Local File & Directory
  • ทำการ Browse ไปที่ tutorialdata/www1/access.log แล้วคลิก Next
  • ทำการเซต Source Type แต่บน Splunk มันจะทำให้ Auto ถ้ามี Knowledge Base อยู่แล้ว แต่ถ้าหากไม่มีให้ไปดู Splunk App ว่า Support รึป่าว แล้วทำการติดตั้งเพิ่ม
  • คลิก Next
  • คลิก Submit เพื่อทำการติดตั้ง
  • เปิด App Search & Reporting ขึ้นมา
  • จะแสดงข้อมูลในรูปแบบ Data Visualization

STEP2

  • ลองทำการค้นหา โดยสามารถเลือก Field ได้อย่างรวดเร็วจากเมนูทางซ้ายมือ ค้นหาคำว่า Purchase และไม่เอาเลข 200 หรือหากใครถนัด Regular Expression ก็ใช้ได้เหมือนกัน
host="LAB-Guest" sourcetype="access_combined_wcookie" purchase NOT 200
  • สามารถ Custom Field ที่ใช้บ่อย ๆ ได้โดยคลิก All Fields
  • สามารถทำ Fields Extraction เพื่อออกเป็น Report โดยคลิก Event Actions แล้วเลือก Extract Fields
  • เลือก Regular Expression
  • ทำการ Highlight คลิกซ้าย 1 ที จากนั้นทำการใส่ชื่อ Field แล้วคลิก Add Extraction
  • Splunk จะทำการสร้าง Pattern เพื่อใช้ในการ Detect ครั้งต่อไป สามารถดูรูปแบบของ Log ได้ที่  Log Format
  • ทำการสร้าง Pattern ตามรูปแบบ Netscape Extended ของไฟล์จนครบ แล้วคลิก Next
  • มันจะทำการ Count Value ใน Field ให้โดยอัตโนมัติ แล้วคลิก Next
  • ทำการตั้งชื่อ Extraction และกำหนด Permission แล้วคลิก Finish
  • เมื่อลองเปิด Extract Field มันก็จะถูก Detect ตามรูป

STEP3

  • สามารถทำ Field Lookup จะคล้าย ๆ กับการทำ VLOOKUP บน Excel ก็คือเป็นการทำ Reference Field เช่น ในไฟล์ Log ของเราแสดง User ID แต่เราต้องการให้แสดง Username ก็จะทำการ Map กัน โดยคลิก Settings แล้วเลือก Lookups แล้วคลิก Lookup Table File
  • คลิก New Lookup Table File

โดยปกติ Lookups จะถูกแบ่งออกเป็น 3 Step

  1. Lookup Table File : เป็นไฟล์ที่ระบุว่าจะ Lookup อะไรกับอะไร
  2. Lookup Definition : เป็นการสร้าง Definition เพื่อใช้ในการอ้างอิง กรณีที่เรามีการเปลี่ยนแปลงไฟล์ที่ใช้ในการ Lookup จะได้ไม่ต้องไปนั่งแก้หลาย ๆ จุด
  3. Automatic Lookup : เป็นการใช้ Source Type ในการ Lookup โดยไม่ระบุไฟล์ใดไฟล์หนึ่งเจาะจง แต่ใช้ประเภทของไฟล์
  • ทำการ Browse ไฟล์ prices.csv และตั้งชื่อ แล้วคลิก Save
  • จากนั้นกลับไปเลือก Lookup Definition แล้วคลิก New Lookup Definition
  • ตั้งชื่อ และเลือก Lookup File แล้วคลิก Save
  • จากนั้นกลับไปเลือก Automatic  Lookup แล้วคลิก New Automatic  Lookup
  • ตั้งชื่อ จากนั้นเลือก Lookup Table ที่เราสร้าง และทำการ Apply กับ Source Type : access_combined_wcookie พร้อมทั้งใส่ Input & Output Field แล้วคลิก Save
  • ลองเลือก Field Lookup ที่เราสร้างไว้ มันจะทำการ Map ให้เราโดยอัตโนมัติ

STEP4

sourcetype=access_* action=purchase | top categoryId
sourcetype=access_* action=purchase categoryId=strategy | stats count
sourcetype=access_* action=purchase categoryId=strategy | stats count by clientip
sourcetype=access_* action=purchase categoryId=strategy | stats count as "strategy games" by clientip | rename clientip  as customer
  • สร้าง Panel 1 บน Dashboard โดยใช้ Search Command
sourcetype=access_combined_wcookie method=GET | chart count as views, count(eval(action="purchase")) as purchase by categoryId | rename views as "Views", purchase as "Purchase", categoryId as "Category"
  • ตั้งชื่อ แล้วคลิก Save จากนั้นเลือก View Dashboard
  • สร้าง Panel 2 บน Dashboard โดยใช้ Search Command
sourcetype=access_* | timechart count(eval(action="purchase")) by product_name usenull=f
  • คลิก Save As แล้วเลือก Dashboard Panel ของเดิมที่เราสร้าง โดยคลิก Existing
  • เราก็จะได้ Dashboard สวย ๆ ดังรูป
  • สร้าง Panel 3 บน Dashboard โดยใช้ Search Command
sourcetype=access_* action=purchase | stats sparkline as "Purchase Trend" count by product_name
  • คลิก Save As แล้วเลือก Dashboard Panel ของเดิมที่เราสร้าง โดยคลิก Existing
  • กลับไปดูหน้า Dashboard อีกที

STEP5

  • การค้นหาด้วย Sub Search
sourcetype=access_* [search sourcetype=access_* action=purchase | top limit=1 clientip | table clientip]
  • สร้าง Panel 4 บน Dashboard โดยใช้ Search Command
sourcetype=access_* action=purchase | stats sum(price) as sales values(product_name) as "Product Name" count by clientip | sort - count | head 1
  • คลิก Save As แล้วเลือก Dashboard Panel ของเดิมที่เราสร้าง โดยคลิก Existing
  • กลับไปดูหน้า Dashboard อีกที
  • เราสามารถเพิ่มเมนู เช่น Textbox, Radio Button, Checkbox, Multiselect, Link, Time และ Submit บน Dashboard โดยเลือก Edit แล้วคลิก Add Input ตามด้วยเมนูที่ต้องการ เช่น Time
  • จากนั้นแก้ไข Daashboard Panel Time โดยตั้งชื่อและเลือกค่า Default เป็น Last 24 hours และเลือก Search on Change ให้มีผลกับ Dashboard ทันทีที่เลือก แล้วคลิก Apply
  • เมื่อเราตั้งค่า Time เสร็จแล้ว เราต้องเลือกว่าจะให้มีผลกับ Dashboard Panel ไหน เช่น Purchase vs View each Category ให้เลือก Edit Search จากนั้นให้เลือก Time Range เป็น Shared Time Picker แล้วคลิก Apply
  • จากนั้นกลับมาดูที่หน้า Dashboard จะไม่ขึ้น เพราะข้อมูลมันเก่ากว่านั้น ให้เปลี่ยนเป็น All time ก็จะเห็นข้อมูลขึ้นเหมือนเดิม
  • เราสามารถติดตั้ง App หรือ Add-ons เพิ่มเติมได้โดยดูข้อมูลจากเว็บไซต์ Splunk Base

Leave a Reply

Your email address will not be published. Required fields are marked *