Sistema di Gestione e Monitoraggio Reti

Una soluzione web-based completa per amministrare dispositivi di rete, monitorare lo stato della tua infrastruttura IT e gestire gli allarmi di sicurezza.

Introduzione

Il progetto "GuardiaPerimetrale" è un sistema web-based per la gestione e il monitoraggio dei dispositivi di rete all'interno di un'infrastruttura IT. Questo strumento consente agli amministratori di rete di:

  • Aggiungere, modificare ed eliminare dispositivi (firewall, server, router, workstation, switch)
  • Monitorare lo stato (online/offline/warning)
  • Visualizzare e gestire gli allarmi relativi alla sicurezza e alle prestazioni
  • Generare report sullo stato della rete

Il sistema è stato sviluppato utilizzando PHP per la logica di backend, MySQL per il database e HTML/CSS per l'interfaccia utente.

Struttura del Database

Il database netguard_system è composto da quattro tabelle principali:

2.1 network_devices

Contiene le informazioni sui dispositivi di rete:

Campo Tipo Descrizione
id INT (PK) Identificatore univoco
device_name VARCHAR Nome del dispositivo
ip_address VARCHAR Indirizzo IP
mac_address VARCHAR Indirizzo MAC (opzionale)
device_type ENUM firewall, server, workstation, router, switch
status ENUM online, offline, warning
last_checked DATETIME Data ultimo controllo

2.2 network_ports

Registra le porte di rete associate ai dispositivi:

Campo Tipo Descrizione
id INT (PK) Identificatore univoco
device_id INT (FK) Riferimento a network_devices
port_number INT Numero porta
protocol ENUM TCP/UDP
service_name VARCHAR HTTP, SSH, MySQL, ecc.
status ENUM open, closed, filtered

2.3 alerts

Gestisce gli allarmi generati dal sistema:

Campo Tipo Descrizione
id INT (PK) Identificatore univoco
device_id INT (FK) Riferimento a network_devices
port_id INT (FK) Riferimento a network_ports (opzionale)
alert_type VARCHAR Tipo di allarme
severity ENUM low, medium, high, critical
description TEXT Dettagli dell'allarme
timestamp DATETIME Data e ora
resolved BOOLEAN 0/1

2.4 users

Gestisce gli utenti autorizzati:

Campo Tipo Descrizione
id INT (PK) Identificatore univoco
username VARCHAR Nome utente
email VARCHAR Email
password VARCHAR Password hashata
role ENUM admin, operator, viewer
last_login DATETIME Ultimo accesso

Funzionalità Principali

3.1 Dashboard

  • Visualizzazione dello stato generale della rete
  • Grafici e statistiche sui dispositivi attivi/allarmi
  • Panoramica rapida dello stato del sistema

3.2 Gestione Dispositivi

  • Aggiunta (add_device.php): Validazione IP, selezione tipo dispositivo
  • Modifica (edit_device.php): Form precompilato, aggiornamento in tempo reale
  • Eliminazione (delete_device.php): Conferma cancellazione, eliminazione a cascata

3.3 Allarmi

  • Visualizzazione degli allarmi attivi
  • Filtraggio per gravità (low, medium, high, critical)
  • Marcatura come risolti
  • Notifiche in tempo reale

3.4 Report

  • Storico degli allarmi
  • Statistiche sull'uptime dei dispositivi
  • Esportazione in PDF
  • Report personalizzabili

Architettura del Sistema

4.1 Frontend

  • Interfaccia responsive basata su HTML/CSS
  • Navigazione intuitiva con menu a schede
  • Feedback visivi (badge colorati per stato e tipo dispositivo)
  • Design moderno e user-friendly

4.2 Backend

  • PHP per la logica applicativa
  • Architettura MVC (Model-View-Controller)
  • API RESTful per integrazioni future

4.3 Sicurezza

  • Protezione SQL Injection tramite prepared statements
  • Validazione input (es. indirizzi IP e MAC)
  • Controllo degli accessi (ruoli admin/operator/viewer)
  • Autenticazione sicura con hash delle password

Riferimenti Tecnologici

PHP

Backend

MySQL

Database

HTML5

Frontend

CSS3

Stili

Apache

Web Server

Vantaggi del Sistema

Centralizzazione della gestione della rete

Monitoraggio in tempo reale di dispositivi e allarmi

Interfaccia intuitiva per amministratori e operatori

Scalabile (possibilità di aggiungere nuovi dispositivi e funzionalità)