Instala Tailscale en tu VPS y en tu ordenador para entrar por SSH sin abrir ningún puerto público, con el tráfico cifrado de extremo a extremo.
Tailscale crea una red privada (un «tailnet») entre tus dispositivos y tu VPS. El tráfico viaja cifrado directamente de un equipo a otro, así que tu VPS no necesita tener ningún puerto abierto al público para que entres por SSH. El plan gratuito cubre de sobra el uso personal con varios dispositivos.
Antes de empezar
- Una cuenta de Tailscale (gratuita) y acceso root a tu VPS, por SSH o por la consola VNC del panel (Cómo entrar al panel de tu VPS desde el área de cliente, Copias de seguridad, instantáneas y clave SSH en tu VPS).
- No cierres el puerto 22 público todavía: se hace al final, y solo después de comprobar que la conexión por Tailscale funciona.
Paso a paso
- Instala Tailscale en el VPS:
curl -fsSL https://tailscale.com/install.sh | sh. - Arranca el servicio con
sudo tailscale up. El comando imprime una URL: ábrela en tu navegador e inicia sesión para autorizar la máquina. - Anota la IP del tailnet con
tailscale ip -4; tiene la forma100.x.y.z. - Instala Tailscale en tu ordenador o tu móvil desde
https://tailscale.com/download(hay versión para Windows, Mac, Linux y móvil) e inicia sesión con la misma cuenta. - Conecta por SSH como siempre:
ssh root@100.x.y.z, con la IP del tailnet que anotaste (o el nombre de la máquina, si usas MagicDNS). No hace falta activar nada más: es el mismo SSH del VPS, solo que el tráfico va por el tailnet en vez de por la red pública. - Opcional: Tailscale ofrece también un modo Tailscale SSH (
tailscale set --ssh), que autentica con la identidad del tailnet en vez de una clave o una contraseña; es un añadido, no un paso necesario para que esto funcione.
Antes de cerrar el puerto público
Verifica desde una segunda terminal, con otra conexión a internet si puedes, que ssh root@100.x.y.z funciona bien. Solo entonces reduce el acceso por la IP pública. Como ejemplo, en Ubuntu con ufw: sudo ufw allow in on tailscale0 y mantén sudo ufw allow 22/tcp hasta terminar de comprobarlo, antes de retirarla. Si el cortafuegos te deja fuera, la consola VNC del panel no pasa por la red y es tu vuelta atrás (Cómo usar la consola VNC y el modo rescate de tu VPS).
Cómo comprobar que ha funcionado
tailscale status, tanto en el VPS como en tu ordenador, tiene que mostrar las dos máquinas conectadas. Y ssh root@100.x.y.z tiene que abrir sesión usando esa IP del tailnet, no la pública.
Si algo falla
- El VPS no aparece en tu tailnet: no se inició sesión o
sudo tailscale upno llegó a ejecutarse; repítelo y abre la URL que te da. - La conexión SSH se rechaza igual que antes: no es cosa de Tailscale, es la clave o la contraseña de siempre (Copias de seguridad, instantáneas y clave SSH en tu VPS).
- Te has quedado fuera después de tocar el cortafuegos: entra por la consola VNC del panel (Cómo usar la consola VNC y el modo rescate de tu VPS) y revierte el cambio.
- Cualquier otra cosa: abre un ticket desde tu área de cliente.