Skip to content

NMS — Network Management & Monitoring System

2026AIWeb AppIoTCybersecurity
NMS — Network Management & Monitoring System

Overview

NMS (Network Management & Monitoring System) is a network administration and security monitoring platform designed to provide centralized visibility into network infrastructure and security events. The system integrates with MikroTik RouterOS to retrieve network and infrastructure information, while Suricata Intrusion Detection System (IDS) monitors network traffic and generates security alerts. These different sources are processed through a centralized backend and presented through a React-based dashboard. The system follows an architecture where the frontend communicates with an Express backend, which acts as the central API layer between the dashboard, MikroTik RouterOS, the IDS data collector, and the database. For security monitoring, Suricata generates structured events through eve.json. A Python-based collector processes these events and sends normalized security events to the NMS backend through an authenticated API endpoint. The backend stores and processes the events before making them available to the dashboard. This architecture combines network management, monitoring, intrusion detection, API development, and security event analysis into a single platform.

Technologies

ReactTypeScript | Node.jsExpress.js | MikroTik RouterOS | Suricata IDS | Python | SQLite / better-sqlite3 | REST API | X-Sensor-Key Authentication | JSON / JSON Lines (eve.json) | Linux / systemd | Git / GitHub

Key Features

  • 🌐 Centralized Network Monitoring
  • Provides a unified dashboard for monitoring network infrastructure and activity.
  • 📡 MikroTik RouterOS Integration
  • Retrieves network information and health-related data directly from MikroTik infrastructure.
  • 🛡️ Suricata IDS Integration
  • Integrates Suricata security alerts into the centralized NMS dashboard.
  • 🚨 Security Event Monitoring
  • Collects, processes, and displays intrusion detection events generated by Suricata.
  • 🐍 Python IDS Collector
  • Continuously processes Suricata eve.json events and forwards normalized alerts to the NMS backend.
  • 🔌 REST API Architecture
  • Uses an Express.js API layer to connect the frontend, network infrastructure, IDS collector, and database.
  • 🔐 Authenticated Event Ingestion
  • Protects IDS event ingestion endpoints using sensor-key authentication.
  • 🗄️ Security Event Storage
  • Stores normalized IDS events in a structured SQLite database for monitoring and analysis.
  • 📊 Centralized Dashboard
  • Presents network and security information through a React-based interface.
  • ⚙️ Automated IDS Monitoring
  • Uses a system service to keep the IDS collector running continuously in the background.
  • Purpose