Recopile los detalles de acceso y la ruta de recuperación
Necesita la dirección real del servidor, el puerto SSH, el nombre de usuario de inicio de sesión, el método de autenticación inicial y una fuente confiable para la huella de la clave de host del servidor. Un nombre de host elegido en un configurador no establece DNS ni crea una cuenta. Obtenga estos detalles de la configuración real del servicio, no de suposiciones sobre una imagen Linux.
Confirme cómo acceder a una consola o entorno de rescate y quién puede recuperar el acceso. Compruebe que puede abrir esa ruta de recuperación ahora; no descubra durante un bloqueo que carece de permiso o credenciales de recuperación. Si no hay disponible una ruta de recuperación independiente, mantenga la configuración de acceso sin cambios hasta que se disponga de una.
Los ejemplos utilizan un terminal cliente Bash en su propio equipo y un servidor Ubuntu/Debian. Sustituya sus datos reales por builder, puerto 22 y 192.0.2.10, que es una dirección de ejemplo reservada. Los comandos son instrucciones para revisar según su entorno; esta guía no se ha conectado ni ha configurado un servidor OffVPS.
Cree una clave de cliente sin reemplazar una existente
Su clave privada permanece en el equipo cliente. La clave pública correspondiente puede instalarse en las claves autorizadas de la cuenta del servidor. Ninguna de las dos es la clave de host del servidor: esa clave separada ayuda a identificar la máquina con la que se está comunicando. Mantenga la clave privada y su frase de contraseña fuera de los mensajes de soporte, repositorios y cargas al servidor.
ssh -V
ls -ld "$HOME/.ssh"
ls "$HOME/.ssh/offvps_first_vps" "$HOME/.ssh/offvps_first_vps.pub"
Inspeccione primero las rutas. Si el directorio SSH no existe, créelo con permiso 700. Si cualquiera de los archivos de clave nombrados ya existe, elija otro nombre o reutilice deliberadamente su clave existente; no la sobrescriba. Genere una clave dedicada con una frase de contraseña:
ssh-keygen -t ed25519 -f "$HOME/.ssh/offvps_first_vps" -C "first-vps"
ssh-keygen -lf "$HOME/.ssh/offvps_first_vps.pub" -E sha256
El segundo comando muestra la huella de la clave pública, no el material de la clave privada. El manual de ssh-keygen documenta los tipos de clave, archivos de salida y huellas. Cuando un dispositivo gestionado requiera una política de claves diferente, siga esa política y verifique la compatibilidad del servidor. Conserve una copia de recuperación debidamente protegida de la clave privada si su plan de recuperación depende de ella.
Verifique el servidor antes de autenticarse
A través de la consola confiable u otro canal de configuración autenticado, obtenga la huella de la clave de host Ed25519 del servidor. En un servidor que utilice la ruta estándar OpenSSH, un administrador puede inspeccionar el archivo público con:
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub -E sha256
Compare la huella completa SHA256 y el algoritmo con el primer mensaje de conexión SSH. Una huella obtenida únicamente a través de la misma conexión de red no verificada no es una verificación independiente. Si el servidor ofrece otro algoritmo de clave de host, obtenga la huella de esa clave en lugar de comparar valores distintos. Guía de verificación de claves de host de OpenSSH explica esta comparación.
Si la clave cambia inesperadamente en una visita posterior, deténgase. Una reconstrucción puede reemplazar legítimamente las claves de host, pero verifique ese evento y la nueva huella a través del canal de recuperación. No silencie la advertencia ni elimine la entrada antigua de hosts conocidos solo para que la conexión se realice correctamente.
Instale solo la clave pública y abra la primera sesión
Si su clave pública ya se instaló a través del proceso de configuración autorizado, conéctese directamente. De lo contrario, utilice el método de acceso verificado existente para agregar la clave pública a la cuenta deseada. En un cliente con ssh-copy-id, y solo cuando ese método de inicio de sesión inicial funcione, este comando añade la clave pública seleccionada:
ssh-copy-id -i "$HOME/.ssh/offvps_first_vps.pub" -p 22 [email protected]
de Ubuntu guía de OpenSSH describe la instalación de clave pública y los requisitos de permisos. No reemplace un authorized_keys archivo completo ni altere las entradas de otro administrador. Luego abra la sesión basada en clave:
ssh -o IdentitiesOnly=yes -i "$HOME/.ssh/offvps_first_vps" \
-p 22 [email protected]
Después de iniciar sesión, verifique id y hostname. Confirme que la cuenta coincide con los detalles de la configuración; un nombre de host por sí solo no es verificación de clave de host. Si sus tareas requieren administración, ejecute sudo -v y establezca que esta cuenta tiene la ruta de privilegios prevista. Mantenga esta primera sesión abierta.
Demuestre un segundo inicio de sesión realmente independiente
Abra otra terminal de cliente y solicite una nueva conexión que no pueda reutilizar un socket de uso compartido de conexiones SSH. Restrinja esta prueba a la autenticación de clave pública para que un respaldo de contraseña no oculte una configuración de clave defectuosa:
ssh -o ControlMaster=no -o ControlPath=none \
-o IdentitiesOnly=yes -o PreferredAuthentications=publickey \
-i "$HOME/.ssh/offvps_first_vps" -p 22 [email protected]
Comprobación id, hostname y, cuando sea necesario, sudo -v en esta segunda sesión también. Una nueva terminal por sí sola es insuficiente si el cliente reutiliza una conexión existente. ControlPath=none desactiva ese uso compartido; consulte configuración del cliente OpenSSH. Solo cierre la sesión original después de que esta conexión independiente tenga éxito y la ruta de recuperación siga disponible.
Antes de cualquier cambio de acceso posterior
Para esta primera sesión, deje el puerto SSH, los métodos de autenticación y las reglas de firewall tal como están. Antes de cambiarlos más adelante, guarde la configuración actual y documente cómo restaurarla a través de la consola de confianza. Confirme un inicio de sesión con clave funcional antes de deshabilitar otro método. Mantenga la primera sesión abierta mientras realiza un cambio revisado a la vez.
sudo /usr/sbin/sshd -t
sudo /usr/sbin/sshd -T
En sistemas con esta ruta ejecutable de OpenSSH, -t verifica la sintaxis de configuración y la integridad de la clave de host; -T también informa la configuración efectiva. Las reglas específicas de la conexión Match pueden requerir -C parámetros para la cuenta y la dirección que se están probando. Estas comprobaciones no prueban la accesibilidad del firewall ni demuestran que un nuevo inicio de sesión funcione. Consulte modos de prueba de sshd. Resuelva los errores antes de aplicar o recargar una configuración de servicio, luego repita la comprobación de inicio de sesión independiente.
Use el fallo para elegir la siguiente comprobación
- Tiempo de espera agotado: confirme la dirección, el puerto, las reglas del proveedor y el firewall del host a través de la ruta de recuperación.
- Conexión rechazada: verifique si SSH está escuchando en la dirección y el puerto esperados.
- Permiso denegado: verifique el nombre de usuario, la clave pública seleccionada y los permisos del archivo de claves de la cuenta desde la sesión que sigue abierta.
- Identificación del host cambiada: verifique la máquina y la nueva huella digital de forma independiente antes de continuar.
Registre la huella digital de clave de host verificada, la cuenta, el puerto y el procedimiento de recuperación en sus notas operativas. Mantenga el material de claves en privado. Una vez que el acceso sea repetible, continúe con su primera versión de API o un presupuesto de recursos para la aplicación.
Documentación utilizada
Referencias principales para esta página. Consulta la documentación de la versión instalada en tu propio entorno.