Correggere l'avviso relativo all'intestazione Strict-Transport-Security (HSTS) mancante di Nextcloud.

Quando Nextcloud segnala "L'intestazione HTTP Strict-Transport-Security non è configurata", la soluzione risiede nel livello di gestione della risposta HTTPS: Apache, Nginx o il proxy inverso pubblico che termina il TLS. Il manuale di amministrazione di Nextcloud identifica l'assenza dell'intestazione o un max-agevalore inferiore a 2 15552000secondi come un avviso di sicurezza. Una volta che l'intestazione è presente sull'endpoint HTTPS pubblico, i browser possono ricordare che l'host deve utilizzare HTTPS per il periodo dichiarato.

La modifica di base è piccola, ma la sua portata è importante. Applica HSTS solo a un endpoint HTTPS funzionante con un certificato valido. Inizia solo con l'host; aggiungi includeSubDomainso preloadsolo quando ogni hostname interessato è pronto per HTTPS. Questa guida riflette la documentazione di amministrazione di Nextcloud disponibile a ottobre 2026, comprese le linee guida sugli avvisi di sicurezza e sulla protezione del server .

Cosa significa l'avvertimento

HTTP Strict Transport Security (HSTS) è un'intestazione di risposta che indica a un browser di utilizzare HTTPS per le richieste future a un nome host. Aiuta a impedire che un browser ripieghi sul protocollo HTTP in chiaro dopo aver ricevuto la policy tramite una connessione HTTPS valida. Nextcloud controlla la risposta pubblica e avvisa quando non rileva una policy con la durata minima consigliata.

HSTS non sostituisce l'abilitazione di TLS o il reindirizzamento da HTTP a HTTPS. Il browser accetta solo una policy HSTS trasmessa tramite HTTPS. Alla prima visita, prima che il browser abbia appreso la policy, la richiesta iniziale può essere ancora vulnerabile a meno che l'hostname non sia incluso in una lista di precaricamento del browser. Un normale reindirizzamento da HTTP a HTTPS rimane utile, ma non sostituisce l'intestazione.

Individua il server che deve inviare l'intestazione

Prima di modificare la configurazione, traccia la richiesta pubblica. Se gli utenti si connettono direttamente ad Apache o Nginx tramite HTTPS, configura l'host virtuale TLS di quel server web. Se un bilanciatore di carico, un ingresso, una CDN o un proxy inverso terminano il TLS pubblico, configura il livello che invia la risposta al browser. L'aggiunta dell'intestazione solo a una connessione HTTP interna potrebbe non influire sulla risposta pubblica.

Nextcloud documenta i proxy inversi come modello di implementazione supportato e richiede agli amministratori di definire proxy attendibili quando applicabile. La responsabilità HSTS del proxy è separata dalla gestione degli URL e degli indirizzi IP client da parte di Nextcloud. In particolare, overwriteprotocolaiuta Nextcloud a riconoscere lo schema esterno in alcuni layout di proxy; la sua impostazione non aggiunge di per sé l'intestazione di risposta HSTS. Consultare la guida ufficiale alla configurazione dei proxy inversi di Nextcloud se l'applicazione genera collegamenti HTTP o segnala altri avvisi relativi ai proxy.

Prima di modificare la politica

  • Conferma che https://cloud.example.comil caricamento avvenga senza errori relativi al certificato e che venga utilizzata la catena di certificati prevista.
  • Verifica se le richieste HTTP vengono reindirizzate allo stesso hostname tramite HTTPS.
  • Identifica altri servizi e sottodomini sotto lo stesso dominio principale prima di prendere in considerazione includeSubDomains.
  • Mantenere disponibile un percorso amministrativo o una console del server. Un browser che ha memorizzato nella cache HSTS impedirà all'utente di ignorare gli errori del certificato per tutta la durata della policy.

Sostituisci cloud.example.comnegli esempi il tuo hostname Nextcloud reale. Non copiare gli hostname di esempio nella configurazione di produzione.

Configura HSTS in Apache

Nell'host virtuale Apache TLS che ospita Nextcloud, abilita il modulo headers e aggiungi la policy. La guida di hardening di Nextcloud mostra un valore di sei mesi e utilizza includeSubDomains; la seguente versione host-only è un punto di partenza prudente:

<VirtualHost *:443>
    ServerName cloud.example.com

    <IfModule mod_headers.c>
        Header always set Strict-Transport-Security "max-age=15552000"
    </IfModule>

    # Existing Nextcloud and TLS directives
</VirtualHost>

Assicurati mod_headersche sia abilitato nella configurazione di Apache della tua distribuzione. Aggiungi la direttiva all'host virtuale HTTPS, non all'host virtuale della porta 80. Convalida la configurazione utilizzando il comando appropriato per la distribuzione installata, quindi ricarica Apache utilizzando il suo gestore di servizi. Ad esempio, molte distribuzioni basate su systemd supportano sudo apachectl configtestseguito da sudo systemctl reload apache2; su alcune distribuzioni, il servizio si chiama httpd. Usa il comando che corrisponde ai nomi del tuo pacchetto e del servizio.

Configura HSTS in Nginx

Nel serverblocco Nginx che si mette in ascolto per HTTPS e serve l'hostname pubblico di Nextcloud, aggiungere:

server {
    listen 443 ssl;
    server_name cloud.example.com;

    add_header Strict-Transport-Security "max-age=15552000" always;

    # Existing certificate and Nextcloud configuration
}

Questo alwaysparametro fa sì che Nginx aggiunga l'intestazione indipendentemente dallo stato della risposta. Nginx documenta una regola di ereditarietà che può sorprendere gli operatori: add_headerle direttive a un livello di configurazione inferiore modificano il normale comportamento di ereditarietà. Se un locationblocco nidificato definisce le proprie add_headerdirettive, l'intestazione HSTS a livello di server potrebbe non essere più ereditata. Verifica la configurazione attiva e testa URL rappresentativi, tra cui la pagina di login e una risorsa statica. Consulta la documentazione ufficiale del modulo headers di Nginx .

Prima di applicare le modifiche, esegui sudo nginx -t. Se la convalida ha esito positivo, ricarica Nginx utilizzando il comando di servizio per il tuo sistema, spesso sudo systemctl reload nginx. Un test di sintassi fallito deve essere corretto prima del ricaricamento.

Configurare un proxy inverso o un terminatore TLS

Se la connessione HTTPS pubblica termina su un proxy inverso, è necessario includere l'intestazione HSTS nella risposta HTTPS di tale proxy. Ad esempio, un proxy potrebbe inviarla anche quando la sua connessione al backend di Nextcloud utilizza HTTP. Non inviare l'intestazione HSTS solo nella risposta non crittografata del backend, presumendo che il browser la riceva.

Verifica se sia il proxy che il backend aggiungono già la stessa intestazione. I campi HSTS duplicati possono essere difficili da diagnosticare e un proxy potrebbe sovrascrivere o nascondere un'intestazione del backend. Scegli un livello pubblico a cui affidare la gestione della policy oppure configura i livelli in modo che il browser riceva un unico valore chiaro. Dopo aver modificato il proxy, verifica che inoltri l'host e lo schema previsti a Nextcloud e che i link HTTPS funzionino correttamente.

Verificare la risposta del pubblico

Utilizza una richiesta al nome host HTTPS pubblico, non solo a localhost o all'indirizzo del backend:

curl -sSI https://cloud.example.com
curl -sSIL http://cloud.example.com

Nella prima risposta, cerca esattamente un'intestazione simile a:

Strict-Transport-Security: max-age=15552000

Il secondo comando segue i reindirizzamenti. Verificate che l'URL HTTP raggiunga il nome host HTTPS desiderato, quindi esaminate la risposta HTTPS per la presenza di HSTS. I browser ignorano l'HSTS ricevuto tramite HTTP non elaborato, quindi l'intestazione non deve necessariamente comparire nel reindirizzamento iniziale sulla porta 80. Potete anche utilizzare gli strumenti per sviluppatori del browser: aprite il pannello Rete, ricaricate la pagina HTTPS, selezionate la risposta del documento e ispezionate le intestazioni della risposta.

Se la configurazione prevede posizioni annidate, più livelli proxy o una gestione separata delle risorse statiche, verifica più di un percorso di risposta. Dopodiché, rivedi le impostazioni di amministrazione di Nextcloud e aggiorna la panoramica della sicurezza. L'aggiornamento di un avviso potrebbe richiedere del tempo o potrebbe riflettere l'URL pubblico esatto che Nextcloud utilizza per le scansioni, quindi confronta quell'URL con quello che hai testato.

Scegliere con attenzione l'ambito e la durata

Un periodo max-agedi 15552000sei mesi corrisponde a un certo numero di secondi, ovvero alla soglia di avviso documentata da Nextcloud. La policy viene rinnovata quando un browser riceve una nuova intestazione HSTS valida. Per abbreviarla o rimuoverla in seguito è necessario inviare i dati max-age=0tramite HTTPS a ciascun hostname interessato; i browser che non effettuano una nuova visita durante la modifica manterranno la policy memorizzata nella cache fino alla scadenza del suo periodo di validità attuale.

includeSubDomainsApplica la policy a ogni sottodominio sotto l'hostname. Utilizzala solo se tutti i sottodomini attuali e pianificati supportano HTTPS con certificati validi. Un servizio separato come mail.example.como legacy.example.compotrebbe diventare inaccessibile ai browser se non è pronto.

L' aggiunta del preloadtoken è una decisione separata e di grande impatto. Le linee guida di Nextcloud per la protezione descrivono l'aggiunta di un hostname agli elenchi di precaricamento del browser e avvertono che la rimozione può richiedere mesi prima di essere visualizzata nei browser installati. Non aggiungerlo come soluzione rapida per eliminare un rilevamento dello scanner. Prima di procedere, verifica tutte le condizioni di precaricamento richieste e l'impatto su ogni sottodominio; segui le linee guida ufficiali del servizio HSTS Preload se intendi richiederne l'inclusione.

Se l'avvertimento persiste

  • L'intestazione non è presente in curl: potresti aver modificato l'host virtuale, il proxy o la posizione di Nginx sbagliati. Verifica il target DNS pubblico e la configurazione del server attivo.
  • L'intestazione appare solo su alcune pagine: verifica le direttive Nginx annidate add_header, la gestione degli errori, i percorsi delle risorse statiche e le regole del proxy.
  • La risposta prevede diverse politiche: individuare quali livelli aggiungono il campo e consolidarli in un unico valore coerente.
  • L'intestazione è presente ma l'avviso persiste: verificare che l'URL configurato esternamente di Nextcloud si risolva nello stesso endpoint HTTPS, controllare la gestione dello schema proxy, quindi ricaricare la panoramica di amministrazione.
  • HTTPS o il certificato non sono pronti: prima risolvi i problemi di TLS e di instradamento da HTTP a HTTPS. HSTS non può riparare un certificato danneggiato né abilitare HTTPS autonomamente.

La correzione è completa quando la risposta HTTPS pubblica contiene sempre il valore HSTS previsto, Nextcloud può raggiungere correttamente il suo URL HTTPS pubblico e il browser può caricare l'istanza senza errori di certificato o di reindirizzamento. HSTS migliora l'applicazione delle policy di trasporto per i browser di ritorno; non sostituisce la manutenzione dei certificati, la configurazione di un proxy sicuro o un percorso di ripristino testato.

Lascia un commento

Correggere l'avviso relativo all'intestazione Strict-Transport-Security (HSTS) mancante di Nextcloud.

Correggere l'avviso relativo all'intestazione Strict-Transport-Security (HSTS) mancante di Nextcloud.

Risolvi l'avviso di Nextcloud relativo alla mancanza di HSTS configurando il server web HTTPS o il proxy inverso, quindi verifica in modo sicuro l'intestazione Strict-Transport-Security.

Risolvere l'errore "CSync Unknown Error" del client desktop ownCloud durante la sincronizzazione.

Risolvere l'errore "CSync Unknown Error" del client desktop ownCloud durante la sincronizzazione.

Risolvi l'errore "CSync Unknown Error" del client ownCloud Desktop ricostruendo il database di sincronizzazione nascosto, quindi verifica la connettività, le autorizzazioni, i nomi dei file, lo spazio su disco e i log.

Come configurare Matrix Sliding Sync per un caricamento più veloce su dispositivi mobili (senza il proxy legacy)

Come configurare Matrix Sliding Sync per un caricamento più veloce su dispositivi mobili (senza il proxy legacy)

Il proxy Matrix Sliding Sync è stato archiviato e sostituito. Abilitare la sincronizzazione Simplified Sliding Sync nativa in Synapse, verificare il supporto del client, aggiornare il routing del proxy e testare la sincronizzazione mobile in modo sicuro.

Risolvi i problemi di latenza e di accesso lento alle stanze in Matrix Synapse Federation.

Risolvi i problemi di latenza e di accesso lento alle stanze in Matrix Synapse Federation.

Diagnostica i rallentamenti nella federazione Matrix Synapse e nell'adesione alle stanze verificando la connettività, lo stato dei tentativi del server remoto, le metriche, il carico del database e i limiti di frequenza di adesione.

Come svuotare automaticamente il cestino dei file eliminati di Nextcloud

Come svuotare automaticamente il cestino dei file eliminati di Nextcloud

Configura la conservazione del cestino e le attività in background di Nextcloud per rimuovere automaticamente i file eliminati, verificare l'avvenuta pulizia ed evitare comandi di eliminazione sicura per tutti gli utenti.

Risolvere i problemi di eco e ritardo audio del microfono di BigBlueButton in WebRTC

Risolvere i problemi di eco e ritardo audio del microfono di BigBlueButton in WebRTC

Diagnostica l'eco di BigBlueButton e il ritardo audio di WebRTC separando il feedback del microfono dal ritardo di rete, verificando il test dell'eco, i dispositivi del browser, la connettività UDP e il carico del server.

Come eseguire il backup di Nextcloud con Restic e Cron

Come eseguire il backup di Nextcloud con Restic e Cron

Configura un repository Restic crittografato e un'attività pianificata (cron job) per Nextcloud, includendo la modalità di manutenzione, un dump di MariaDB, la conservazione dei dati, i log e i controlli di ripristino.

Come risolvere il problema del blocco del caricamento file di ownCloud al 99%: guida pratica alla risoluzione dei problemi

Come risolvere il problema del blocco del caricamento file di ownCloud al 99%: guida pratica alla risoluzione dei problemi

Risolvi i problemi di caricamento su ownCloud bloccati al 99% controllando i log, lo spazio di archiviazione temporaneo, lo spazio dei chunk, i limiti PHP, le sessioni, i proxy e il blocco dei file nell'ordine corretto.

Come configurare l'autenticazione a due fattori (2FA) nella console di amministrazione di Zimbra.

Come configurare l'autenticazione a due fattori (2FA) nella console di amministrazione di Zimbra.

Abilita e applica correttamente l'autenticazione a due fattori (2FA) di Zimbra, registra un account amministratore, scegli la verifica tramite TOTP o e-mail e testa l'accesso alla Console di amministrazione.

Come configurare la moderazione della stanza Matrix con il bot Mjolnir

Come configurare la moderazione della stanza Matrix con il bot Mjolnir

Configura Mjolnir per la moderazione di Matrix: crea un account bot dedicato, configura la sua sala di controllo, proteggi le stanze, gestisci le liste di ban e verifica le autorizzazioni in modo sicuro.