Un iPad ha bisogno del proprio certificato client VPN?
Un certificato client condiviso collega ogni dispositivo a un’unica identità revocabile. Decidete se la registrazione per dispositivo vale il passo di gestione in più.
Un nuovo iPad entra nel team, e la via più rapida è esportare il certificato client esistente e installarlo sul tablet. Funziona finché qualcuno non se ne va, perde un dispositivo o chiede un audit che dica quale dispositivo si è connesso e quando. La decisione non riguarda il file del certificato ma l’identità: se ogni dispositivo può essere autorizzato e revocato da solo. Costo e sforzo di gestione decidono la risposta, ed entrambi sono più piccoli di quanto sembrino.
Emittente condiviso, identità separate
Ogni dispositivo può fidarsi della stessa autorità di certificazione e connettersi allo stesso gateway pur avendo un’identità client diversa. L’emittente è un’ancora di fiducia, mentre l’identità è una coppia di chiavi il cui soggetto il server mappa a una policy. È confondere le due cose che fa sembrare innocuo un certificato condiviso. Resta innocuo solo finché qualcuno non ha bisogno di sapere quale dispositivo ha aperto una sessione.
Condividere l’emittente risparmia lavoro di configurazione e non cambia nulla nella responsabilità per dispositivo. Condividere l’identità comprime ogni dispositivo in un’unica unità revocabile: revocarne uno revoca tutti, e autorizzare un sostituto autorizza ogni copia della chiave mai creata. Quello scambio vale la pena di farlo esplicitamente invece di copiare un file perché è più veloce un venerdì pomeriggio.
Quando un secondo certificato costa troppo
La registrazione per dispositivo costa un passo: un payload gestito, una richiesta SCEP o un’importazione guidata con una password monouso. Costa anche un posto dove tenere traccia dei numeri di serie e delle date di scadenza, la parte che la maggior parte dei deployment dimentica finché il primo certificato non scade. Entrambi i costi sono una tantum, ed entrambi si riducono quando il flusso di registrazione li automatizza.
Il costo è reale per una famiglia con due tablet e un solo utente, dove un’identità condivisa è una decisione ragionevole documentata in una frase. Non è ragionevole per un servizio in cui l’accesso va ritirato per persona o per dispositivo, perché la storia della revoca è tutta la ragione per usare certificati invece di una password. Giudicate il deployment dalla frequenza con cui i dispositivi cambiano mani, non da quanti dispositivi esistono oggi.
Registrate il dispositivo, non copiate la chiave
Le piattaforme moderne tengono le chiavi private in un archivio protetto, e alcune le contrassegnano come non esportabili per progettazione. È questa proprietà a rendere impossibile la copia fin dall’inizio, ed è anche il motivo per cui un pacchetto esportato da un portatile non può essere semplicemente reimportato su un tablet in alcun modo supportato. Tentarlo comunque produce un profilo che si installa pulito e poi non autentica mai.
Usate il metodo di registrazione che il deployment già supporta: un payload di identità gestito, un servizio SCEP o un flusso basato su account che emette una nuova chiave sul dispositivo. Distribuire la chiave privata dell’autorità di certificazione per risolvere un’identità mancante è un altro errore, con un raggio d’impatto molto più ampio. L’autorità emette credenziali e non dovrebbe mai viaggiare fino all’endpoint.
Verificate la revoca prima di rispondere
Prima di scegliere l’opzione condivisa, descrivete come appare la revoca nel giorno peggiore. Se la risposta è un’unica azione che colpisce più dispositivi, il progetto ha già deciso contro di voi.
openssl pkcs12 -in client.p12 -info -noout
openssl x509 -in client.pem -noout -subject -issuer -serial -dates
openssl verify -CAfile ca.pem client.pem
Esaminate il materiale che avete davvero: se è presente una chiave privata, cosa dice il soggetto e se il numero di serie può essere revocato singolarmente. Un file di certificato senza la sua chiave non può autenticare nulla, ed è per questo che alcune identità copiate falliscono alla prima connessione.
Eliminare un’app dal tablet non è una revoca, e il server continua ad accettare l’identità finché qualcuno non la disattiva. Scrivete quella frase nel runbook prima che il primo dispositivo venga registrato.