Home
» AMMINISTRAZIONE DI RETE
»
Come risolvere l'avviso di Nextcloud "Il server non ha un indirizzo di puntamento in uscita"
Come risolvere l'avviso di Nextcloud "Il server non ha un indirizzo di puntamento in uscita"
Se questo avviso viene visualizzato nelle impostazioni di amministrazione di Nextcloud → Panoramica, verifica innanzitutto se il server Nextcloud è in grado di risolvere e raggiungere il proprio URL canonico. Imposta overwrite.cli.urll'URL effettivamente utilizzato dagli utenti, quindi testa tale URL dallo stesso host o container in cui è in esecuzione Nextcloud. Non iniziare assegnando al server un indirizzo IP pubblico fisso in uscita.
La dicitura esatta "Il server non ha un indirizzo di puntamento in uscita" non è confermata nell'attuale Manuale di amministrazione di Nextcloud. Potrebbe trattarsi di una parafrasi, una traduzione o un avviso diverso. La procedura di risoluzione dei problemi descritta di seguito corrisponde ai controlli di autoconnettività documentati nella Panoramica di amministrazione. Se il messaggio è stato visualizzato durante la configurazione della posta elettronica, consultare la sezione SMTP separata riportata di seguito.
Cosa controlla Nextcloud e cosa non controlla
A partire da Nextcloud 28, i controlli di configurazione visualizzati in Impostazioni di amministrazione → Panoramica vengono eseguiti dal server anziché dal browser. Le note di aggiornamento di Nextcloud indicano che questi controlli possono rivelare problemi relativi alla risoluzione DNS trusted_domains, overwrite.cli.urlalla raggiungibilità del server, ai firewall e alla rete dei container. Ciò significa che il percorso di rete del server è importante: un URL che funziona nel browser del tuo laptop potrebbe non funzionare dall'host o dal container di Nextcloud. Le note di Nextcloud relative ai controlli di configurazione di Nextcloud 28 descrivono questa modifica e le aree da esaminare.
Questo è diverso dalla pubblicazione di un record DNS che indirizza il traffico internet al tuo server. Un'installazione privata può utilizzare un nome host o un indirizzo interno se è così che amministratori e utenti vi accedono. L'accesso esterno, la federazione, i link di condivisione pubblici e l'emissione di certificati possono imporre requisiti diversi. Innanzitutto, annota esattamente dove hai visto l'avviso e quale versione di Nextcloud e metodo di installazione stai utilizzando.
La pagina Panoramica è dove Nextcloud visualizza i controlli di configurazione del server. Questa illustrazione dell'interfaccia mostra la posizione, non un avviso reale o il risultato di un test.
1. Leggi l'URL corrente e le impostazioni del proxy prima di modificarle
Nextcloud memorizza la sua configurazione principale in config/config.php, ma il percorso e il comando utilizzati per eseguirlo occdipendono da come è stato installato Nextcloud. In un'installazione da sorgente, eseguire il seguente comando dalla directory di Nextcloud, sostituendo il percorso di esempio e l'account del server web con i propri:
Un valore non impostato potrebbe non produrre alcun output. Per Snap, Docker o un'appliance, eseguire il occcomando supportato dall'installazione all'interno del suo ambiente previsto; un comando PHP lato host potrebbe leggere la configurazione errata o nessuna configurazione. Creare una copia della configurazione attiva prima di modificarla e conservarla al di fuori configdella directory live di Nextcloud in modo che non possa essere caricata come file di configurazione aggiuntivo.
trusted_domainsè l'elenco dei nomi host o degli indirizzi IP che Nextcloud accetta nelle richieste in entrata. overwrite.cli.urlè l'URL di base canonico utilizzato quando Nextcloud genera URL al di fuori di una normale richiesta web, ad esempio tramite cron o processi da riga di comando. Dovrebbe includere lo schema e, se pertinente, la sottocartella di installazione. La documentazione di riferimento sulla configurazione di Nextcloud descrive questi parametri URL e proxy.
2. Testare DNS e HTTPS dall'ambiente Nextcloud
Utilizzare lo stesso nome host che appare in overwrite.cli.url. Eseguire questi controlli sul server Nextcloud; se Nextcloud è containerizzato, eseguirli all'interno del container dell'applicazione o di un container equivalente sulla stessa rete:
Sostituisci cloud.example.comcon il tuo hostname reale. Se Nextcloud è installato in una sottocartella come /nextcloud, aggiungi quel percorso prima di /status.php. getentdovrebbe restituire un indirizzo a cui il server può instradare. Il curlcomando dovrebbe completare la verifica TLS e ricevere una normale risposta HTTP dall'endpoint di stato di Nextcloud. Un errore DNS, un timeout, un rifiuto della connessione, un errore del certificato o un reindirizzamento imprevisto restringono il problema alla risoluzione dei nomi, al routing/firewall, al proxy inverso o a TLS. Non aggiungere -kper bypassare i controlli del certificato; questo nasconde un problema invece di risolverlo.
Eseguire controlli DNS e HTTPS dal server o dal container che esegue Nextcloud; un semplice test tramite browser client non è sufficiente a verificare questo percorso.
Se il DNS restituisce sia IPv4 che IPv6, verificare che entrambi siano intenzionali e raggiungibili dall'ambiente Nextcloud. Un record AAAA obsoleto può indurre alcuni client o controlli lato server a scegliere un percorso IPv6 inutilizzabile. Rimuovere o correggere un record DNS solo dopo aver verificato che l'indirizzo non sia più utilizzato. Se il dominio si risolve nel tuo IP pubblico ma il server non riesce a connettersi tramite il router, verifica il NAT loopback (anche detto hairpin NAT) o configura lo split-horizon DNS in modo che il nome host si risolva nell'indirizzo interno dalla tua rete.
3. Imposta l'URL canonico sull'indirizzo effettivamente utilizzato dagli utenti
Per un'installazione da sorgente, impostare overwrite.cli.urll'URL di base utilizzato esternamente o internamente, inclusi HTTPS e una sottocartella, se presente. Ad esempio:
Se gli utenti accedono a Nextcloud tramite https://example.com/nextcloud, includere /nextcloudnel valore. Non inserire un nome host SMTP e non includere un percorso di pagina come /settings/admin. Nextcloud descrive questo come un URL di base canonico per la generazione di URL da riga di comando e in background. Il percorso e l'account di esempio sopra riportati sono valori comuni solo per le installazioni da sorgente; le installazioni Snap e container richiedono un comando documentato specifico.
Se il nome host non è presente nell'elenco trusted_domains, aggiungilo utilizzando il successivo indice numerico non utilizzato. Prima di procedere, verifica l'elenco esistente per evitare di sovrascrivere una voce già presente.
Passa 1a un indice non utilizzato nella tua installazione. Aggiungi solo nomi host o indirizzi IP che devono essere accettati da Nextcloud. Questa impostazione non crea record DNS e non rende un server privato accessibile pubblicamente.
Il nome host in trusted_domains e l'URL canonico completo hanno scopi diversi. Utilizza il tuo host reale e, per overwrite.cli.url, includi lo schema e la directory principale del sito web corretti.
4. Applica le impostazioni del reverse proxy solo quando la tua topologia lo richiede.
Quando un proxy inverso termina HTTPS e invia HTTP a Nextcloud, l'applicazione potrebbe rilevare il protocollo interno anziché lo schema HTTPS rivolto all'utente. Nextcloud richiede di elencare gli indirizzi proxy effettivi in trusted_proxies. Il proxy deve inoltre inviare le intestazioni di inoltro appropriate. Affidarsi erroneamente a un proxy o a un'ampia rete può consentire ai client di falsificare il proprio indirizzo IP apparente, quindi non copiare letteralmente un IP proxy di esempio.
Se il rilevamento automatico dell'URL continua a non funzionare, impostare solo i valori di sovrascrittura necessari. Per un proxy che termina TLS, overwriteprotocolpotrebbe essere necessario impostare https. Impostare overwritehostsolo se Nextcloud non può utilizzare l'host corretto inoltrato dal proxy; impostare overwritewebrootsolo se il percorso pubblico non viene rilevato correttamente. La guida attuale al reverse proxy di Nextcloud fornisce esempi e avverte che le impostazioni del proxy attendibile dipendono dal software proxy e dalla rete effettivi.
Fidati solo dell'indirizzo proxy inverso reale. I valori di esempio sono segnaposto; utilizza gli indirizzi e lo schema della tua configurazione proxy.
5. Se l'URL continua a non funzionare, controlla il firewall, il DNS e il percorso del container.
Se l'URL è corretto ma il test lato server curlfallisce, ispeziona il percorso tra Nextcloud e quell'URL. Verifica che HTTPS in uscita sia consentito, che il container possa interrogare il DNS e che il proxy inverso possa instradare la richiesta all'applicazione. Un firewall host, un gruppo di sicurezza cloud, un router, una regola proxy o una rete di container potrebbero bloccare questo percorso. La documentazione di Nextcloud menziona specificamente la configurazione del firewall e della rete di container quando i controlli lato server non riescono a raggiungere gli URL configurati.
Non aprire le porte in entrata a tutta Internet solo per superare un test di autodiagnosi. Se si tratta di un server Nextcloud volutamente privato, utilizza un hostname e un percorso validi all'interno della rete privata. Il DNS pubblico, l'inoltro del router e un indirizzo raggiungibile dall'esterno sono necessari solo per i servizi che devono essere accessibili dall'esterno. Se ti trovi dietro un NAT del provider che impedisce l'accesso in entrata, una VPN o una configurazione di reverse proxy/tunnel supportata potrebbe essere più adatta rispetto alla modifica dell'elenco dei domini attendibili di Nextcloud.
Se il messaggio proviene dalla pagina delle impostazioni e-mail
La posta elettronica è una funzionalità separata. Nextcloud non include un server di posta completo; si connette a un server SMTP, qmail o Sendmail esistente. Nelle impostazioni di amministrazione → Impostazioni di base, fornire il nome host e la porta del server di posta, la modalità di crittografia, l'indirizzo del mittente e le credenziali richieste dal provider di posta. Eseguire un test con il pulsante "Invia email" di Nextcloud. Un URL web di Nextcloud funzionante non dimostra che SMTP sia raggiungibile e un nome host SMTP non sostituisce l'indirizzo e-mail overwrite.cli.url. La guida alla configurazione della posta elettronica di Nextcloud spiega la configurazione corrente e le procedure di test.
Verifica il risultato ed evita le diagnosi errate più comuni.
Dopo le modifiche, ripetere i controlli DNS e HTTPS dallo stesso server o container, quindi ricaricare le impostazioni di amministrazione → Panoramica. Verificare che gli utenti possano ancora accedere tramite il loro URL normale e che i link generati in background utilizzino lo schema e il percorso corretti. Se l'avviso persiste, annotare il testo esatto, la versione di Nextcloud, il metodo di installazione e l'output del comando lato server. Queste informazioni consentono di distinguere un problema di rilevamento dell'URL da un errore SMTP o da un problema di policy di rete.
Verificato: la documentazione attuale di Nextcloud afferma che i controlli di configurazione lato server richiedono che i nomi host e gli URL canonici configurati siano risolvibili e raggiungibili dal server.
Dipende dalla configurazione: se il percorso corretto utilizza un indirizzo pubblico, un indirizzo privato, un DNS diviso, un proxy inverso, una rete container o un loopback NAT.
Non è possibile stabilire con certezza, basandosi solo sulla formulazione del messaggio, se Nextcloud richieda un indirizzo IP pubblico fisso in uscita o se l'avviso riguardi il protocollo SMTP. Verificare la pagina e l'intero messaggio prima di modificare le impostazioni di rete o di posta elettronica.
Nella maggior parte dei casi che corrispondono al controllo di connettività della Panoramica di amministrazione, la correzione dell'URL canonico e la sua accessibilità dal runtime di Nextcloud risolvono l'incongruenza sottostante. Limitare le modifiche al proxy e al firewall al percorso effettivamente utilizzato dall'installazione.