Sito non sicuro: come risolvere

Sito non sicuro: come risolvere (Guide, Configurazione Hosting, Errori più comuni, Suggerimenti per gestire il tuo sito)
Argomenti trattati: , ,
Pubblicato il: 16 Marzo 2021 , Ultimo aggiornamento: 28 Aprile 2021

Da qualche tempo se il tuo sito non usa HTTPS, Google Chrome lo etichetta come “insicuro”: molti altri browser (quasi tutti) fanno la stessa cosa. Stando ad un post pubblicato sul blog ufficiale di Google Webmaster, a partire da fine gennaio 2017 tutti i siti web che utilizzino form oppure memorizzino password o numeri di carte di credito (pagine di pagamento con inserzione manuale di numero, scadenza e CVC della carta) e non facciano uso HTTPS saranno tutti etichettati come “insicuri”.

Google afferma a riguardo che abilitare HTTPS su tutto il sito sarebbe fondamentale per la sua sicurezza, e diventa un fattore critico nel caso in cui sia richiesto accesso ad informazioni riservate o pagine di login. HTTPS, infatti, riduce le possibilità di subire spoofing o che diversamente i dati in transito sul sito possano essere intercettati da terzi. Al tempo stesso, il certificato permette di stabilire una garanzia “firmata” per i visitatori che il sito è realmente quello che dice di essere, e non un sito truffa o un caso di phishing.

Quanto riportato fa riferimento, in sostanza, ad un passaggio di considerazione di HTTP in chiaro in qualche modo epocale: da fine mese HTTPS (ovvero HTTP criptato e con certificato di autenticazione SSL) sarà considerato in modo preferenziale rispetto ad HTTP in chiaro, in qualche modo “demonizzato” come insicuro.

Dopo aver descritto l’errore, cercheremo di vedere i principali modi per risolvere, ovviamente.

Cosa significa “sito non sicuro”?

Questa notifica di errore, anche se questo è più precisamente un warning – cioè un avviso di potenziali problemi o insicurezza nel sito. Esso sta ad indicare che si sta provando ad accedere ad un sito web che ha un certificato mancante, scaduto o non configurato correttamente. Questo accade ad oggi per tutti i siti che, banalmente, non funzionano in HTTPS, ma solo in HTTP. Purtroppo i browser non notificano in modo molto chiaro un caso o l’altro, per cui per capire se il sito è sicuro o meno basta, per intenderci, cliccare sull’indirizzo del sito e verificare che sia presente:

HTTPS://

con la “S” finale, prima del nome del dominio. Se è presente:

HTTP://

il sito NON è sicuro, altrimenti nel primo caso lo è. Attenzione che, inoltre, l’uso di HTTPS è solo uno standard tecnico di sicurezza che non significa che dobbiamo fidarci “automaticamente” del sito.

Questo errore indica che c’è un errore sulla configurazione HTTPS del sito web, che rende sconsigliabile procedere nello stesso (soprattutto se state per fornire informazioni sensibili o fare operazioni come accedere a siti non ufficiali). A livello pratico questo comporta che le informazioni che comunicate al sito non sono sicure, nel senso che una terza parte potrebbe sottrarle (exfiltration) e, ragion per cui, il vostro browser (per le rispettive policy di sicurezza) impedisce all’utente di vedere il contenuto del sito.

Ogni browser notifica in modo leggermente diverso questo errore: quindi, di fatto, sullo stesso sito “non sicuro” possono apparire notifiche leggermente diverse a seconda del browser usato. La sostanza, ovviamente, non cambia: cambia solo il modo in cui il warning viene notificato.

Su Google Chrome  la notifica è esattamente “sito non sicuro“, ed appare come avviso per tutelare il visitatore da eventuali rischi informatici come virus, phishing o malware. In questo caso, appare così:

 Alcune variante di questo errore sono anche “La connessione non è privata” (privata e sicura sono sinonimi, per quello che ci interessa), ma anche “ERR_CERT_SYMANTEC_LEGACY”, “NET::ERR_CERT_AUTHORITY_INVALID”, “ERR_CERT_COMMON_NAME_INVALID”, “NET::ERR_CERT_WEAK_SIGNATURE_ALGORITHM”, “ERR_CERTIFICATE_TRANSPARENCY_REQUIRED” oppure ancora “Errore certificato SSL”.

Su Mozilla Firefox in genere questo avviso viene notificato come “Questa connessione non è sicura“, ma il significato non cambia. Guardando nella barra degli strumenti del sito, apparirà così:

Una ulteriore specifica potrebbe essere, ad esempio, Il certificato non proviene da una fonte attendibile. Codice di errore: MOZILLA_PKIX_ERROR_ADDITIONAL_POLICY_CONSTRAINT_FAILED. Ecco una schermata tipica dell’errore in questione:

Altri errori specialistici molto comuni, che significano sempre la stessa cosa, sono i seguenti: Il certificato è scaduto il (data) (…) Codice di errore: SEC_ERROR_EXPIRED_CERTIFICATE, che indica la data in cui il certificato è scaduto (ed in questo caso dovrebbe essere rinnovato da un amministratore del sito), Il certificato non è attendibile in quanto l’autorità emittente è sconosciuta.Il server potrebbe non aver inviato i certificati intermedi richiesti.Potrebbe essere necessario importare un certificato radice aggiuntivo.Codice di errore: SEC_ERROR_UNKNOWN_ISSUER, che indica un problema “intermedio” di configurazione nel sito (tipico quando, ad esempio, usiamo un certificato proveniente da un ente emittente non accreditato o poco affidabile: meglio usarne un altro, sempre lato amministratore ovviamente), oppure Il certificato non è affidabile in quanto auto-firmato.Codice di errore: ERROR_SELF_SIGNED_CERT, che è tipico ad esempio dei siti in sviluppo, che a volte non usano certificati SSL per motivi di tempo. Se il certificato è auto-firmato ed il sito è pubblicamente accessibile sul web, è un problema da risolvere. Se il certificato è auto-firmato ed il sito è privato o non accessibile sul web (ad esempio si trova in una intranet), è un problema secondario da risolvere e si può anche decidere di ignorarlo. L’errore example.com utilizza un certificato di sicurezza non valido.Il certificato è valido solo per i seguenti nomi: www.example.com, *.example.com Codice di errore: SSL_ERROR_BAD_CERT_DOMAIN, infine, indica un problema tra DNS e certificato SSL. Se siete dei webmaster, probabilmente avete inserito un link in HTTPS ad un sottodominio che non è stato configurato in modo corretto sul pannello di controllo del dominio.

Ad esempio, poniamo di avere https://sito.com che risponde correttamente lato HTTPS, ma di inserirvi un link ad una sottopagina nella forma https://www.sito.com/qualcosa.html. Se il CNAME del WWW non è stato configurato in modo corretto (vedi qui come fare) i browser potrebbero dare errore SSL_ERROR_BAD_CERT_DOMAIN. Stesso discorso vale per un certificato SSL che non sia stato configurato in modo corretto su tutti i sottodomini (vedi qui come configurare SSL manualmente).

Potresti anche decidere di ignorare il problema e navigare lo stesso, per quanto non sia una cosa in genere consigliata: ma se ad esempio è un sito di prova o in una intranet o comunque sotto il tuo controllo, puoi accedere facilmente a questa opzione cliccando sul bottone presente nella pagina di errore, e selezionando un’opzione come “prosegui comunque” (varia leggermente da browser a browser).

A seconda del browser usato ci possiamo accorgere della “non sicurezza” di un sito da come appare nella barra degli strumenti. Quando la connessione è sicura, il che vuol dire che il sito usa correttamente HTTPS, vedremo una notifica del genere cliccando sul lucchetto grigio a lato del nome del sito: apparirà una finestrella in cui, in verde, ci sarà scritto “La connessione è sicura“, e poi varie informazioni sul certificato SSL (che in questo caso è valido), sull’uso dei cookie e su altre impostazioni del sito in oggetto.

Se usate Mozilla Firefox, similmente, vedremo l’avviso in verde “Connessione sicura” e, cliccandoci, avremo conferma di questo con l’indicazione di chi ha firmato (ovvero mantiene e gestisce) il certificato SSL usato (CloudFlare Inc., in questo caso).

Sui siti non sicuri tutto questo non appare, ovviamente, e vi verrà notificato che c’è un problema come quello descritto.

Per capire meglio come risolvere il problema, è sufficente tenere presente le informazioni che abbiamo premesso e poi, a seconda dei casi, valutare che cosa è meglio fare.

Soluzione semplice: riprovare ad accedere dopo aver svuotato la cronologia

Dall’esterno, se non sei il proprietario del sito, non puoi purtroppo fare nulla: puoi eventualmente avvisare il proprietario del sito perchè risolva il problema, ad esempio mandandogli una mail per avvisarlo, oppure puoi più semplicemente riprovare in seguito ad accedere al sito. Prima di riprovarci, ricordati di cancellare la cronologia del tuo browser, per evitare di continuare a vedere la vecchia versione della pagina.

Ovviamente questo è un problema per i proprietari dei siti, perchè sulla maggioranza dei browser il sito non sarà visibile per nulla. Se sei il proprietario del sito e ricevi la notifica “Questa connessione non è sicura” (in alcuni casi potreste anche vedere connessione non affidabile), devi prendere dei provvedimenti diversi a seconda del tipo di errore che riscontri. Di seguito ho elencato gli errori più comuni, e come risolverli.

Si suggerisce, in generale, di non accedere a siti che presentino l’avviso in questione: l’uso di HTTPS garantisce una serie di standard di sicurezza nella navigazione, e ad esempio rende sicure le operazioni di login nel sito, l’inserimento dei dati della nostra carta di credito nel caso di pagamenti online e maggiori prestazioni in termini di velocità nel caricamento.

Ci sono pero’ vari casi in cui vogliamo comunque accedere alla pagina, ad esempio se stiamo lavorando ad un problema su un sito (da webmaster), e possono esistere varie ragioni in cui, consapevolmente, vogliamo accedere lo stesso. Volendo, pertanto, se sapete quello che state facendo e vorreste accedere al sito, potete farlo dopo aver svuotato la cronologia. Questo forzerà il browser a ricaricare la pagina da zero, visto che la versione HTTP è in cache e forse continuate a vedere la vecchia versione, e può essere considerato è un primo modo per aggirare l’errore.

Soluzione più complessa (e corretta): rinnovare o reinstallare il certificato SSL del sito

Ovviamente questa seconda possibilità ci interessa solo se il sito è il nostro. Per risolvere, in questo caso, dovrai agire direttamente sul sito da amministratore per installare o rinnovare il certificato, a seconda dei casi, oppure dovresti avvisare il webmaster del tuo sito che esiste questo problema.

Errore SSL_ERROR_BAD_CERT_DOMAIN su CloudFlare

Se state usando Cloudflare per gestire il DNS del vostro sito, quindi siete con i NS che vi ha fornito gratuitamente questo servizio, risolvere l’errore SSL_ERROR_BAD_CERT_DOMAIN è abbastanza agevole: basta de-selezionare la nuvoletta Proxied :orange: dalla sezione DNS della configurazione del dominio, ed impostare in modo tale che il record A ed il record CNAME del sito funzionino con questa opzione disabilitata (deve apparire Only DNS).

Esempio:

 

Come risolvere il problema del rinnovo o dell’installazione di HTTPS

Su questo sito trovate due guide specifiche per l’argomento con l’uso di Let’s Encrypt:

  1. come installare HTTPS con certificato Let’s Encrypt
  2. come rinnovare HTTPS con certificato Let’s Encrypt

Conclusioni

La maggiorparte degli hosting web moderni dispone, per la cronaca, di certificati SSL attivabili su richiesta: a fine mese, per molti siti potrebbe essere opportuno valutare di acquistarli (ad esempio Keliweb e GoDaddy). Guarda anche la lista di hosting che supportano SSL (quasi tutti, ad oggi).

Nessun voto disponibile

Che te ne pare?

Articoli più letti su questi argomenti: