Temos uma discussão no grupo de segurança da minha empresa sobre o pior das opções a seguir para gerenciar a chave privada SSL.
O servidor da web precisa acessar a chave privada para a operação de criptografia. Este arquivo deve ser protegido contra acesso não autorizado. Ao mesmo tempo, o servidor deve iniciar automaticamente, sem intervenção humana (se for suficientemente seguro).
Estamos discutindo três opções:
Proteja a chave com permissões do sistema de arquivos.
Use uma chave protegida por senha e insira a chave manualmente em todas as reinicializações.
Use uma chave protegida por senha e armazene a chave no sistema de arquivos para automatizar a reinicialização.
Nossas preocupações são as seguintes:
Com a opção 1, as reinicializações são automáticas, mas um compromisso pode copiar a chave privada e, como não está protegido, pode ser usado para decifrar a comunicação ou representar nossos servidores.
A opção 2 parece ser mais segura, mas precisa de intervenção humana e os administradores de sistemas estão preocupados se ocorrer fora do horário comercial. Além disso, a senha deve ser compartilhada com vários administradores de sistema e você sabe que um segredo compartilhado não é mais um segredo.
A opção 3 tem o melhor das duas opções anteriores, mas se alguém tiver acesso à chave também poderá ter acesso à senha :(, portanto, ela não parecerá tão segura.
Como você gerencia a segurança das chaves privadas de seus servidores? Existem outras opções (mais seguras)?