He iniciado sesión en un cuadro de win2008, ejecuto scp
con la opción -i que apunta al directorio donde reside la clave privada en el cuadro de win2008.
scp -i "cygdrive/c/users/userid/privkey..." user@linux:/dirA/dirB/* .
Cuando ejecuto este comando en el cuadro win2008, se registra en el cuadro Linux, coincide con las teclas y envía los archivos al cuadro win2008. Si no especifico la clave, me pide una contraseña.
Generé las claves en el cuadro win2008 usando ssh-keygen. Agregué la clave de Linux en la configuración de winsshd bajo claves públicas. Luego tomé la clave del ssh-keygen y la puse en la caja de Linux.
¿Dónde está buscando la clave el comando scp? ¿Cómo puedo ejecutar scp
desde el cuadro win2008 sin pasar la clave como parámetro?
windows
cygwin
windows-server-2008
scp
Perplejo
fuente
fuente
Respuestas:
Si entiendo su pregunta correctamente, hay un par de opciones ...
establezca la ubicación predeterminada del archivo de identidad de la misma manera que se hace para SSH, como se explica aquí ... https://stackoverflow.com/questions/84096/setting-the-default-ssh-key-location
o alias tu
scp
comando para incluir el modificador así ...alias scp='scp -i /path/of/keyfile'
Ambos deberían funcionar, pero recomiendo la opción 1 sobre la opción 2. Es la forma más correcta de hacerlo.
fuente
Creo que encontré mi propia respuesta. Aparentemente, scp está buscando que el archivo de clave privada se llame id_dsa Y quiere que el archivo esté en el directorio .ssh. Una vez que encontré home / .ssh en la estructura del directorio cygwin (otra pieza clave del rompecabezas) y agregué el archivo de clave privada con el nombre id_dsa y ejecuté el comando scp sin la opción -i funcionó. Gracias a todos por enviarme vibraciones 'inteligentes' en mi camino para poder resolver esto. ¡Ya no estoy perplejo! Me gustan todas las sugerencias hechas aquí. Agradezco los comentarios rápidos.
fuente