
एक इवेंट-ड्रिवन नेटवर्क मॉनिटरिंग प्लेटफ़ॉर्म जो लाइव पैकेट कैप्चर (Npcap), कम-विलंबता ट्रैफ़िक एनालिटिक्स, और PyTorch Autoencoder का उपयोग करके अनसुपरवाइज़्ड थ्रेट डिटेक्शन करता है, जिसे एक async मल्टी-चैनल अलर्ट इंजन द्वारा समर्थित किया गया है।
AI-संचालित, उच्च-प्रदर्शन रीयल-टाइम नेटवर्क ऑब्ज़र्वेबिलिटी और खतरा पहचान इंजन
NetSentryx PRO एक अगली पीढ़ी का, इवेंट-संचालित नेटवर्क मॉनिटरिंग और खतरा बुद्धिमत्ता प्लेटफ़ॉर्म है। नियम-आधारित हस्ताक्षरों को PyTorch Deep Autoencoder के साथ जोड़कर, यह 10ms से कम पैकेट और नेटफ़्लो विसंगति पहचान, स्वचालित बहु-चैनल अलर्टिंग (Slack, Discord, Email), और एक इंटरैक्टिव रीयल-टाइम SOC डैशबोर्ड प्रदान करता है।
निम्नलिखित फ़्लो डायग्राम डेटा इनजेशन, रीयल-टाइम डीप लर्निंग इन्फ़रेंस, अलर्टिंग पाइपलाइन, और WebSocket विज़ुअलाइज़ेशन लेयर को दर्शाता है:
flowchart TD
subgraph Capture & Ingestion
A[Network Interface / Packet Simulator] -->|Raw Traffic Events| B(Lightweight Event Bus)
B -->|Packet Stream| C[Flow Aggregation Engine]
end
subgraph Deep Learning Inference
C -->|Aggregated Telemetry Vectors| D[PyTorch TrafficAutoencoder]
D -->|MSE Reconstruction Loss| E{Threshold Evaluation}
end
subgraph Alert Dispatch
E -->|No Anomaly| F[Status: Optimal]
E -->|Anomaly Detected| G[FastAPI BackgroundTasks]
G -->|Save Event| H[(SQLite Datastore)]
G -->|Broadcast WebSocket| I[HTML Live Dashboard]
G -->|Dispatch Webhooks| J[Slack / Discord / Custom Webhook]
G -->|Dispatch SMTP| K[Email Alerting]
end
style D fill:#EE4C2C,stroke:#fff,stroke-width:2px,color:#fff
style I fill:#005571,stroke:#fff,stroke-width:2px,color:#fff
style G fill:#00bf8f,stroke:#fff,stroke-width:2px,color:#fffTrafficAutoencoder) का उपयोग करता है।Mean + 3 * Std) प्रदान करता है, जिससे यह तुरंत उपयोग के लिए पूरी तरह कार्यात्मक हो जाता है।BackgroundTasks का उपयोग करके Slack webhooks, Discord webhooks, Custom HTTP APIs, और SMTP emails पर असिंक्रोनस रूप से विस्तृत घुसपैठ अलर्ट भेजता है।NetSentryx/
├── config/
│ ├── config.yaml # System, dashboard, and alerting channel configurations
│ └── rules.yaml # Threat detection thresholds and rule properties
├── src/
│ ├── alerts/
│ │ ├── ml_detection.py # PyTorch TrafficAutoencoder & feature scaling
│ │ ├── manager.py # Async alert dispatcher (Discord, Slack, Email)
│ │ └── detection.py # Rule-based packet signature detection engine
│ ├── core/
│ │ ├── config_loader.py # Configuration loader utilities
│ │ ├── logger.py # Database-integrated system logger
│ │ └── time_utils.py # Timezone-aware timestamp utilities
│ ├── dashboard/
│ │ ├── templates/
│ │ │ └── index.html # Live HTML5 Dashboard template
│ │ └── server.py # FastAPI API Router and WebSocket broadcast controller
│ ├── database/
│ │ ├── manager.py # SQLite connection & database actions
│ │ └── models.py # SQLAlchemy schema definitions (Alerts, Logs, Flows)
│ ├── flows/
│ │ ├── capture.py # Scapy packet sniffer thread
│ │ └── processor.py # Flow aggregation and metric extractor
│ └── main.py # Application entrypoint
└── main.py # Root script runner
सुनिश्चित करें कि आपके पास Python 3.10+ इंस्टॉल है। यदि लाइव नेटवर्क इंटरफ़ेस कैप्चर कर रहे हैं:
sudo apt-get install libpcap-dev के माध्यम से libpcap-dev इंस्टॉल करें।रिपॉज़िटरी क्लोन करें और निर्भरताएँ इंस्टॉल करें (तेज़ इंस्टॉलेशन के लिए uv का उपयोग अत्यधिक अनुशंसित है):
# Clone the repository
git clone https://github.com/yourusername/netsentryx.git
cd netsentryx
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install requirements
pip install -r requirements.txt
.env)अधिसूचना क्रेडेंशियल कॉन्फ़िगर करने के लिए प्रोजेक्ट रूट में एक .env फ़ाइल बनाएँ:
# Discord Configuration
DISCORD_ENABLED=true
DISCORD_WEBHOOK_URL="https://discord.com/api/webhooks/your-webhook-id/your-webhook-token"
# Slack Configuration
SLACK_ENABLED=true
SLACK_WEBHOOK_URL="https://hooks.slack.com/services/YOUR_WORKSPACE_ID/YOUR_CHANNEL_ID/YOUR_SECRET_TOKEN"
# SMTP Email Configuration
SMTP_ENABLED=true
SMTP_SERVER="smtp.gmail.com"
SMTP_PORT=587
SMTP_USERNAME="[email protected]"
SMTP_PASSWORD="your-app-password"
SMTP_FROM_EMAIL="[email protected]"
SMTP_TO_EMAIL="[email protected]"
python main.py --simulate
python main.py
लाइव डैशबोर्ड देखने के लिए अपना ब्राउज़र खोलें और http://localhost:8000 पर जाएँ।
/api/v1/telemetry/analyzePOSTapplication/json{
"packet_count": 550,
"byte_count": 850000,
"flow_duration": 4.5,
"syn_flag_ratio": 0.85,
"port_entropy": 3.2,
"byte_rate": 188888.8,
"source_ip": "192.168.1.120",
"dest_ip": "10.0.0.5",
"protocol": "TCP"
}
{
"status": "NORMAL",
"threat_level": "low",
"anomaly_score": 0.3083,
"threshold": 2.1319
}
{
"status": "ANOMALOUS",
"threat_level": "critical",
"anomaly_score": 117999.03,
"threshold": 2.1319,
"alert": {
"id": 12,
"timestamp": "2026-08-05T14:13:31.373Z",
"rule_id": "ml_autoencoder_anomaly",
"rule_name": "ML Autoencoder Anomaly",
"source_ip": "192.168.1.120",
"severity": "critical",
"description": "Deep autoencoder reconstruction error exceeded anomaly threshold (score: 117999.0300, threshold: 2.1320).",
"metrics": { ... }
}
}
यह प्रोजेक्ट MIT लाइसेंस के अंतर्गत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें।
| Endpoint | Method | Description | Sample Response |
|---|
/api/alerts | GET | DB में सहेजे गए हाल के खतरा अलर्ट प्राप्त करता है | [{"id": 1, "rule_name": "Port Scanning", ...}] |
/api/flows | GET | हाल के नेटवर्क फ़्लो टेलीमेट्री लॉग प्राप्त करता है | [{"source_ip": "192.168.1.10", "packet_count": 45, ...}] |
/api/logs | GET | बैकएंड सिस्टम ऑडिट लॉग प्राप्त करता है | [{"level": "INFO", "message": "ML engine trained...", ...}] |