Agregar una contraseña a su clave SSH significa que la clave privada se almacenará encriptada en su máquina local. Esa clave privada es un secreto bastante sensible, ya que saber que la clave otorga acceso a todos los servidores en los que registró la clave pública correspondiente (en su archivo .ssh/authorized_keys
).
Los atacantes pueden saquear secretos en archivos locales en varias ocasiones:
- Le roban su computadora portátil.
- Su disco duro se rompe (sucede) y lo desecha, y el atacante lo recupera de su contenedor de basura, lo repara (por ejemplo, la parte rota era la placa electrónica y el atacante simplemente lo reemplaza) y lee sus archivos.
- Realiza una copia de seguridad de sus archivos en algún dispositivo externo (unidad USB, cinta ...) y el atacante lo roba.
- Algunos programas maliciosos en su máquina le echan un vistazo a sus archivos y cargan sus claves privadas a un servidor en Uzbekistán.
- A través de algún contratiempo de configuración desafortunado, hace que sus archivos estén disponibles para todo el mundo (por ejemplo, con el uso compartido de discos o con un servidor web local que no se haya configurado correctamente).
- Una vulnerabilidad en su navegador web permite temporalmente que Javascript malvado lea y cargue algunos archivos arbitrarios, por ejemplo. sus claves privadas SSH.
Esta lista no es exhaustiva. En todas estas ocasiones, el cifrado basado en contraseña de su clave privada SSH hará la vida más difícil para el atacante. Tenga en cuenta que es probable que sus archivos también contengan otra información confidencial, por lo que el cifrado de la clave privada SSH no es suficiente para alcanzar la seguridad absoluta; sin embargo, ayuda.
Por supuesto, no hay nada completamente gratis. Si usa una contraseña para proteger el almacenamiento en disco de su clave privada, tendrá que escribir esa contraseña regularmente. Como de costumbre, la seguridad y la comodidad son dos aspectos de una compensación.