Il punto del certificato del server è tale che il client può assicurarsi di conoscere la chiave pubblica corretta e autentica per il server. I certificati firmati da una CA sono un modo per raggiungere questo obiettivo (con la convinzione esplicita che ci si fida della CA per firmare solo i certificati con le informazioni corrette al suo interno, e non di falsificarli). Un certificato autofirmato non può garantire tale garanzia.
Tuttavia, in alcuni casi, puoi sostituire il modello di certificato con fiducia diretta . Vale a dire, si informa il browser Web che per un determinato certificato specifico può essere considerato attendibile. Firefox lo descrive come una "eccezione di sicurezza". Questo non risolve completamente il problema, ma almeno lo riduce al problema di accertarsi che una volta venga visualizzato il certificato server corretto. In seguito, il tuo browser ricorderà quell'eccezione e non ti infastidirà con avvertimenti spaventosi - ma sarà luccicante come un albero di natale ubriaco se qualcuno prova a fornirti un altro certificato autofirmato diverso .
Per la registrazione iniziale, quando ti connetti per la prima volta al server, chiedi al tuo browser di visualizzare "Impronta digitale SHA-1" o "impronta digitale". Come viene denominato cambia con il browser, ma questo è un valore di hash SHA-1 calcolato sul certificato completo ed espresso come 40 caratteri esadecimali. Quindi, chiama il sysadmin del server desiderato e fagli indicare l'identificazione del suo certificato: se corrispondono, allora sai che il tuo browser sta visualizzando il certificato giusto e può registrarlo come localmente nota eccezione di sicurezza.
(La procedura sopra descritta è esattamente ciò che viene fatto per SSH , e funziona anche per SSL.)
Come installare una "eccezione di sicurezza" dipende dal browser e dal sistema operativo, e sono troppo pigro per cercare e descrivere tutte le possibili combinazioni. Ma, almeno, hai il concetto.