Abbiamo una discussione nel gruppo di sicurezza della mia azienda su quale sia la peggiore delle seguenti opzioni per gestire la chiave privata SSL.
Il server Web deve accedere alla chiave privata per l'operazione di crittografia. Questo file deve essere protetto da accessi non autorizzati. Allo stesso tempo, il server dovrebbe avviarsi automaticamente, senza intervento umano (se è abbastanza sicuro).
Stiamo discutendo tre opzioni:
Proteggi la chiave con permessi del file system.
Utilizzare una chiave protetta da password e inserire la chiave manualmente ad ogni riavvio.
Utilizzare una chiave protetta da password e archiviare la chiave nel filesystem per automatizzare il riavvio.
Le nostre preoccupazioni sono le seguenti:
Con l'opzione 1, i riavvii sono automatici ma un compromesso potrebbe copiare la chiave privata e, poiché non protetto, potrebbe essere utilizzato per decifrare la comunicazione o impersonare i nostri server.
L'opzione 2 sembra più sicura ma necessita di intervento umano e gli amministratori di sistema sono preoccupati se accade fuori orario. Inoltre, la password deve essere condivisa con diversi amministratori di sistema e sai che un segreto condiviso non è più un segreto.
L'opzione 3 ha la migliore delle due opzioni precedenti ma se qualcuno ha accesso alla chiave potrebbe anche avere accesso alla password :(, quindi non sembra affatto così sicuro.
Come gestite la sicurezza delle chiavi private dei vostri server? Esistono altre opzioni (più sicure)?