1. Clave ssh
1.1 Creación de una clave ssh para conectarnos al servidor remoto
Primeramente crearemos una carpeta (aunque no esnecesario). Utilizaremsos el tipo ed25519.
Se le dará el nombre que queramos en este caso "srv01_ssh_key" y opcionalmente se puede añadir un comentario que se añadirá dicho comentario al final en el fichero de la clave pública. El comentario es: "Clave Srv01"
mkdir -p /home/myuser/keys ssh-keygen -t ed25519 -f /home/myuser/keys/srv01_ssh_key -C "Clave Srv01"
Se creará una clave privada (srv01_ssh_key) y una clave pública (srv01_ssh_key.pub). Hay que tener cuidado de no compartir la clave privada.
Durante el proceso te pide una contraseña, que debes guardar
1.2. Uso de la clave ssh
Cada vez que ejecutemos un comando por ejemplo
ssh -i /home/myuser/keys/srv01_ssh_key usuario@servidor.com
Nos pedirá la contraseña.
Si queremos conservar la contraseña en memoria en cada conexión :
eval "$(ssh-agent -s)" ssh-add /home/myuser/keys/srv01_ssh_key
1.3. Copiar la clave pública al servidor remoto
Se puede copiar utilizando ssh-copy-id o cat + ssh
# Si se dispone de ssh-copu-id ssh-copy-id -i /home/myuser/keys/srv01_ssh_key usuario_remoto@IP_REMOTA #Sinó cat /home/myuser/keys/srv01_ssh_key | ssh usuario_remoto@IP_REMOTA "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
1.4. Ejecutar en el servidor remoto
# 1. ssh ssh -i /home/myuser/keys/srv01_ssh_key usuario_remoto@IP_REMOTA # 2. scp scp -i /home/myuser/keys/srv01_ssh_key archivo usuario_remoto@IP_REMOTA:/ruta/ # 3. rsync rsync -e "ssh -i /home/myuser/keys/srv01_ssh_key" ...
1.5. Configurar ~/.ssh/config con alias y ruta de la clave par acceder al servidor remoto
# Read more about SSH config files: https://linux.die.net/man/5/ssh_config # Servidor GLI i ara té la web de l'Ajuntament Host srv01 HostName IP_REMOTA User usuario_remoto IdentityFile /home/myuser/keys/srv01_ssh_key IdentitiesOnly yes Port 22