mini-siem-elk

🛡️ Mini SIEM with ELK Stack

This project demonstrates how to set up a Mini Security Information and Event Management (SIEM) system using the ELK Stack, Filebeat, and Winlogbeat across multiple virtual machines.

📦 What is ELK Stack?

The ELK Stack is a powerful open-source log analysis platform composed of three main tools:

Tool Description
Elasticsearch A distributed, RESTful search and analytics engine to store and index logs
Logstash A data processing pipeline for ingesting, transforming, and forwarding logs
Kibana A UI for querying, visualizing, and exploring logs stored in Elasticsearch

ELK Stack Overview

🧩 Project Architecture

This Mini SIEM project is built using multiple virtual machines:

ELK Stack Architecture

🔄 Integration Overview

🔸 Kibana + Elasticsearch (Sequence)

👉 Setup Guide: 01-install-elasticsearch.md & 02-install-kibana.md

Kibana and Elasticsearch Integration Diagram

🔸 Filebeat Integration – CSV Data

👉 Setup Guide: 04-integrate-filebeat.md

Filebeat CSV Integration

🔸 Filebeat Integration – Apache Logs

Filebeat Apache Logs Integration

🔸 Filebeat → Logstash → Elasticsearch (Sequence Diagram)

Filebeat Sequence Diagram

🪟 Winlogbeat Integration (Windows Event Logs)

Winlogbeat is used to collect and forward Windows event logs to Logstash, which then indexes them in Elasticsearch. The data is visualized via Kibana.

👉 Setup Guide: 05-integrate-winlogbeat.md

Winlogbeat Integration Diagram

⚠️ Problems Faced and Solutions

Problem Area Description
Kibana Integration Confusion about where to get enrollment token, username/password
Host Access Issues Required editing network settings and config files (network.host, ports)
Logstash + Elasticsearch Trouble establishing secure connection and formatting correct logstash.conf
Filebeat Configuration Managing log input types, paths, and matching output settings in Logstash
Index Conflicts or Permissions Ensuring correct index patterns and credentials in all services
Component Guide File
Elasticsearch 01-install-elasticsearch.md
Kibana 02-install-kibana.md
Logstash 03-install-logstash.md
Filebeat (Linux) 04-integrate-filebeat.md
Winlogbeat (Windows) 05-integrate-winlogbeat.md

🧰 Features Demonstrated

📁 Folder Structure

📁 mini-siem-elk/
├── images/
│   ├── 01-install-elasticsearch/
│   ├── 02-install-kibana/
│   ├── 03-install-logstash/
│   ├── 04-integrate-filebeat/
│   ├── 05-integrate-winlogbeat/
│   └── *.png (summary diagrams)
│
├── setup/
│   ├── 01-install-elasticsearch.md
│   ├── 02-install-kibana.md
│   ├── 03-install-logstash.md
│   ├── 04-integrate-filebeat.md
│   ├── 05-integrate-winlogbeat.md
│   └── README.md

🎯 Learning Outcome

This project helped reinforce several key cybersecurity and DevOps concepts:

🚀 Next Steps

You can extend this project by: