OPCIÓN #1: Con programa/comando sshpass
1. Validar que el programa "sshpass" esté instalado:
# aptitude search sshpass
2. Si el programa no se encuentra instalado, procedemos a instalarlo:
# apt-get install sshpass
Para probar podemos ejecutar lo siguiente:
1.
# sshpass -p "clave" ssh usuario@IP_Remota (Con este comando ejecutamos una conexión ssh sin que nos solicite vía prompt, el password).
2.
# sshpass -p "clave*" scp archivo-local usuario@IP_Remota:/ruta/remota/
(Con este comando ejecutamos una conexión ssh sin que nos solicite vía prompt, el password).
OPCIÓN #1: Con llaves de autenticación.
Configuración:
En el equipo "cliente" (servidor del cual deseamos conectarnos vía ssh o transferir algún archivo usando el comando scp a otro servidor, ejecutamos:
# cd /home/usuario (nos colocamos en la carpeta home del usuario del equipo cliente con el cual deseamos hacer el ssh o scp al servidor remoto). Si no tenemos el usuario, lo creamos con el comando adduser usuario y seteamos el password con passwd usuario.
Generamos la llave de autenticación:
# ssh-keygen -b 2048 -t rsa
Opciones:
-b Especifica el número de bits de la llave a crear. Utilizamos 2048 en este ejemplo.
-t Especifica el tipo de llave a crear (rsa, rsa1, dsa, ecdsa). Utilizamos rsa en este ejemplo.
Al finalizar el procedimiento, se generarán 2 archivos:
/root/.ssh/id_rsa (Clave privada para el sistema RSA).
/root/.ssh/id_rsa.pub (Clave pública para el sistema RSA).
Luego, copiamos la clave pública generada en este equipo "cliente", al servidor remoto:
# scp .ssh/id_rsa.pub frankcho@192.168.31.9:/home/frankcho/.ssh/llave_rsa8-191
# cd /home/frankcho/.ssh/ (Vamos al directorio donde colocamos la llave desde el equipo cliente.
# cat llave_rsa8-191 >> authorized_keys (Copiamos el contenido de la llave generadara al archivo authorized_keys. Este archivo se creará si no existe; si existe, colocará al final del archivo el nuevo contenido.
Con el comando head authorized_keys podemos ver parte del archivo
NOTA: Si luego de seguido estos pasos el "cliente" todavía pide el password, cambiar los permisos del archivo "authorized_keys". Al finalizar, intentar nuevamente el scp sin password.
[remotebackup@srbuf01bdcan01 .ssh]$ cd /home/remotebackup/.ssh/
[remotebackup@srbuf01bdcan01 .ssh]$ chmod 600 authorized_keys
[remotebackup@srbuf01bdcan01 .ssh]$ ls -la authorized_keys
-rw-------. 1 remotebackup remotebackup 400 sep 3 11:04 authorized_keys