Actualmente estoy creando una secuencia de comandos en la que quiero copiar archivos de un servidor a otro usando scp
o sftp
; Lo que me confunde es la autenticación.
Si lo uso scp
, ¿cómo daré la contraseña?
Respuesta1
Para este tipo de uso automatizado, no debería utilizar la autenticación de contraseña, debería utilizar la autenticación basada en claves. Con la conexión basada en claves, la conexión se realizará sin necesidad de solicitar ninguna contraseña.
Debe generar un par de claves en el lado donde está utilizando el cliente SSH y luego copiar su clave pública al servidor SSH. Encontrarás infinitas páginas sobre cómo lograrlo, pero aquí tienes una:
https://www.linode.com/docs/security/authentication/use-public-key-authentication-with-ssh/
Respuesta2
Utilice claves ssh para mayor seguridad
O puedes instalar sshpass y hacer algo como:
sshpass -p "password" scp file.txt user@machine:/path