TLS 1.0 / 1.1 dismissione: cosa fare

Perché TLS 1.0 e 1.1 sono morti

TLS 1.0 è del 1999, TLS 1.1 del 2006. Entrambi i protocolli usano algoritmi di hash deboli (MD5, SHA-1), supportano cipher CBC vulnerabili a padding oracle attacks, e non hanno mai integrato AEAD. Il PCI Council li ha dichiarati non conformi nel 2018, il NIST e l'IETF hanno formalmente deprecato entrambi con la RFC 8996 nel 2021. Tutti i browser principali li hanno disabilitati nel 2020.

Conseguenze pratiche

Server che ancora rispondono in TLS 1.0/1.1 hanno problemi diversi a seconda del contesto:

  • I browser moderni rifiutano la connessione con errore SSL_VERSION_OR_CIPHER_MISMATCH
  • I report di compliance PCI DSS, HIPAA, ISO 27001 falliscono
  • SSL Labs penalizza con voto C o inferiore
  • Le polizze cyber-insurance richiedono dismissione esplicita
  • I gateway di pagamento rifiutano integrazioni che usano i vecchi protocolli

Verifica versioni attive

Prima di disabilitare, verifica cosa risponde il server. Con OpenSSL:

openssl s_client -connect tuosito.it:443 -tls1
openssl s_client -connect tuosito.it:443 -tls1_1

Se il comando si connette, il protocollo è attivo. Alternativa con nmap:

nmap --script ssl-enum-ciphers -p 443 tuosito.it

Output completo elenca tutti i protocolli e cipher supportati. Strumenti online come SSL Labs danno un riepilogo immediato.

Disabilitare su Nginx

Sostituisci la riga ssl_protocols con:

ssl_protocols TLSv1.2 TLSv1.3;

Ricarica con nginx -t && nginx -s reload. Verifica subito il sito da browser moderno per accertarti che HTTPS funzioni; poi rilancia il test di compliance.

Disabilitare su Apache

Nel file httpd.conf o nel VirtualHost SSL:

SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1

Riavvia o ricarica Apache. Ricordati di aggiornare anche eventuali file specifici per i singoli VirtualHost.

Disabilitare su IIS

Modifica le chiavi di registro:

HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server

Imposta Enabled = 0 e DisabledByDefault = 1. Ripeti per TLS 1.1. Per applicare le modifiche serve un reboot del server. Lo strumento IIS Crypto di Nartac semplifica il processo con preset preconfigurati.

Disabilitare su load balancer e CDN

Cloudflare, Fastly, Akamai, AWS ALB e simili hanno tutti pannelli per impostare la minimum TLS version. Verifica che la chiusura non sia solo sul tuo origin server ma anche sul layer pubblico, altrimenti i client esterni continuano a parlare con il CDN in TLS 1.0.

Disabilitare client legacy

Spesso il problema non è il server ma client interni: cron job, integrazioni B2B, vecchi software CRM che chiamano API in TLS 1.0. Inventario tipico:

  • Script PHP con cURL su PHP < 5.6 (usa OpenSSL legacy)
  • Applicazioni .NET che non hanno impostato ServicePointManager.SecurityProtocol
  • Java 7 senza patch (default TLS 1.0)
  • Vecchi POS e dispositivi embedded
  • Browser legacy (IE 8, IE 9, Android < 4.4)

Strategia di rollout

  1. Censimento dei client che si connettono al servizio (log analyzer su protocol)
  2. Comunicazione preventiva ai partner B2B con scadenza
  3. Disabilita prima TLS 1.0 in finestra di manutenzione
  4. Monitora i log per errori SSL nelle 48-72 ore successive
  5. Disabilita TLS 1.1 quando i numeri sono ok
  6. Mantieni TLS 1.2 e TLS 1.3 come baseline

Hai bisogno di aiuto?

Se vuoi gestione SSL dal team di G Tech Group, scrivici tramite il modulo di contatto.

Hai trovato utile quest'articolo?