🛡️ Open Source Network Security

NMSLEX Panda NMSLEX

Network Management System

Monitor, kelola, dan amankan jaringan Anda secara real-time.
Terintegrasi dengan Suricata IDS, Elasticsearch, dan Kibana.

v2.3 Latest Version
MIT License
50+ Max Agents
1-Click Deploy
⚛️ React
🦈 Suricata
🔍 Elasticsearch
📊 Kibana
📦 Filebeat
🟢 Node.js
Features

Fitur Lengkap untuk Keamanan Jaringan

Semua yang Anda butuhkan untuk monitoring dan keamanan jaringan dalam satu platform.

🛡️

Deteksi Ancaman

Real-time threat detection menggunakan Suricata rules. Deteksi intrusi, malware, dan anomali jaringan.

📊

Dashboard Monitoring

Dashboard interaktif dengan grafik real-time untuk memantau seluruh jaringan dari satu tempat.

📋

Log Explorer

Pencarian dan analisis log terpusat via Elasticsearch. Filter berdasarkan severity, IP, dan waktu.

🖥️

Agent Management

Kelola semua VM/host yang dimonitor. Lihat status, metrics, dan detail setiap agent.

🌐

Network Topology

Visualisasi topologi jaringan interaktif. Drag & drop nodes untuk mengatur layout.

📱

Telegram Bot

Notifikasi realtime via Telegram untuk critical alerts. Setup mudah dari dashboard.

👥

User Management

Kelola akun admin, operator, dan viewer. Role-based access control terintegrasi.

📄

PDF Reporting

Export laporan keamanan profesional dalam format PDF. Jadwalkan laporan otomatis.

🔔

Alert Notifications

Sound alert dan badge counter realtime. Notifikasi berbeda berdasarkan severity level.

🏥

Health Check & Auto-Restart

Cek status semua service dari CLI (--status) atau dashboard. Auto-restart service yang mati dengan fix otomatis.

🔀

Version Compatibility

Validasi otomatis versi Elasticsearch & Kibana sebelum install. Deploy berhenti jika major.minor mismatch.

🔧

Kibana Auto-Fix

Sanitasi environment Node.js (NODE_OPTIONS, NODE_PATH) yang bentrok dengan bundled Node.js Kibana.

Screenshots

Tampilan Dashboard

Interface modern dan intuitif untuk monitoring jaringan Anda.

Dashboard Overview
NMSLEX Dashboard - Overview monitoring dengan grafik traffic dan tabel alerts
Network Topology
NMSLEX Network Topology - Visualisasi jaringan dengan nodes dan koneksi
Security Alerts
NMSLEX Alerts - Tabel log keamanan dengan filter severity
Architecture

Arsitektur Sistem

Stack terintegrasi untuk monitoring dan keamanan end-to-end.

🐼 NMSLEX Dashboard React + TypeScript (Port 7356)
🦈 Suricata IDS/IPS
🔍 Elasticsearch Port 9200
📊 Kibana Port 5601
📦 Filebeat Log Collection & Shipping
🖥️ Agent 1
🖥️ Agent 2
🖥️ Agent 3
🖥️ Agent N

Systemd Services

ServicePortFungsi
nmslex-dashboard7356Web UI Dashboard
nmslex-managerService orchestration & health check
nmslex-indexerLog rotation & indexing
elasticsearch9200Search engine & data store
kibana5601Data visualization
suricataIDS/IPS engine
filebeatLog collection agent
Requirements

System Requirements

Spesifikasi minimal dan rekomendasi untuk deployment.

🖥️ Server (Master Node)

AgentsvCPURAMDisk
1–524 GB50 GB SSD
6–1048 GB100 GB SSD
11–20416 GB200 GB SSD
21–50832 GB500 GB SSD
50+1664 GB1 TB SSD

📡 Agent (Per Host)

KomponenMinimumRekomendasi
vCPU11
RAM512 MB1 GB
Disk5 GB10 GB
Network100 Mbps1 Gbps

Agent sangat ringan — hanya menjalankan Filebeat dan heartbeat script.

Quick Start

Mulai dalam 3 Langkah

Deploy NMSLEX di VM lokal dengan satu perintah.

1

Clone Repository

git clone https://github.com/LutfyAlfean/nmslex.git
cd nmslex
2

Jalankan Deploy Script

chmod +x deploy.sh
sudo ./deploy.sh

Script akan otomatis install semua dependencies, validasi kompatibilitas versi, build dashboard, dan start services.

3

Akses Dashboard

http://<IP_SERVER>:7356

Login dengan credentials yang ditampilkan saat deploy selesai.

Management Commands

sudo ./deploy.sh --status Cek status semua service + auto-restart + auto-fix
sudo ./deploy.sh --rebuild Rebuild setelah perubahan kode
sudo ./deploy.sh --reset Reset konfigurasi ke default
sudo ./deploy.sh --uninstall Hapus seluruh instalasi
sudo ./deploy.sh --interface ens33 Deploy dengan interface custom
git pull && sudo ./deploy.sh --rebuild Update ke versi terbaru

🔀 Version Compatibility Check

Deploy script v2.3 otomatis memeriksa kompatibilitas versi Elasticsearch dan Kibana:

  • Cek versi terinstall dan kandidat sebelum install
  • Bandingkan major.minor — deploy berhenti jika mismatch
  • Validasi ulang setelah install untuk konsistensi

🔧 Kibana Auto-Fix

Jika Kibana gagal start karena konflik Node.js environment, deploy script otomatis:

  • Membuat systemd override untuk Kibana
  • Menghapus NODE_OPTIONS dan NODE_PATH yang bentrok
  • Fix diterapkan saat install dan saat --status auto-restart

🔒 Keamanan Repository

Repository ini aman untuk di-clone. Tidak ada API key, secret, atau password yang di-hardcode. Credentials admin di-generate saat deploy dan di-hash SHA-256 (root-only). Folder supabase/functions/ berisi kode untuk fitur hosted — tidak diperlukan untuk deployment self-hosted.

Agent

Install Agent di VM Target

Tambahkan monitoring ke setiap VM/host dengan agent ringan.

# Copy script dari server
scp user@nmslex-server:/opt/nmslex/scripts/nmslex-agent-install.sh .

# Install agent
sudo ./nmslex-agent-install.sh --server 192.168.1.100

# Dengan opsi lengkap
sudo ./nmslex-agent-install.sh \
  --server 192.168.1.100 \
  --name web-server-01 \
  --interface ens33 \
  --log-paths "/var/log/nginx/access.log,/var/log/nginx/error.log"

# Verifikasi
sudo systemctl status nmslex-agent
sudo /opt/nmslex-agent/bin/nmslex-agent test-connection
Documentation

Dokumentasi Lengkap