Certificati e fiducia
Lezione 40 di 47 del corso Reti da terminale di Coddy.
Durante l'handshake, il server presenta un certificato: un documento che indica per quale host è valido, quando scade e chi ne garantisce l'autenticità.
Chiunque può generarne uno dichiarando che è valido per qualsiasi host, quindi ciò che conta è la firma. I certificati sono firmati da un'Autorità di certificazione e il tuo computer include un elenco di autorità di cui si fida:
ls -l /etc/ssl/certs/ca-certificates.crtIl tuo client verifica tre cose: che il certificato sia firmato da un'autorità presente nell'elenco, che non sia scaduto e che il nome indicato corrisponda all'host richiesto. Se anche una sola di queste verifiche fallisce, la connessione viene interrotta.
Ecco perché l'ultimo controllo spesso fallisce quando si raggiunge un servizio interno tramite il suo indirizzo IP, anche con un certificato valido: il certificato è per un nome, mentre tu hai richiesto un numero.
Sfida
MedioTrova l’elenco delle autorità di cui la tua macchina si fida.
Verifica che il bundle CA esista in /etc/ssl/certs/ca-certificates.crt e stampa ca bundle present se esiste, oppure missing se non esiste.
Output previsto:
ca bundle presentOgni connessione TLS che effettui viene verificata rispetto a questo file.
Provalo tu
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Reti da terminale
5HTTP a mano
Anatomía de una solicitudMétodos de solicitudCódigos de estadoEncabezados de respuestaEscribir una respuestaRepaso: fundamentos de HTTP8HTTPS e TLS
Perché HTTPSLo schema determina la portaCertificati e fiduciaQuando TLS fallisceRiepilogo: HTTPSEsercitati da solo: Playground Terminal