| Version 2 (modified by , 5 hours ago) ( diff ) |
|---|
Build Instructions
Development environment description
The prototype is implemented as a web application.
Required software:
- Python 3.11 or newer
- SQLite 3
- Git
- Visual Studio Code or PyCharm (recommended)
- Modern web browser (Google Chrome, Microsoft Edge or Mozilla Firefox)
Python libraries:
- Flask
- Flask-CORS
- Requests
- python-dotenv
- Grafana client libraries (if configured)
The database used by the prototype is lan_logs_sysmon.db.
Build instructions
- Clone the project repository.
git clone https://github.com/istevanoska/NETIntel cd Proekt_Wazuh
- Create and activate a virtual environment.
Windows:
python -m venv .venv .venv\Scripts\activate
Linux/macOS:
python3 -m venv .venv source .venv/bin/activate
- Install all required dependencies.
pip install -r requirements.txt
- Start the server.
python server.py
The server starts on:
http://localhost:5555
If the database does not exist, it is automatically created when the server starts.
- Start the frontend.
cd lan-frontend npm run dev
Starts on:
http://localhost:5173
- Start the client.
python sctry.py
You should enter the ip address from the server, provived in the terminal where you started the server. Enter the token you have generated, from the admin panel for the environment.
http://localhost:5555
Testing instructions
Open the application in a web browser:
http://localhost:5555
Login using a valid user account.
After successful login the following prototype functionalities can be tested:
- Dashboard – overview of all monitored computers
- Computer Details – detailed information about a selected computer
- Environment Management – create and manage environments and generate tokens
- Agent Communication – send monitoring data from the client application
- RAG / Chat – generate SQL queries from natural language questions
Example questions for the Chat module:
- Show all active processes for Ilina-laptop.
- Show all security alerts.
- Show the latest Sysmon events.
- List all monitored computers.
Mini guide:
- Login to the application.
- Open the Dashboard.
- Select a monitored computer.
- View system metrics, running processes and security events.
- Open Environment Management if administrator privileges are available.
- Open the Chat page and ask a question in natural language.
- Review the generated SQL query and the returned results.
Database initialization
Execute the following SQL scripts in order:
- database/schema.sql
- database/sample_data.sql
After creating and populating the database, start the server:
python server.py
Source code
The repository contains:
- Complete application source code
- Flask backend
- Frontend source code
- SQL scripts for creating the database schema
- SQL scripts containing sample data
- Documentation for the project
All source code required to build and run the prototype is available in the DEVELOP repository.
