Dashboard HTML statiche per sessioni VPN, geolocalizzazione IP,
query DNS e blocco minacce RPZ. Pronte per crontab + nginx.
Modulare: funziona con solo OpenVPN, solo BIND o entrambi.
Un unico toolkit che trasforma i log di OpenVPN e BIND in dashboard leggibili, senza database, senza framework, senza dipendenze esterne.
Mappa Leaflet con marker per ogni IP pubblico. Colori diversi per connessioni attive e storiche, popup con dettaglio ISP e utenti.
Statistiche query per client, dominio e tipo record. Top-N con barre proporzionali e contatori in tempo reale.
Report blocchi malware per zona RPZ, dominio e client. Distribuzione oraria dei blocchi con grafico a barre.
Tracking completo connect/disconnect con durata, IP pubblico, IP VPN. Statistiche per utente e distribuzione oraria.
Monitoraggio aggiornamenti DDNS automatici. Mappa IP-to-username e contatori add/delete per utente.
Solo libreria standard Python 3. Nessun pip install, nessun database. Output HTML statico servibile con qualsiasi web server.
Funziona con solo OpenVPN, solo BIND o entrambi. Se un log non esiste la sezione corrispondente non viene generata.
Report HTML statici con dark theme, responsive, generati da cron e serviti da nginx. Collegati tra loro con link di navigazione nell'header.
# Genera entrambi i report HTML $ python3 vpn-report.py --format html VPN Report HTML scritto in /var/www/html/ovpn-geomap.html $ python3 dns-report.py --format html DNS Report HTML scritto in /var/www/html/dns-report.html # Oppure output testuale su stdout $ python3 vpn-report.py -d 7 -u mario.rossi # Report filtrato: ultimi 7 giorni, solo utente mario.rossi
Nessun agente da installare. Legge i log già presenti, genera HTML statico, cron fa il resto.
OpenVPN e BIND scrivono i log nelle directory standard. Hook script per eventi connect/disconnect.
I parser regex estraggono sessioni, query, blocchi RPZ e aggiornamenti DDNS con filtraggio temporale.
Template HTML condiviso genera dashboard con stat cards, tabelle, grafici e mappa Leaflet.
File HTML statici serviti da nginx. Cron rigenera i report ogni N minuti. Nessun backend richiesto.
Copia i file, adatta config.ini, lancia gli script. Fatto.
# 1. Clona il repository # 1. Installa il pacchetto $ sudo dpkg -i netforge-ovpn-reports_1.0.0_all.deb # 2. Configura i path e il nome azienda $ sudo vi /etc/netforge-reports/config.ini # 3. Genera i report (cron automatico ogni 15 min incluso) $ netforge-vpn-report --format html $ netforge-dns-report --format html # Report HTML pronti in /var/www/html/ ovpn-geomap.html — mappa VPN + sessioni dns-report.html — statistiche DNS + RPZ
Minimale per design. Massima portabilità, nessuna dipendenza esterna da gestire.
Solo stdlib, zero pip
Mappe interattive (CDN)
Dark theme, responsive
GeoIP batch (opzionale)
Tutti i parametri di config.ini sono sovrascrivibili via CLI.
Questo progetto funziona con qualsiasi setup OpenVPN + BIND.
Ma con NetForge hai le configurazioni generate automaticamente,
già compatibili e ottimizzate.
Scarica il pacchetto .deb o consulta la guida di installazione completa.