La gestión de claves SSH consiste en controlar el ciclo de vida completo de las claves SSH en toda la organización: creación, distribución, rotación y eliminación. Dado que las claves SSH otorgan acceso a sistemas críticos y no caducan automáticamente, su gestión evita la proliferación de claves, la pérdida de claves y el acceso no autorizado, y es un requisito de estándares como NIST IR 7966.
La gestión de claves SSH es el proceso de controlar las claves SSH a lo largo de su ciclo de vida: creación, distribución, rotación y retirada para todos los usuarios y servidores. Las claves SSH autentican el acceso a sistemas remotos y, a diferencia de los certificados TLS , no tienen fecha de caducidad, por lo que, sin una gestión activa, se acumulan y representan un grave riesgo de seguridad. Una buena gestión garantiza el cumplimiento de las políticas, evita la proliferación de claves y mantiene la conformidad.
Puntos Clave
- La gestión de claves SSH rige el ciclo de vida completo de las claves SSH (creación, distribución, rotación y eliminación) en toda la organización.
- Las claves SSH autentican a los usuarios y los procesos automatizados en sistemas remotos mediante un par de claves pública/privada asimétricas, sin necesidad de contraseñas.
- A diferencia de los certificados TLS, las claves SSH no tienen fecha de caducidad, por lo que se acumulan fácilmente y se convierten en una maraña de claves sin control si no se gestionan activamente.
- Una gestión inadecuada de las claves conlleva graves riesgos: pérdida de datos, acceso no autorizado, claves individuales huérfanas, proliferación de claves y ataques basados en SSH mediante claves privadas robadas.
- Buenas prácticas: descubrir y consolidar claves, crear y aplicar políticas, identificar y neutralizar riesgos, rotar las claves periódicamente y realizar un seguimiento y auditoría continuos. La guía NIST IR 7966 ofrece orientación al respecto.
¿Qué es SSH y cómo se utilizan las claves SSH?
Secure Shell, o SSH, es un protocolo de red que se utiliza para conectar a un usuario con un sistema remoto a través de una red no segura. Autentica a los usuarios y cifra las comunicaciones a través de redes como internet. Las organizaciones utilizan SSH para la administración de sistemas, la transferencia de archivos, la gestión de infraestructuras, los procesos automatizados y las operaciones en la nube. Las claves SSH autentican a los usuarios sin necesidad de nombres de usuario ni contraseñas: en su lugar, un par de claves SSH de confianza demuestra la identidad del usuario.
La autenticación SSH es asimétrica, por lo que utiliza un par de claves: una clave pública (la clave autorizada) y una clave privada (la clave de identidad). La clave pública se encuentra en el sistema remoto y controla quién puede intentar iniciar sesión; incluso si es robada, por sí sola no otorga acceso. La clave privada prueba la identidad del usuario y debe mantenerse en secreto, accesible solo para el usuario al que autentica. El par de claves se crea una sola vez y permanece asociado al usuario de por vida; una frase de contraseña puede añadir una capa adicional de protección. Una vez autenticado, los datos de la sesión se protegen con cifrado simétrico rápido.
Durante el protocolo de enlace, el cliente envía su ID de clave pública al servidor. El servidor busca una clave autorizada coincidente y, si la encuentra, cifra un mensaje de desafío con la clave pública y lo envía al cliente. El cliente lo descifra con su clave privada, calcula un hash seguro (utilizando la función SHA-2) del mensaje y lo devuelve. Si los hashes coinciden, el cliente se autentica y puede operar dentro del sistema remoto.
¿Por qué es importante la gestión de claves SSH?
La gestión de claves SSH es esencial dondequiera que se utilice SSH, ya que una gestión incorrecta de un par de claves puede comprometer todo el sistema remoto que protege. Un desafío particular es que las claves SSH no caducan como los certificados TLS, por lo que permanecen activas y se acumulan. Los principales riesgos que aborda la gestión de claves SSH son:
- Pérdida de información: Un atacante que obtenga el control de las claves SSH puede robar, eliminar o modificar cualquier dato al que la víctima pudiera acceder, exponiendo así datos confidenciales como información de identificación personal (PII).
- Generación de claves externas: Cualquier persona con acceso al sistema remoto puede crear nuevos pares de claves. Un ladrón con una clave robada podría generar un número ilimitado de pares nuevos, lo que dificultaría la gestión de las claves legítimas y preservaría su acceso incluso si se elimina la clave robada original.
- Falta de fecha de caducidad: Dado que las claves SSH nunca caducan, las claves antiguas no se rotan, los empleados que se marchan pueden conservar el acceso y los administradores dudan en eliminar las claves cuyo propósito ya desconocen, lo que aumenta el riesgo con el tiempo.
- Teclados solistas: Cuando los empleados se marchan o se pierden las llaves, se acumulan llaves sueltas sin identificar, y los administradores se muestran reacios a retirar las llaves que no pueden identificar, por temor a que interrumpan sistemas críticos.
- Expansión clave: Tras años de funcionamiento, las claves se multiplican hasta que resulta imposible rastrearlas todas, y las claves no contabilizadas son precisamente lo que los atacantes aprovechan.
- Ataques basados en SSH: Cada vez es más común. Con una clave privada comprometida, un atacante puede suplantar la identidad de los administradores, leer o modificar el tráfico cifrado, acceder, alterar, eliminar o destruir datos, o instalar software malicioso.
- Compliance: Normas y reglamentos tales como PCI DSS y FIP Es necesario que las claves SSH se gestionen correctamente, y la norma NIST IR 7966 proporciona directrices específicas para ello.
Cumplimiento de la gestión de claves SSH
Para cumplir con estándares como PCI DSS, HIPAA y FIPS, las organizaciones deben cumplir con los siguientes requisitos:
- Gestione adecuadamente las identidades y las claves SSH para proteger la información de identificación personal y otros datos confidenciales.
- Rote las teclas que hayan estado en uso durante mucho tiempo y elimine las que ya no estén activas.
- Siga el principio del mínimo privilegio, de modo que los usuarios (y las claves robadas) solo puedan acceder a lo que estrictamente necesitan, y no a todo el sistema remoto.
- Reemplace las llaves rápidamente si se pierden o se ven comprometidas.
- Supervise y aísle las áreas que contienen datos de pago o información de identificación personal del resto de la red.
Buenas prácticas para la gestión de claves SSH
Una buena gestión de las claves SSH implica una cobertura total de cada clave y sus vulnerabilidades asociadas. Las siguientes cinco prácticas conforman un programa sólido:
- Descubrimiento y consolidación: Primero, averigüe cuántas claves existen y dónde se encuentran. Asocie cada clave con su usuario y servidor, verifique cuánto tiempo lleva en uso, rote las claves de larga duración y elimine aquellas cuyo usuario ya no esté presente. Consolide las claves en una ubicación centralizada para facilitar la administración, reducir la superficie de ataque y evitar claves aisladas y la proliferación de claves.
- Creación y aplicación de políticas: Cree políticas que definan quién puede crear claves, cómo se crean y almacenan, para qué se utilizan, cuánto tiempo permanecen activas antes de su rotación, qué justifica su eliminación y el nivel máximo de acceso que debe tener cada clave. La aplicación de estas políticas es fundamental para la gestión de claves SSH y debe ser una prioridad de seguridad.
- Identificación y neutralización de riesgos: Identifique y elimine las vulnerabilidades de las claves SSH. La centralización facilita esta tarea: busque claves antiguas o sin usar, almacenamiento inseguro y claves comprometidas, reemplace las antiguas y elimine las que no se utilicen.
- Rotación de llaves: Una vez que las llaves lleven un tiempo en uso, rote las llaves del par. Esto limita los daños derivados de una intrusión no detectada y reduce la propagación del virus. Automatizar la rotación reduce considerablemente el riesgo de que se pase por alto alguna llave.
- Seguimiento y auditoría continuos: Supervise y audite continuamente las claves para que se roten y eliminen en el momento adecuado, y para que no quede ninguna cuando un usuario se vaya. La automatización elimina el error humano y mantiene bajo control la proliferación de claves, las claves individuales y las deficiencias de cumplimiento.
SSH y la transición post-cuántica
SSH se basa en la criptografía de clave pública para el intercambio de claves y la autenticación, y esos algoritmos (como RSA, ECDSA, y Diffie-Hellman) son del tipo que una futura computadora cuántica podría romper. El ecosistema SSH ya está respondiendo: las versiones recientes de OpenSSH han adoptado el intercambio de claves post-cuántico, optando por un método híbrido que combina un intercambio de curva elíptica clásico con el estándar NIST. ML-KEM (FIPS 203), por lo que una sesión permanece segura mientras cualquiera de los componentes se mantenga. Esto es importante ahora debido al principio de "recolectar ahora, descifrar después": el tráfico capturado hoy podría descifrarse una vez que las computadoras cuánticas alcancen su madurez. Una buena gestión de claves SSH facilita esta transición, ya que una organización que ya realiza un seguimiento y rota sus claves puede adoptar algoritmos post-cuánticos con mucha más facilidad. La migración de firmas relacionada (por ejemplo, a ML-DSA) avanza paralelamente. Cabe destacar que ML-KEM, y no los esquemas de firma de código, es el algoritmo más relevante para el intercambio de claves de SSH.
Cómo ayuda la consultoría de cifrado
La creación de un programa eficaz de gestión de claves SSH, incluyendo el descubrimiento, la definición de políticas, la rotación y la monitorización, es precisamente lo que ofrecen los Servicios de Asesoramiento en Cifrado de Encryption Consulting . Estos servicios incluyen evaluaciones y formación sobre SSH y la gestión de claves en AWS, Azure y Google Cloud, y cumplen con las normas PCI DSS, HIPAA, FIPS y NIST IR 7966. Para automatizar el ciclo de vida de las claves SSH, SSH Secure de EC gestiona el descubrimiento, la rotación y la aplicación de políticas a gran escala. Cuenta con el respaldo de las prácticas certificadas ISO/IEC 27001:2022 y SOC 2.
Preguntas frecuentes
¿Qué es la gestión de claves SSH?
La gestión de claves SSH consiste en controlar las claves SSH a lo largo de todo su ciclo de vida, desde su creación y distribución hasta su rotación y eliminación, para cada usuario y servidor de una organización. Dado que las claves SSH otorgan acceso a sistemas críticos y no caducan automáticamente, se acumulan fácilmente, generando un gran número de claves sin control. Su gestión garantiza el cumplimiento de las políticas de acceso, previene la creación de claves huérfanas y no autorizadas, y mantiene a la organización en cumplimiento con estándares como NIST IR 7966.
¿Cómo funcionan las claves SSH?
Las claves SSH funcionan mediante criptografía asimétrica: cada usuario posee un par de claves compuesto por una clave pública (la clave autorizada, ubicada en el sistema remoto) y una clave privada (la clave de identidad, que se mantiene en secreto). La clave pública controla quién puede intentar iniciar sesión, mientras que la clave privada verifica la identidad del usuario. Durante el protocolo de enlace, el servidor desafía al cliente utilizando la clave pública, y solo la clave privada correspondiente puede responder correctamente, autenticando al usuario sin necesidad de contraseña.
¿Por qué es importante la gestión de claves SSH?
Es importante porque una clave SSH mal gestionada puede comprometer todo un sistema remoto. Las claves SSH no caducan como los certificados TLS, por lo que se acumulan con el tiempo, lo que provoca una proliferación de claves, claves huérfanas y claves retenidas por empleados que ya no trabajan en la empresa. Los atacantes aprovechan las claves no contabilizadas o robadas para suplantar la identidad de los administradores, acceder a los datos y moverse por los sistemas. Una gestión adecuada previene estos riesgos y es necesaria para cumplir con estándares como PCI DSS y FIPS.
¿Cuáles son las mejores prácticas para la gestión de claves SSH?
Existen cinco prácticas recomendadas fundamentales: descubrir y consolidar todas las claves en una ubicación administrada; crear y aplicar políticas que regulen quién puede crear claves, cómo se almacenan y cuándo se rotan o eliminan; identificar y neutralizar riesgos como claves antiguas, sin usar o comprometidas; rotar las claves periódicamente, reemplazando ambas claves del par; y monitorear y auditar las claves continuamente. La automatización de la rotación y el monitoreo reduce considerablemente el error humano, y la norma NIST IR 7966 ofrece orientación detallada.
¿Caducan las claves SSH?
No, las claves SSH no tienen una fecha de caducidad integrada como los certificados TLS/SSL. Esta es una de las principales razones por las que la gestión de claves SSH es compleja: las claves persisten indefinidamente, por lo que las antiguas no se rotan, los empleados que se marchan pueden conservar el acceso y los administradores dudan en eliminar claves cuyo propósito se desconoce. Dado que las claves no caducan automáticamente, las organizaciones deben rotarlas y retirarlas activamente mediante un proceso gestionado, en lugar de depender de la caducidad automática.
¿SSH se ve afectado por la computación cuántica?
Sí. SSH depende de algoritmos de clave pública como RSA, ECDSA y Diffie-Hellman para el intercambio de claves y la autenticación, que una futura computadora cuántica podría vulnerar. El ecosistema SSH ya se está adaptando: las versiones recientes de OpenSSH utilizan por defecto un intercambio de claves híbrido postcuántico que combina un algoritmo clásico con el algoritmo ML-KEM estandarizado por el NIST. Dado que los ataques de captura de datos pueden interceptar el tráfico hoy para descifrarlo posteriormente, este cambio ya está en marcha, y una gestión adecuada de las claves SSH facilita la adopción de algoritmos postcuánticos.
Controla tus claves SSH
Las claves SSH sin control son una de las vías de acceso más fáciles a sistemas críticos. Un ciclo de vida gestionado elimina esta vulnerabilidad. Descubra los Servicios de Asesoramiento en Cifrado de Encryption Consulting para evaluar y desarrollar su programa de gestión de claves SSH, con SSH Secure para automatizar el ciclo de vida a gran escala.
