Cómo extraer la clave SFTP SSH de la caché de claves en el cliente FTP FileZilla

StackOverflow https://stackoverflow.com/questions/44089

  •  09-06-2019
  •  | 
  •  

Pregunta

Me conecté a un servidor a través de SFTP usando FileZilla y acepté agregar la clave SSH del servidor al caché de claves en FileZilla.

¿Cómo puedo extraer esta clave almacenada en caché a un archivo de claves para poder usarla a través de otras aplicaciones SFTP que requieren que un archivo de claves esté disponible?

No he podido encontrar nada en la documentación de FileZilla relacionado con esto.

¿Fue útil?

Solución

Si utiliza el cliente de consola openssh estándar (cygwin o de Linux), las claves de host se almacenan, una por línea, en ~/.ssh/known_hosts.A partir de ahí, es sencillo determinar qué parte de esa clave de host se necesita para su biblioteca.

Putty también almacena claves de host, pero parece codificarlas en hexadecimal.Estos se pueden encontrar en HKCUR\Software\SimonTatham\PuTTY\SshHostKeys

Otros consejos

Tomás tenía razón.FileZilla aprovecha el programa PSFTP de PuTTY y almacena las claves guardadas codificadas en formato hexadecimal en la clave de registro que enumeró (HKCUR\Software\SimonTatham\PuTTY\SshHostKeys).Necesitaba la clave en formatoknown_hosts, por lo que pude instalar un versión de windows de openssh siguiendo su recomendación y usé la herramienta ssh-keyscan para acceder al servidor y guardar la información clave en el formato correcto:

ssh-keyscan -t rsa <my_ftp_ip_address> > c:\known_hosts
ssh-keyscan -t dsa <my_ftp_ip_address> > c:\known_hosts

¡Gracias Thomas y SO!

¡Gracias Dougman por el consejo!

Para ayudar aún más a los recién llegados a leer su respuesta.
Antes de ejecutar ssh-keyscan, asumiendo que openssh está instalado de forma predeterminada, hay algunos comandos que deben ejecutarse (lea el inicio rápido/instalación Léame para obtener más detalles).
Aquí están mis comandos que me permiten obtener la clave de host.

C:\Program Files\OpenSSH\bin>mkgroup -l >> ..\etc\group
C:\Program Files\OpenSSH\bin>mkpasswd -l >> ..\etc\passwd
C:\Program Files\OpenSSH\bin>net start opensshd
The OpenSSH Server service is starting.
The OpenSSH Server service was started successfully.
C:\Program Files\OpenSSH\bin>ssh-keyscan -t rsa vivo.sg.m.com > c:\known_hosts
vivo.sg.m.com SSH-2.0-Sun_SSH_1.1

Si prefiere usar una GUI, puede obtener la clave de host desde la ventana de registro o la ventana emergente de conexión por primera vez usando el cliente FTP WinSCP: https://winscp.net/eng/docs/ssh_verifying_the_host_key

A menos que te esté entendiendo mal:no es necesario.

Si se conecta al servidor con otra aplicación (es decir:PuTTY) y no ha visto el servidor antes, se le pedirá que acepte la clave.

Entiendo por qué es posible que quieras hacer esto, pero cada aplicación podría tener su propia forma de almacenar claves.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top