¿Es el intercambio de claves Diffie-Hellman la mejor manera de intercambiar de forma segura las claves SSH?

2

Estoy diseñando el mecanismo de comunicación para dispositivos de usuario final que se comunicará con una fila de servidores. Mi plan actual es

  1. en la primera ejecución, un dispositivo generará su propio par de claves SSH (RSA y 4096 bits)
  2. el dispositivo transferirá su ID y clave pública a través de HTTPS (utilizando un certificado válido) a uno de los servidores de registro
  3. una vez confirmado, el dispositivo abre una conexión SSH a un servidor de registro y recibe la clave pública de los servidores

¿Es este un enfoque válido o el uso de "Autenticación de servidor con certificados" (intercambio de claves DH) sería mejor == forma más segura?

    
pregunta 5drive 19.03.2015 - 23:17
fuente

1 respuesta

2

Me parece bien. Tenga en cuenta que, dependiendo de la lista de cifrado que habilite, HTTPS realizará un intercambio de clave DH. Siempre que confíe en la implementación de SSL en el dispositivo y en el servidor, y que audite la lista de confianza del certificado en el dispositivo, la conexión entre el dispositivo puede considerarse segura.

Lo único que me preocupa es que el dispositivo puede abrir un acceso SSH al servidor. Asegurar SSH es muy difícil porque le está dando a las personas un acceso de shell (que incluye, entre otras cosas, la capacidad de transferir y almacenar archivos y ejecutar programas casi arbitrarios). Si no confía plenamente en todas las personas que podrían tener acceso al dispositivo, esto podría ser muy riesgoso para su servidor.

A menos que realmente necesite dar a las personas la capacidad de ejecutar programas arbitrarios, normalmente sería mejor exponer una determinada lista predeterminada de recursos a través de un contenedor de servicios, como HTTPS. Esto le da más control sobre la ejecución de comandos en su servidor.

    
respondido por el Lie Ryan 19.03.2015 - 23:35
fuente

Lea otras preguntas en las etiquetas