Portare a termine le chiamate Nextcloud Talk quando Direct Media non funziona

Per risolvere i problemi di una chiamata Nextcloud Talk che non riesce a connettersi o presenta un flusso multimediale unidirezionale, configura un relay TURN raggiungibile, inserisci il suo nome host, la porta e la chiave segreta condivisa nelle impostazioni di Talk e consenti il ​​traffico sia attraverso il listener TURN che attraverso le sue porte di relay. TURN fornisce a WebRTC un percorso di inoltro quando una connessione diretta fallisce; non risolve problemi di Wi-Fi debole, perdita di pacchetti o rete sovraccarica.

Esempio illustrativo: Immaginate una piccola organizzazione i cui dipendenti possono partecipare a una chiamata Talk dall'ufficio, ma non riescono a inviare video in modo affidabile dalla rete di un hotel. Il firewall dell'hotel potrebbe bloccare il percorso multimediale diretto. L'esempio seguente segue l'amministratore mentre verifica il percorso, configura coTURN e testa la modifica; non si tratta di un resoconto di un'implementazione o di un test reale.

1. Confermare che un relè sia la soluzione corretta

Nextcloud Talk tenta innanzitutto di connettere direttamente i partecipanti. STUN aiuta i dispositivi a scoprire l'indirizzo IP e la porta pubblici creati da un router. Se un firewall o un NAT restrittivo impediscono ancora un percorso diretto, TURN inoltra il flusso multimediale. Un server STUN da solo non è in grado di fornire tale inoltro.

Confronta una chiamata sulla rete aziendale con una proveniente da una rete separata, come ad esempio un hotspot telefonico. Se la chiamata si connette in un luogo ma non riesce ripetutamente a stabilire audio o video nell'area con restrizioni, TURN è un controllo successivo ragionevole. Se la chiamata si connette ma rimane sfocata o intermittente su tutte le reti, misura prima la larghezza di banda, la perdita di pacchetti, la qualità del Wi-Fi e il carico della CPU; instradare più contenuti multimediali attraverso un relay potrebbe aumentare il carico e non creerà capacità.

Una pagina semplificata delle impostazioni di amministrazione con campi di configurazione vuoti e un campo per le credenziali mascherato.
Illustrazione: una pagina di amministrazione con campi di configurazione e credenziali mascherate, che rappresentano le impostazioni da rivedere prima di una chiamata di prova.

Annota la versione di Talk, il nome host e la porta di TURN, se l'host TURN si trova dietro un NAT e se è installato un High Performance Backend (HPB). Mantieni il segreto riservato. I comandi seguenti presuppongono Linux con systemd; i percorsi dei pacchetti possono variare.

2. Configurare coTURN con autenticazione tramite chiave segreta condivisa.

La documentazione di Nextcloud Talk raccomanda coTURN 4.5.0.8 o versioni successive perché le versioni precedenti presentano un problema con il socket UDP IPv6. Installalo dal repository della tua distribuzione e individua il file di configurazione attivo (spesso /etc/turnserver.conf). Genera un segreto casuale sull'host TURN:

openssl rand -hex 32

Memorizza quel valore in un gestore di password o in un archivio di configurazione protetto. Nella configurazione coTURN attiva, imposta il listener, l'autenticazione con chiave condivisa e il realm. Sostituisci il nome host e la chiave segreta di esempio con i valori reali:

listening-port=3478
fingerprint
use-auth-secret
static-auth-secret=REPLACE_WITH_RANDOM_SECRET
realm=turn.example.org
total-quota=0
bps-capacity=0
stale-nonce
no-multicast-peers

La documentazione di Talk elenca lt-cred-mechsolo le versioni di coTURN precedenti alla 4.5.0.8; si consiglia di aggiornare le installazioni precedenti anziché copiare ciecamente le impostazioni legacy. Se coTURN si trova dietro un NAT, configurare gli indirizzi pubblici e di inoltro come richiesto dalla guida all'implementazione e assicurarsi che il nome DNS si risolva in un indirizzo raggiungibile dai partecipanti.

Una finestra scura dell'editor di codice con righe di configurazione astratte e impostazioni evidenziate.
Illustrazione: un editor di configurazione che rappresenta le impostazioni del listener e dell'autenticazione di coTURN; utilizzare i nomi dei parametri documentati nel testo, non i valori dedotti dall'immagine.

3. Aprire il percorso di ascolto e inoltro

Consentire alla porta di ascolto TURN (3478 in questo esempio) di attraversare i firewall host e upstream per UDP e TCP. Per TLS, coTURN necessita anche di un certificato e di una chiave privata validi e Talk deve utilizzare turns:. La porta 443 può raggiungere reti più restrittive, ma verificare la presenza di conflitti: anche un HPB potrebbe necessitare di tale porta, richiedendo indirizzi IP o host separati.

Anche i media utilizzano porte di inoltro. Consenti l'intervallo UDP di inoltro di coTURN nel firewall dell'host, nel gruppo di sicurezza cloud e nel router. Se imposti min-porte max-port, apri esattamente quell'intervallo; consentire solo il listener non è sufficiente. Per un host TURN dietro NAT, inoltra sia l'intervallo del listener che quello di inoltro e configura i relativi indirizzi pubblici/di inoltro. Mantieni le restrizioni dei peer di coTURN per impedire l'accesso a servizi interni non correlati.

Una tabella semplificata delle regole del firewall con voci di rete in entrata e in uscita abilitate.
Illustrazione: le voci del firewall rappresentano il traffico di ascolto e di inoltro che deve essere consentito; l'intervallo di porte esatto dipende dalla configurazione di coTURN.

Dopo aver modificato coTURN, riavvialo e verifica che il servizio sia attivo. Ad esempio, su un host systemd:

sudo systemctl restart coturn
sudo systemctl status coturn --no-pager

Lo stato del servizio conferma l'avvio del processo, ma non dimostra che un browser remoto possa raggiungere il relay. Verificare separatamente i firewall dell'host e del provider e analizzare i log di coTURN per individuare errori di binding, errori di autenticazione o messaggi relativi alle quote di allocazione.

4. Aggiungi il server a Talk e verifica una chiamata reale

Come amministratore, apri Impostazioni di amministrazione > Talk . Inserisci il nome host e la porta di TURN, ad esempio turn.example.org:3478, e la stessa chiave segreta di static-auth-secret. Non includere https://, turn:o turns:nel campo del nome host; scegli lo schema nei controlli di Talk. Mantieni UDP e TCP abilitati quando possibile. Utilizza turns:solo dopo aver configurato TLS in coTURN.

Salva ed esegui il controllo TURN integrato di Talk, se disponibile. Quindi effettua una chiamata dalla rete con restrizioni verso una rete diversa e verifica la connessione audio e video bidirezionale. Controlla i log di coTURN durante la chiamata per individuare eventuali allocazioni o errori di autenticazione. Nell'esempio, l'amministratore confronta la connessione simile a quella di un hotel con la chiamata in ufficio.

Una finestra per videochiamata con due partecipanti e controlli di chiamata.
Illustrazione: una finestra di chiamata a due persone rappresenta il controllo end-to-end dopo il salvataggio delle impostazioni TURN; conferma che ogni partecipante possa inviare e ricevere contenuti multimediali.

Se il controllo fallisce, confronta il nome host, la porta e la chiave segreta, quindi verifica il DNS, le regole del firewall, l'intervallo UDP di inoltro, l'inoltro NAT e i log dei servizi. Un controllo di base potrebbe non rilevare un problema del percorso di inoltro, quindi esegui il test da una rete esterna. Per una diagnostica specifica per TURN, segui la procedura specifica per il browser di Talk; il metodo da console è temporaneo e il comportamento del browser può variare.

TURN non è scalabile per le chiamate di gruppo. Per gruppi più numerosi, Nextcloud afferma che le chiamate con più di 5-10 utenti richiedono l'HPB. Se TURN si connette ma la qualità video rimane scarsa, verificare la larghezza di banda, la perdita di pacchetti, le interferenze Wi-Fi e il carico del server prima di modificare le quote di inoltro.

Verifica

La soluzione è supportata da tre segnali osservabili: Talk accetta la configurazione TURN, i log di coTURN mostrano le allocazioni di relay durante una chiamata e i partecipanti su reti diverse possono scambiarsi audio e video in entrambe le direzioni. Se funziona solo la chiamata in ufficio o i log non mostrano richieste in entrata, il percorso pubblico è ancora bloccato oppure l'host e la porta configurati non corrispondono. Se il flusso multimediale è presente ma la qualità rimane scarsa, la connettività TURN funziona e il problema rimanente è probabilmente altrove nella rete o nell'infrastruttura di chiamata.

Riferimenti: Configurazione del server TURN di Nextcloud Talk ; Configurazione di coTURN di Nextcloud Talk ; Wiki sulla configurazione di coTURN .

Lascia un commento

Portare a termine le chiamate Nextcloud Talk quando Direct Media non funziona

Portare a termine le chiamate Nextcloud Talk quando Direct Media non funziona

Configurare e verificare la raggiungibilità di un relay TURN per Nextcloud Talk quando firewall o NAT restrittivi bloccano i flussi multimediali diretti delle chiamate.

Risolvi gli avvisi di integrità di Nextcloud ripristinando i file corretti

Utilizza il report sui file non validi per identificare il codice Nextcloud modificato, mancante o in eccesso, ripristinare in modo sicuro i file attendibili e verificarne il risultato.

Collega Gmail o Microsoft 365 a Nextcloud Mail tramite OAuth2

Configura OAuth2 per Nextcloud Mail con Gmail o Microsoft 365, verifica la ricezione e l'invio e risolvi i problemi più comuni relativi al consenso e al protocollo SMTP.

Sblocca in modo sicuro la modalità di manutenzione di Nextcloud con OCC

Sblocca in modo sicuro la modalità di manutenzione di Nextcloud con OCC

Utilizza OCC per ripristinare l'accesso a Nextcloud, verificare lo stato della migrazione del database e scegliere il comando corretto per le installazioni di archivio, Docker o Snap.

Configura l'accesso LDAP e Active Directory di Nextcloud.

Collega Nextcloud a LDAP o Active Directory, limita l'accesso con filtri per utenti e gruppi e verifica l'autenticazione sicura prima del lancio.

Richiedere l'autenticazione a due fattori per gli utenti di Nextcloud

Abilita un provider di autenticazione a due fattori supportato, prepara il ripristino dell'account, quindi richiedi l'autenticazione a due fattori per tutti gli utenti o per gruppi Nextcloud selezionati.

Proteggi i documenti Collabora CODE a riposo con la crittografia dell'archiviazione.

Proteggi i file modificati in Collabora CODE crittografando il livello di archiviazione, proteggendo i dati temporanei e verificando la crittografia e il ripristino.

Ottieni Collabora CODE in esecuzione su ARM64 con l'immagine corretta

Ottieni Collabora CODE in esecuzione su ARM64 con l'immagine corretta

Controlla l'architettura del tuo host, verifica che il tag CODE pubblichi ARM64, rimuovi le impostazioni forzate AMD64 e distingui gli errori dell'immagine da quelli relativi ai permessi o alla memoria.

Connetti Collabora Online a ownCloud Infinite Scale

Configura la connessione WOPI tra Collabora Online e ownCloud Infinite Scale, imposta gli URL di servizio corretti e verifica che le modifiche ai documenti vengano salvate.

Esportazione di file a blocchi in Collabora CODE tramite WOPI

Impedisci l'esportazione dei documenti in Collabora Online CODE impostando l'autorizzazione WOPI DisableExport, quindi verifica che l'host e l'editor la applichino.