Skip to content

asharxh/logsentinel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LogSentinel

A SIEM (Security Information and Event Management) project inspired by tools like Splunk.

LogSentinel collects logs, parses them, detects suspicious activities, generates alerts, and displays everything in a real-time dashboard.

Built using:

  • Java Spring Boot (Backend)
  • React + TailwindCSS (Frontend)
  • Python (Log Parser + Attack Simulator)

Backend Architecture

backend/
│
├── controller/
│   ├── AlertController.java
│   ├── DashboardController.java
│   ├── LogEntryController.java
│
├── service/
│   ├── AlertService.java
│   └── LogEntryService.java
│
├── repository/
│   ├── AlertRepository.java
│   └── LogEntryRepository.java
│
├── entity/
│   ├── Alert.java
│   └── LogEntry.java
│
└── config/
    └── WebSocketConfig.java

Python Parser Service

Responsible for:

  • Reading logs
  • Parsing logs
  • Sending parsed events to backend
parser-service/
│
├── collectors/
│   ├── file_collector.py
│   ├── syslog_collector.py
│   └── windows_event_collector.py
│
├── parsers/
│   ├── auth_parser.py
│   ├── apache_parser.py
│   ├── firewall_parser.py
│   └── generic_parser.py
│
├── forwarders/
│   └── api_forwarder.py
│
├── utils/
│   ├── log_reader.py
│   └── regex_patterns.py
│
└── main.py

Python Attack Simulator

Generates fake attack logs for testing the SIEM.

attack-simulator/
│
├── attacks/
│   ├── brute_force.py
│   ├── sql_injection.py
│   ├── xss.py
│   ├── port_scan.py
│   └── suspicious_traffic.py
│
├── utils/
│   ├── sender.py
│   └── faker_utils.py
│
└── main.py

Setup Guide

1. Clone Repository

git clone <https://github.com/asharxh/logsentinel>
cd LogSentinel

2. Run Backend

cd backend
./mvnw spring-boot:run

Backend runs on:

http://localhost:8080

3. Run Frontend

cd frontend

npm install
npm run dev

Frontend runs on:

http://localhost:5173

4. Run Parser Service

cd python/parser-service

python -m venv venv

source venv/bin/activate

Install dependencies:

pip install -r requirements.txt

Run parser:

python main.py

5. Run Attack Simulator

cd python/attack-simulator

python -m venv venv

source venv/bin/activate

Install dependencies:

pip install -r requirements.txt

Run simulator:

python main.py

Author

About

A learning project to simulate a mini SIEM system inspired by Splunk.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors