He encontrado que ssh-keygen
(paquete “ssh”) produce diferentes claves de puttygen
(paquete de "masilla").
Si creo claves públicas y privadas con ssh-keygen
algunos servidores SSH no aceptarán mis claves. Si creo claves con puttygen
solo un servidor lo acepta.
¿Por qué los repositorios de Linux no proponen alguna solución (paquete) común para él?
Encontré otro paquete ssh-3.2.9.1 que crea claves que funcionan con PuTTY. Pero, ¿por qué no hay ninguna solución práctica en SSH?
Respuesta aceptada:
OpenSSH es la implementación estándar de facto del protocolo SSH. Si PuTTY y OpenSSH difieren, PuTTY es el que es incompatible.
Si genera una clave con OpenSSH usando ssh-keygen
con las opciones predeterminadas, funcionará con prácticamente todos los servidores que existen. Un servidor que no acepte dicha clave sería antiguo, usaría una implementación diferente de SSH o estaría configurado de una manera extraña y restrictiva. Es posible que algunos servidores no admitan claves de un tipo no predeterminado. En particular, las claves ECDSA hacen que el establecimiento de la sesión sea un poco más rápido, pero solo son compatibles con versiones recientes de OpenSSH.
PuTTY utiliza un formato de archivo de clave diferente. Viene con herramientas para convertir entre sus propios .ppk
y el formato de OpenSSH.
Este ssh-3.2.9.1 que encontró es un producto comercial que tiene su propio formato de clave privada diferente. No hay ninguna razón para usarlo en lugar de OpenSSH. Solo puede ser menos compatible, requiere pagar y no hay tutoriales sobre cómo usarlo.