SSH

Para crear un par de claves SSH y configurar tu servidor para permitir el acceso sin contraseña, sigue estos pasos:
1. Generar el par de claves SSH (equipo local)
Ejecuta el siguiente comando para generar una clave RSA (recomendado usar ed25519 si tu servidor lo soporta):
ssh-keygen -t ed25519 -C "tu_email@ejemplo.com"
-
Te preguntará dónde guardar la clave (presiona
Enterpara la ubicación predeterminada:~/.ssh/id_ed25519 -
Si quieres, puedes añadir una frase de contraseña (opcional, pero recomendada para mayor seguridad).
2. Copiar la clave pública al servidor
Usa ssh-copy-id para copiar automáticamente tu clave pública al servidor:
ssh-copy-id usuario@tuserver.com
Si ssh-copy-id no está disponible, puedes hacerlo manualmente:
cat ~/.ssh/id_ed25519.pub | ssh usuario@tuserver.com "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
3. Verificar el acceso sin contraseña
Intenta conectarte al servidor:
ssh usuario@tuserver.com
4. (Opcional) Deshabilitar el acceso por contraseña
Para mayor seguridad, en el servidor (/etc/ssh/sshd_config), configura:
PasswordAuthentication no
ChallengeResponseAuthentication no
Luego reinicia el servicio SSH:
sudo systemctl restart sshd
Pasos para configurar múltiples claves SSH
1. Genera claves adicionales
Ejecuta ssh-keygen para cada nueva clave, dándoles nombres distintos:
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_servidor1 -C "clave_para_servidor1" ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_servidor2 -C "clave_para_servidor2"
-
-fespecifica el nombre del archivo (ejemplo:~/.ssh/nombre_clave). -
-Ces un comentario (opcional, pero útil para identificar la clave).
2. Copia las claves públicas a los servidores
Usa ssh-copy-id con la opción -i para especificar la clave pública:
ssh-copy-id -i ~/.ssh/id_ed25519_servidor1.pub usuario@servidor1.com
ssh-copy-id -i ~/.ssh/id_rsa_servidor2.pub usuario@servidor2.com
Si no tienes ssh-copy-id, copia manualmente el contenido de .pub al ~/.ssh/authorized_keys del servidor.