Scp’s sin contraseña

Para hacer scp’s o ssh’s automatizados sin contraseñas (para los scripts, no seas vago).

Supongamos que tienes un script en la maquina 1 y que quieres dejarlo todas las noches en la maquina 2 por si las moscas…
En la maquina 1 haces ssh-keygen -b 4096 -t rsa desde del Home del usuario en cuestion, esto te crea un fichero id_rsa.pub dentro del directorio .ssh.
Copias el archivo al servidor y lo añades al fichero authorized_keys que esta dentro del home del usuario que vas a utilizar.
Por ejemplo, supongamos que te creas el usuario bckprueba (en la maquina2) asi que, desde la maquina 1 le copias el fichero (scp id_rsa.pub [email protected]:/tmp/). Esta vez si que te va a pedir la contraseña.
Añades el contenido del fichero id_rsa.pub al authorized_keys (cat id_rsa.pub >> /home/bckprueba/.ssh/authorized_keys) y ya esta, ahora puedes hacer ssh desde un script tonto del estilo..

#!/bin/bash
FECHA=$(date)
iptables-save > /backups/bck_iptables`date «+%d%m%Y»`
scp /backups/bck_iptables`date «+%d%m%Y»` [email protected]:/backups/

Ojo que… el directorio .ssh tiene que existir en la maquina 2, ademas tiene que tener 600.
Comprueba que tienes habilitada la directiva AuthorizedKeysFile .ssh/authorized_keys dentro de /etc/ssh/sshd_config (en el servidor).

Esto es comodo, pero es un peligro, ojito con autorizar el acceso sin contraseña a tus maquinas, ojito con los permisos de esos usuarios…