Para conectarte a un servidor remoto SSH desde otro sistema Linux sin necesidad de ingresar una contraseña, incluso si el servidor remoto utiliza un puerto no estándar, puedes seguir estos pasos:
Genera un par de claves SSH en tu máquina local (si aún no lo has hecho):
ssh-keygen -t rsa
Este comando generará un par de claves pública y privada en tu directorio ~/.ssh por defecto. Puedes presionar Enter para aceptar las ubicaciones y establecer una contraseña opcional para proteger tu clave privada.
Copia tu clave pública al servidor remoto:
Utiliza el comando ssh-copy-id especificando el puerto en el caso de que no sea estándar (en este caso usamos el ejemplo, 2121) y la dirección del servidor remoto:
ssh-copy-id -p 2121 usuario@servidor_remoto
Esto copiará tu clave pública al archivo ~/.ssh/authorized_keys en el servidor remoto. Si ssh-copy-id no está disponible en tu sistema, puedes copiar manualmente el contenido de tu clave pública al archivo ~/.ssh/authorized_keys en el servidor remoto.
Inicia sesión en el servidor remoto sin contraseña:
Después de copiar la clave pública, deberías poder iniciar sesión en el servidor remoto sin ingresar una contraseña:
ssh -p 2121 usuario@servidor_remoto
Deberías poder iniciar sesión sin ser solicitado para una contraseña, utilizando el puerto 2121 especificado.
Recuerda mantener seguras tus claves privadas y proteger tu acceso a los sistemas remotos mediante la autenticación basada en claves SSH.