Menu Chiudi

NET-Console

  • Bridge TCP seriale con autenticazione challenge-response HMAC-SHA256
  • Porta 2323
  • Client singolo, dati in chiaro, nessun overhead TLS
  • Utilizza mbedtls/md.h (già incluso in ESP-IDF)
  • Nessuna libreria aggiuntiva, nessun sovraccarico di Flash
  • Memoria RAM richiesta durante una sessione attiva: ~0 KB
    (rispetto ai 36 KB per il buffer I/O TLS).
  • Autore: Ralf Altenbrand (DH1FR), 05/2026

La console NET è supportata dall'hardware Node basato su ESP32.

La porta di comunicazione 2323 viene attivata sulla connessione Wi-Fi configurata che viene utilizzata come servizio web o gateway.

Comandi per il controllo del firmware

  • Attivazione
    • –netconsole on/off
  • Richiesta di stato
    • –netconsole
  • Imposta password
    • –passwd xxxxx(max. 14 caratteri)
  • Elimina password
    • –passwd none 

 

Per poter accedere alle funzionalità della porta NET Console (2323) è necessario un client TELNET per LINUX, WINDOWS o MAC.

  • Windows
    • PUTTY
      • Nome host aa9xxx-99.local (oppure indirizzo IP del nodo MeshCom)
      • Sessione "Altro": Telnet
      • Categoria: Spuntare la casella “Terminal (CR implicito in ogni LF)”
    • Il client TELNET non è adatto a Windows perché durante l'output non viene aggiunto il carattere CR dopo il LF
  • Linux
    • TELNET
      • telnet 192.168.100.24 2323
      • telnet aa9xxx-99.local 2323
  • MAC
    Il comando Telnet non è più installato di default sui Mac moderni, poiché Telnet non è crittografato. Il modo più semplice per rendere nuovamente disponibile il client sul proprio Mac è installarlo tramite il gestore di pacchetti Homebrew.

    • telnet [nome host/indirizzo IP] [numero di porta]
      • telnet 192.168.100.24 2323
      • telnet aa9xxx-99.local 2323

NETConsole dopo il comando "connect" senza password impostata:

root@MESHCOM:~# telnet oe1kbc-24.local 2323
Tentativo di connessione a 192.168.100.24…
Connesso a oe1kbc-24.local.
Il carattere di escape è ‚^]‘.
OK
Console MeshCom
Digitare –help per i comandi
–info (i comandi vengono immessi come da console seriale)

<<<Info wird angezeigt>>>

NETConsole dopo il comando "connect" con password impostata:

root@MESHCOM:~# telnet oe1kbc-55.local 2323
Trying 192.168.100.246…
Connected to oe1kbc-55.local.
Escape character is ‚^]‘.
NONCE: 3e62d1be9d352ffcbd2edcc5cfa07b36
passwort<cr>
OK
MeshCom Console
Type –help for commands
–info
(Befehle werden wie voa Serielle-Console eingegeben)

<<<Info wird angezeigt>>>

Chiudendo la finestra TELNET, ci si disconnette dal nodo MeshCom.

È possibile avere sempre e solo una sessione attiva con un nodo MeshCom.


Per l'accesso con password è disponibile anche una variante con password crittografata

  • Protocollo:
    • <- „NONCE: <32 hex chars>\r\n“
    • -> „<64 hex HMAC-SHA256(password, nonce)>\r\n“
    • <- „OK\r\n<banner>“  or  „FAIL\r\n“ + disconnect
  • Strumento di supporto Python (hmac_connect.py):
    • import sys, socket, hmac, hashlib
    • s = socket.create_connection((sys.argv[1], 2323))
    • nonce = bytes.fromhex(s.makefile().readline().split()[1].strip())
    • resp = hmac.new(sys.argv[2].encode(), nonce, hashlib.sha256).hexdigest()
    • s.sendall((resp + chr(10)).encode()); print(s.makefile().readline())