Configurazione SSL/TLS Flexible vs Full: differenze e quando usarli
La scelta della modalità SSL/TLS su Cloudflare è una decisione critica che influenza sicurezza, performance e affidabilità del sito. Le opzioni disponibili sono Off, Flexible, Full e Full (strict): ognuna determina come Cloudflare gestisce la cifratura tra visitatore, edge ed origine. Capire le differenze evita errori comuni come il loop infinito di redirect o l'errore 525 di handshake fallito.
Come funziona la cifratura su Cloudflare
Cloudflare si posiziona tra il visitatore e l'origine, costruendo due connessioni distinte: una verso il browser e una verso il server web. La modalità SSL/TLS stabilisce se ciascuno di questi due tratti è cifrato e quanto rigorosa è la verifica del certificato. La connessione visitatore-edge usa sempre il certificato Universal SSL gestito da Cloudflare, mentre la connessione edge-origine può variare in base all'impostazione scelta.
Le quattro modalità in dettaglio
La modalità Off disabilita HTTPS completamente: il visitatore vede solo http e qualsiasi richiesta su porta 443 viene rifiutata. È sconsigliata e ormai inutilizzabile per i moderni browser. Flexible cifra solo il tratto visitatore-edge mentre Cloudflare contatta l'origine via http in chiaro. Sembra comoda perché non richiede certificato sul server, ma è insicura: un'attaccante sulla rete tra Cloudflare e l'origine può leggere il traffico.
La modalità Full attiva HTTPS su entrambi i tratti ma accetta certificati self-signed o scaduti sull'origine. È il giusto compromesso per server con certificati interni o autoprodotti. Full (strict) è la modalità raccomandata in produzione: cifra entrambi i tratti e verifica che il certificato dell'origine sia valido, non scaduto e firmato da una CA pubblica oppure dalla Origin CA gratuita di Cloudflare.
Procedura passo-passo
- Accedi al pannello Cloudflare e seleziona il dominio interessato.
- Vai nella sezione SSL/TLS → Overview.
- Verifica lo stato attuale del certificato Universal SSL (deve essere Active).
- Scegli la modalità più adeguata in base alla configurazione del tuo server di origine.
- Se l'origine non ha un certificato, vai su Origin Server e genera un certificato Origin CA gratuito (validità fino a 15 anni).
- Installa il certificato Origin CA sul server (Apache, Nginx, IIS) seguendo le istruzioni del provider.
- Cambia la modalità in Full (strict) e fai un test in incognito sul sito.
- Attiva Always Use HTTPS e Automatic HTTPS Rewrites.
- Imposta HSTS gradualmente (max-age basso all'inizio) dalla scheda Edge Certificates.
- Esegui un test SSL completo su SSL Labs per verificare il punteggio finale.
Errori comuni e come risolverli
- Loop di redirect (ERR_TOO_MANY_REDIRECTS): si verifica con modalità Flexible quando il server tenta a sua volta di forzare HTTPS. Passa a Full o disabilita il redirect lato server.
- Errore 525 SSL handshake failed: la modalità Full (strict) non accetta il certificato di origine. Installa Origin CA o passa temporaneamente a Full.
- Errore 526 Invalid SSL Certificate: il certificato è scaduto o non corrisponde all'hostname. Rinnova il certificato o usa Origin CA.
- Mixed content warning: le risorse HTML contengono link http. Attiva Automatic HTTPS Rewrites e aggiorna i link nel database.
- Cookie con flag Secure mancante: l'app pensa di essere ancora in http. Configura il framework per gestire correttamente l'header X-Forwarded-Proto.
Quale modalità scegliere
Per la maggior parte dei siti professionali la risposta è una sola: Full (strict). Garantisce sicurezza end-to-end e protegge da attacchi man-in-the-middle anche sul tratto edge-origine. Flexible va evitata perché crea una falsa sensazione di sicurezza: il lucchetto verde nel browser non implica che il dato sia protetto fino al server. Per ambienti di sviluppo o legacy temporanei Full senza strict può essere accettabile, ma sempre con la consapevolezza che è una soluzione provvisoria.
Domande frequenti
D: Posso usare Full (strict) senza pagare un certificato?
R: Sì. La Origin CA di Cloudflare è gratuita e copre fino a 15 anni di validità, perfettamente compatibile con Full (strict).
D: Cosa succede se cambio modalità in produzione?
R: La modifica è immediata. Esegui prima un test su staging o monitora con curl per verificare assenza di errori.
D: Flexible è davvero così pericolosa?
R: Sì in ambienti ostili. Tra il datacenter Cloudflare e il tuo server possono inserirsi router compromessi: senza cifratura le credenziali viaggiano in chiaro.
D: HSTS è compatibile con Flexible?
R: Tecnicamente sì, ma genera spesso loop. Attiva HSTS solo dopo essere passato a Full (strict).
Considerazioni operative finali
Quando applichi una configurazione di questo tipo in produzione è sempre buona norma seguire un'approccio incrementale: parti con un test su staging, monitora gli effetti per qualche giorno, poi estendi gradualmente al traffico live. La rete Cloudflare elabora ogni cambiamento in pochi secondi a livello globale, quindi le modifiche sono effettive quasi immediatamente, ma gli effetti collaterali su utenti reali possono richiedere ore o giorni per emergere. Annota nel runbook interno data, motivo e parametri di ogni modifica significativa. Una documentazione precisa accelera enormemente il troubleshooting futuro e facilita il passaggio di consegne tra membri del team.
Vale anche la pena ricordare che Cloudflare aggiorna frequentemente l'interfaccia del dashboard e le posizioni delle voci di menu. La logica e le funzionalità descritte in questa guida restano valide, ma il percorso esatto per raggiungere ogni opzione può variare leggermente nel tempo. In caso di difficoltà a trovare una specifica voce, utilizza la barra di ricerca interna del dashboard oppure consulta la documentazione ufficiale aggiornata. La community Cloudflare sul forum ufficiale e su Stack Overflow è inoltre molto attiva e offre spesso risposte rapide a problemi specifici di configurazione.
Per progetti complessi che coinvolgono più servizi Cloudflare contemporaneamente (CDN, Workers, WAF, Access, R2) conviene strutturare la configurazione come codice tramite Terraform o Pulumi. Questo permette versioning, code review, rollback atomici e deploy ripetibili tra environment. Per team con esigenze più semplici la gestione manuale via dashboard resta perfettamente valida, soprattutto se accompagnata da una checklist scritta delle impostazioni applicate. La scelta dell'approccio dipende dalle dimensioni del progetto e dal grado di automazione desiderato. L'importante è essere consistenti e mantenere tracciabilità delle modifiche effettuate.
Hai bisogno di aiuto?
Se vuoi configurare Cloudflare per il tuo sito con il team di G Tech Group, scrivici tramite il modulo di contatto.