Para entrar en un servidor Linux desde una terminal no se usa una contraseña sino una clave SSH: un fichero que tienes en tu ordenador y que la máquina reconoce. Es más seguro que una contraseña, y por eso mismo, cuando se pierde el fichero, no hay "¿olvidaste tu contraseña?". Formateaste el portátil, el técnico que la tenía ya no está, el fichero se quedó en un disco viejo: la máquina sigue funcionando pero nadie puede entrar.
La buena noticia es que en Lightsail casi nunca es grave, porque la consola de Lightsail puede abrir una terminal en la máquina sin tu clave. Desde ahí se pone una clave nueva. Y si ni eso funciona, la instantánea lo salva.
Antes de empezar: qué significa cada cosa
- SSH
- La forma de dar órdenes a un servidor Linux escribiendo comandos desde otro ordenador, de manera cifrada.
- Clave SSH (par de claves)
- Dos ficheros que van juntos: la clave privada, que guardas tú y nunca compartes, y la pública, que se deja en el servidor. El servidor te deja entrar si tienes la privada que corresponde a la pública que él conoce.
- Clave predeterminada de Lightsail
- Cuando creas una máquina sin más, Lightsail usa una clave suya por región, que puedes descargar desde tu cuenta en cualquier momento.
- Terminal del navegador
- El botón "Conectar mediante SSH" de la consola de Lightsail. Abre una terminal en la máquina usando una clave temporal que gestiona Amazon, sin necesitar la tuya.
- authorized_keys
- El fichero, dentro de la máquina, donde están las claves públicas autorizadas a entrar. Añadir una línea ahí es añadir una clave.
- Instantánea
- Una copia completa de la máquina. Al crear una máquina nueva desde ella puedes elegir una clave SSH distinta.
Paso a paso
Comprueba si la máquina usa la clave predeterminada
En la consola de Lightsail, abre la máquina. En la pestaña Conectar dice qué clave usa: si pone "clave predeterminada" de tu región, estás de suerte: ve al menú de tu cuenta (arriba a la derecha), Cuenta, pestaña Claves SSH, y descarga la clave predeterminada de esa región. Con ese fichero ya puedes entrar como siempre. Si la máquina usaba una clave que subiste tú o creaste con nombre propio, sigue leyendo.
Entra con la terminal del navegador
Pulsa el botón Conectar mediante SSH de la máquina. Se abre una terminal en una ventana del navegador, ya dentro de la máquina, sin pedirte nada: Lightsail usa para esto una clave temporal propia. Si se abre, el problema está resuelto a medias; ahora pondrás una clave tuya para volver a entrar desde tu ordenador.
Crea una clave nueva en tu ordenador
En Windows (PowerShell), Mac o Linux, escribe en una terminal de tu ordenador:
ssh-keygen -t ed25519 -f ~/.ssh/lightsail-nuevaTe pide una contraseña para proteger la clave (recomendable). Crea dos ficheros:
lightsail-nueva(privada, no la compartas) ylightsail-nueva.pub(pública). Abre el.pubcon un editor de texto y copia su única línea, que empieza porssh-ed25519.Añade la clave pública en la máquina
Vuelve a la terminal del navegador y escribe, pegando tu línea entre las comillas:
echo "ssh-ed25519 AAAA...tu-clave... comentario" >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keysEl pegado en la terminal del navegador se hace con el icono del portapapeles de la propia ventana (pulsar Ctrl+V no siempre funciona ahí). Comprueba con
tail -1 ~/.ssh/authorized_keysque la línea ha quedado entera.Prueba desde tu ordenador
Desde la terminal de tu ordenador:
ssh -i ~/.ssh/lightsail-nueva bitnami@IP-de-la-maquinaEl usuario es
bitnamien las plantillas de aplicaciones,ubuntuen Ubuntu,ec2-useren Amazon Linux oadminen Debian. Si entras, guarda la clave privada en un sitio seguro (un gestor de contraseñas admite ficheros) y, esta vez, apunta dónde está.Si la terminal del navegador tampoco entra: instantánea
A veces un cortafuegos interno de la máquina o una configuración de SSH rota impiden incluso la terminal del navegador. Entonces: pestaña Instantáneas, crea una (o usa la automática más reciente), y desde ella Crear nueva instancia. En el formulario de creación, en el apartado de clave SSH, elige la predeterminada o una nueva. La máquina nueva es una copia exacta con una clave que sí tienes. Mueve la IP estática a la nueva (guía en esta sección) y borra la vieja cuando compruebes que todo va bien.
Qué puede salir mal
La terminal del navegador dice que no puede conectar
Casi siempre es que el cortafuegos interno de la máquina (ufw, firewalld) no deja pasar, o que al restringir el puerto 22 a tu IP en Lightsail se desmarcó "Permitir SSH desde el navegador de Lightsail". Revisa esa casilla en la pestaña Redes. Si es el cortafuegos interno, solo queda la vía de la instantánea.
Entro con la clave nueva pero me pide contraseña
Está pidiendo la contraseña de la clave, la que pusiste en ssh-keygen, no la de la máquina. Es normal. Si no pusiste ninguna y aun así pide contraseña, el servidor no ha reconocido la clave: revisa que la línea en authorized_keys está completa y que los permisos son 600.
El que tenía la clave ya no trabaja aquí
Además de añadir la tuya, borra la suya de authorized_keys (es una línea; su comentario final suele decir de quién es). Y revisa si también tenía acceso a la consola de AWS.
He perdido la clave de muchas máquinas a la vez
Repite el proceso en cada una desde la terminal del navegador. Si son muchas, es el momento de plantearse una forma centralizada de entrar que no dependa de ficheros en portátiles.
En Simplio
En Simplio nadie guarda ficheros de clave: la terminal en el navegador se abre con un botón desde la propia máquina, pidiendo el código del doble factor, y usa la misma clave temporal de unos minutos que utiliza la consola de Lightsail. El administrador decide qué personas pueden abrirla y en qué máquinas, y cada apertura queda registrada con usuario, máquina, fecha e IP. Si una persona deja la empresa, se le quita el acceso con una casilla, en todas las máquinas a la vez.
Lo mismo, en AWS y en Simplio
| En la consola de AWS | En Simplio | |
|---|---|---|
| Volver a entrar | Consola de Lightsail, terminal del navegador, generar clave, pegarla, probar: 6 pasos, 15 minutos y conocimientos de terminal | Botón "Terminal" en la máquina, con doble factor: 10 segundos, sin ficheros de clave |
| Dar acceso a otra persona | Repetir los pasos 3 a 5 con su clave | Marcar la acción "terminal" y la máquina en su usuario |
| Quitarle el acceso | Entrar y borrar su línea de authorized_keys en cada máquina | Desmarcar la casilla; queda en el registro de actividad |