Skip to content

argo79/RNS-Manager

Repository files navigation

🔑 RNS Identity Manager & Monitor 🌐

Interfaccia web completa per la gestione delle identità Reticulum (RNS) e il monitoraggio in tempo reale degli annunci di rete.

📋 Panoramica

RNID_GUI

Questo progetto fornisce un'interfaccia web intuitiva per:

  • Gestire identità RNS (creare, importare, esportare, visualizzare)
  • Monitorare annunci RNS in tempo reale con filtri avanzati
  • Eseguire comandi RNS (rnstatus, rnpath, rnprobe) tramite interfaccia grafica
  • Cifrare/decifrare file e testo con identità RNS
  • Firmare e verificare file digitalmente

✨ Caratteristiche

Identity Manager

  • ✅ Visualizzazione di tutte le identità RNS (reticulum, nomadnet, lxmf, rnphone, meshchat)
  • ✅ Importa/esporta identità in formati HEX, Base32, Base64
  • ✅ Generazione nuove identità
  • ✅ Verifica e analisi hash (identità pubbliche)
  • ✅ Calcolo hash aspect per destinazioni RNS
  • ✅ Cifratura/decifratura file e testo
  • ✅ Firma digitale e verifica firme (.rsg)

RNID_GUI

Aspect Monitor

  • 📡 Monitoraggio in tempo reale annunci RNS via SSE (Server-Sent Events)
  • 🔍 Filtri per aspect, ricerca testuale, ordinamento
  • 📊 Statistiche dettagliate e analisi identità
  • 🏷️ Riconoscimento automatico aspect con cache
  • 💾 Cache persistente su disco (7 giorni di storico)
  • 🖱️ Interfaccia interattiva con modal per comandi rnpath/rnprobe

RNID_GUI

🚀 Installazione

Prerequisiti

  • Python 3.7 o superiore
  • Reticulum installato e configurato
  • rnid, rnstatus, rnpath, rnprobe disponibili nel PATH

Installazione

# Clona il repository
git clone git@github.com:argo79/RNS-Manager.git
cd RNS-Manager

# Installa le dipendenze
pip install flask

# R省i sicuro che Reticulum sia installato
pip install rns

# Avvia il server
python3 rns_manager.py


Poi apri il browser su:

    Identity Manager: http://localhost:5000/

    Aspect Monitor: http://localhost:5000/monitor

📁 Struttura del progetto

rns-identity-manager/
├── manager.py                 # Server Flask principale
├── Readme.md                  # This file
├── modules/
│   ├── rns_monitor.py             # Modulo RNS Monitor
├── static/
│   └── rns_monitor.css        # Stili CSS
├── templates/
│   ├── index.html              # Identity Manager
│   └── monitor.html            # Aspect Monitor
└── README.md

🗂️ Directory utilizzate

Il programma cerca identità in:

    ~/.reticulum/storage/

    ~/.nomadnetwork/storage/

    ~/.lxmf/storage/

    ~/.rnphone/

    ~/.reticulum-meshchat/

    ~/.rns_manager/storage/

Cache e downloads:

    ~/.rns_manager/Cache/ - Cache annunci e identità

    ~/.rns_manager/Downloads/ - File elaborati

    ~/.rns_manager/storage/ - Imported identities

RNID_GUI

🎮 Utilizzo

Identity Manager

Carica identità: Premi "Carica" per visualizzare le identità trovate

Seleziona identità: Clicca su un'identità per selezionarla

Operazioni:

    ℹ️ Info identità - Visualizza dettagli

    📢 Annuncia - Annuncia un aspect

    Import/Export - Gestisci identità in vari formati

    Genera - Crea nuove identità

Aspect Monitor

Live view: Visualizza annunci in tempo reale

Filtri: Filtra per aspect, cerca testo, ordina

Identità: Analizza statistiche per identità

Statistiche: Grafici e conteggi

Clicca sugli hash per aprire il modal con comandi:

    🛣️ rnpath - Visualizza percorso

    📡 rnprobe - Invia probe

    🕳️ rnpath -p - Controlla blackhole

🔧 Configurazione

Cache identità

Le identità vengono cachate per 6 ore per prestazioni ottimali. Per forzare una scansione completa, premi "Ricerca profonda". Cache annunci

Gli annunci vengono salvati automaticamente ogni 60 secondi e mantenuti per 7 giorni in ~/.rns_manager/Cache/announce_cache.json. Personalizzazione percorsi

Modifica USER_DIRECTORIES in manager.py per aggiungere/rimuovere directory di ricerca.

📊 API disponibili

Identity Manager

    GET /api/identities/list - Lista identità (con cache)

    POST /api/identities/import/file - Importa da file

    POST /api/identities/import/data - Importa da dati

    POST /api/identities/export - Esporta identità

    POST /api/identities/generate - Genera nuova identità

    POST /api/rnid - Esegui comando rnid

Monitor

    GET /api/monitor/stats - Statistiche monitor

    GET /api/monitor/history - Storico annunci

    GET /api/monitor/stream - SSE per aggiornamenti live

    GET /api/monitor/cache/stats - Statistiche cache

    POST /api/monitor/cache/clear - Pulisci cache

Comandi RNS

GET /api/rns/status - rnstatus

GET /api/rns/paths - rnpath

POST /api/rns/probe - rnprobe

📱 Android via Termux

RNID_GUI

Utilizzabile su Android via termux.

Entrare su Termux e scaricare il repo!


git clone https://github.com/argo79/RNS-Manager.git
cd RNS-Manager/
pip install -r requirements.txt --break-system-packages
python3 rns_manager.py

Aprire il browser su Android e puntare su


http://127.0.0.1:5000

RNID_GUI RNID_GUI

🤝 Contribuire

Fai un fork del progetto Crea un branch per la tua feature (git checkout -b feature/AmazingFeature) Commit le tue modifiche (git commit -m 'Add AmazingFeature') Push al branch (git push origin feature/AmazingFeature) Apri una Pull Request

📝 Licenza

Distribuito sotto licenza MIT.

License: MIT Python 3.7+ Flask

🙏 Ringraziamenti
Reticulum Network Stack - Il fantastico stack di rete

Flask - Framework web leggero

📧 Contatto

Arg0net - arg0netds@gmail.com

Link progetto: https://github.com/argo79/RNS-Manager

🐛 Problemi noti

La scansione iniziale delle identità può richiedere 10-30 secondi con molte identità Alcuni aspect potrebbero non essere riconosciuti correttamente Su dispositivi mobili, alcune tabelle potrebbero richiedere scorrimento orizzontale

🔜 Roadmap

Supporto per multiple lingue Esportazione statistiche in CSV/JSON Gestione gruppi di identità Integrazione con Nomad Network per messaggistica Autenticazione e multi-utente Dark/light mode toggle

About

RNS Manager + Monitor is a web platform for Reticulum networks, combining an Identity Manager to generate/import cryptographic keys and a real-time Aspect Monitor that captures network announces with filtering, search, and contextual commands like rnpath and rnprobe for deep network analysis.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors