Este tipo de cosas me vuelve loco: con suerte, soluciones obvias. Tengo claves en una computadora portátil Win 10 y en uno de mis servidores Linux. Si uso PuTTY, donde puedo buscar explícitamente el archivo de claves en la computadora portátil, funciona perfectamente.
Pero no tuve ninguna suerte al usar ssh de CL con intercambio de claves. Y aquí es donde estoy estancado...
1\ Servidor Linux que utiliza un puerto no estándar (digamos, 1234). Supongamos que el nombre de usuario en el servidor Linux es bob.
2\ si uso autenticación de contraseña simple y no intercambio de claves, entonces
ssh -p 1234 [email protected]
funciona perfectamente.
3\ pero, si intento realizar ssh desde la línea de comando, apuntando al archivo de claves, no tengo tanta suerte. El directorio de usuarios de la computadora portátil tiene un espacio (por ejemplo, c:\users\Bob Jones...), que podría ser parte del problema (o no). El ppk (al que llamaré server.ppk) está en c:\users\Bob Jones.ssh
Entonces, en teoría, lo siguiente debería funcionar (nuevamente, en teoría...)
ssh -i "C:\Users\Bob Jones/.ssh/server" [email protected] -p 1234
Pero... no hubo suerte. Lo anterior (y las diversas permutaciones que he probado) arroja errores como:
Warning: Identity file C:\Users\Bob Jones/.ssh/server' not accessible: No such file or directory.
[email protected]: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
Entonces, ¿qué cosa obvia me estoy perdiendo? Keyfile está ahí y funciona.perfectamenteusando puTTY, donde puedo usar la GUI para señalar explícitamente la clave. Pero me joderé si puedo descubrir cómo hacer que todo funcione usando CL.
Gracias de antemano...
Respuesta1
¿Windows entiende "C:\Users\Bob Jones/.ssh/server" frente a "C:\Users\Bob Jones.ssh\server.ppk"?