Cómo conectarse a tu VPS por SSH: móvil, Windows y Ubuntu
Tutorial completo de conexión SSH a una VPS desde Android, iOS, Windows 10/11 y Ubuntu. Comandos, apps y solución de problemas paso a paso.
Requisitos previos
Una VPS ya provisionada con SSH habilitado en el puerto 22 (predeterminado en cualquier instalación Ubuntu/Debian/AlmaLinux). Los datos de acceso deben haberse enviado por correo electrónico o estar visibles en el panel.
Los tres valores que usarás repetidamente en este tutorial:
203.0.113.10 root 22 Sustituye 203.0.113.10 por la IP real de tu VPS en todos los comandos siguientes. Si configuraste SSH en otro puerto (por seguridad, es habitual moverlo a 2222 o 2200), ajusta el parámetro -p correspondiente.
Conectarse desde el móvil (Android e iOS)
El uso de SSH desde el móvil suele ser para emergencias: la web se cayó mientras estás fuera, necesitas reiniciar un servicio o revisar un log rápido. No es cómodo para trabajo prolongado, pero funciona bien para comandos puntuales.
Android: Termius o Termux
Termius es la opción más sencilla — interfaz gráfica, guarda hosts y claves, sincroniza entre dispositivos. Termux es más técnico: te proporciona un shell Linux real dentro de Android y puedes usar el comando ssh nativo como en cualquier Linux.
Instala Termius desde la Play Store. Abre la app y toca New Host.
Rellena los campos:
- Alias: nombre libre (ej:
mi-vps) - Hostname: la IP de la VPS (203.0.113.10)
- Port: 22
- Username: root
- Password: la contraseña inicial enviada por el panel
Guarda y toca el host creado para conectarte.
Alternativa con Termux: instala Termux desde F-Droid (la versión de la Play Store está desactualizada). Ábrelo y ejecuta:
pkg update && pkg install openssh
ssh [email protected]En la primera conexión el cliente pedirá confirmación de la fingerprint del servidor — escribe yes y a continuación la contraseña.
iOS: Termius o Blink Shell
En iPhone e iPad Termius funciona exactamente igual que en Android — misma interfaz, misma sincronización. Blink Shell es de pago pero más robusto, con soporte a mosh (sesiones resistentes a pérdida de conexión móvil).
Instala Termius desde la App Store. Toca Hosts > + y rellena IP, puerto, usuario y contraseña como en el paso 01. Toca el host para abrir la sesión.
En el primer acceso, la app pregunta si quieres guardar la fingerprint. Acéptala — esto protege contra ataques man-in-the-middle en conexiones futuras.
Después de probar la conexión por contraseña, genera un par de claves dentro de Termius (Keychain > Generate) y copia la clave pública a ~/.ssh/authorized_keys en el servidor. La contraseña en móvil es vulnerable a observadores y al teclado virtual registrando pulsaciones.
Conectarse desde Windows 10 y 11
Desde Windows 10 build 1809, el cliente OpenSSH viene preinstalado y funciona directamente en PowerShell o en CMD — ya no es necesario PuTTY. Si estás en una versión anterior o necesitas gestión gráfica de sesiones, PuTTY sigue siendo una opción válida.
Cliente OpenSSH nativo (recomendado)
Abre PowerShell o Terminal de Windows (Inicio > escribe “powershell”). Ejecuta:
ssh [email protected]Si usas un puerto personalizado:
ssh -p 2222 [email protected]En la primera conexión, confirma la fingerprint con yes e introduce la contraseña cuando se solicite.
Si el comando ssh devuelve “no se reconoce como comando”, el cliente OpenSSH no está instalado. Habilítalo desde PowerShell en modo administrador:
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0Cierra y vuelve a abrir el terminal después de esto.
Alternativa: PuTTY
Descarga PuTTY desde el sitio oficial (putty.org). Abre el instalador y en la pantalla inicial:
- Host Name (or IP address): 203.0.113.10
- Port: 22
- Connection type: SSH
Haz clic en Open. Acepta la fingerprint en la primera conexión. Escribe root cuando pida el login y la contraseña a continuación.
Para guardar la sesión y no tener que volver a escribir la IP cada vez, introduce un nombre en Saved Sessions antes de conectarte y haz clic en Save.
Tanto en OpenSSH como en PuTTY, la contraseña no muestra asteriscos ni caracteres mientras la escribes — es el comportamiento normal de SSH. Escribe con cuidado y pulsa Intro.
Conectarse desde Ubuntu y otras distribuciones Linux
En Linux el cliente SSH forma parte de la instalación estándar en prácticamente toda distribución moderna. No hay nada que instalar.
Abre el terminal (Ctrl + Alt + T en Ubuntu) y ejecuta:
ssh [email protected]Para puerto personalizado:
ssh -p 2222 [email protected]Si el paquete openssh-client por algún motivo no está presente:
sudo apt update
sudo apt install -y openssh-clientGenera un par de claves SSH para eliminar la necesidad de contraseña:
ssh-keygen -t ed25519 -C "mi-portátil"Acepta la ruta predeterminada (~/.ssh/id_ed25519) y opcionalmente define una passphrase. Después copia la clave pública al servidor:
ssh-copy-id [email protected]Introduce la contraseña por última vez. A partir de la siguiente conexión, el login es automático mediante clave.
Para simplificar conexiones frecuentes, edita ~/.ssh/config:
nano ~/.ssh/configAñade:
Host mi-vps
HostName 203.0.113.10
User root
Port 22
IdentityFile ~/.ssh/id_ed25519Ahora te conectas simplemente con ssh mi-vps.
Verificación
Independientemente del dispositivo utilizado, una vez establecida la conexión verás un prompt similar a:
root@hostini-vps:~#
El # al final indica que has iniciado sesión como root. Confirma ejecutando:
whoami
uptime
El primer comando debe devolver root y el segundo muestra cuánto tiempo lleva encendido el servidor, junto con el load average. Si ambos responden, tu conexión SSH está funcionando correctamente.
Solución de problemas
Connection refused
El servicio SSH no está corriendo en el servidor, o un firewall está bloqueando el puerto. Si tienes acceso a la consola del panel de la VPS, ejecuta:
sudo systemctl status ssh
sudo ufw status
Si el servicio está parado: sudo systemctl start ssh. Si el firewall está bloqueando: sudo ufw allow 22/tcp.
Connection timed out
El paquete no está llegando al servidor — generalmente es firewall externo (del proveedor), IP incorrecta, o la VPS está apagada. Confirma la IP en el panel y comprueba que la VPS tiene el estado “encendida”. En redes corporativas, el puerto 22 puede estar bloqueado en salida.
Permission denied (publickey,password)
La contraseña es incorrecta, el usuario no existe, o el servidor exige clave SSH y estás intentando con contraseña. Comprueba las credenciales en el panel. Si configuraste login por clave y deshabilitaste contraseña, necesitas usar el parámetro -i apuntando a la clave privada correcta.
Editar /etc/ssh/sshd_config para cambiar el puerto o deshabilitar la contraseña requiere precaución: mantén siempre una sesión SSH abierta como respaldo al reiniciar el servicio. Si la nueva configuración falla, usas la sesión antigua para deshacer los cambios.
Host key verification failed
La fingerprint del servidor ha cambiado — puede ser una reinstalación legítima de la VPS o un intento de man-in-the-middle. Si sabes que el servidor fue reinstalado, elimina la entrada antigua:
ssh-keygen -R 203.0.113.10
Y conéctate de nuevo aceptando la nueva fingerprint.
Próximos pasos
Una vez que SSH está funcionando, algunos pasos lógicos para reforzar el acceso:
- Crear un usuario no-root con sudo y deshabilitar el login directo como root
- Sustituir la autenticación por contraseña por autenticación exclusivamente mediante clave SSH
- Mover el puerto SSH del 22 a un puerto alto (reduce el ruido de bots)
- Configurar
fail2banpara banear IPs con intentos repetidos - Habilitar autenticación de dos factores mediante Google Authenticator
Si estás provisionando una nueva VPS para ponerla en producción, vale la pena revisar la línea de VPS Hostini — todas incluyen IPv4 dedicada, panel para reinstalar el sistema y consola de emergencia por si te quedas fuera por un error de configuración SSH.
Preguntas frecuentes
¿Puedo usar el mismo par de claves SSH en el móvil, Windows y Ubuntu?
Puedes, pero no es recomendable. La buena práctica es generar un par de claves diferente en cada dispositivo y añadir todas las claves públicas en `~/.ssh/authorized_keys` del servidor. Así, si un dispositivo se pierde o se ve comprometido, revocas solo esa clave sin invalidar los demás accesos.
¿Por qué mi conexión SSH se corta sola después de unos minutos sin actividad?
Los routers y firewalls intermedios eliminan conexiones TCP inactivas. Para resolverlo, añade `ServerAliveInterval 60` en tu `~/.ssh/config` (cliente) o `ClientAliveInterval 60` en `/etc/ssh/sshd_config` (servidor). Esto envía un paquete keep-alive cada 60 segundos.
¿Es seguro acceder por SSH desde el móvil en una red Wi-Fi pública?
Sí, el tráfico SSH está cifrado de extremo a extremo — una red pública no puede leer el contenido de la sesión. El riesgo principal es que alguien te observe escribir la contraseña. Usa autenticación por clave SSH (no contraseña) y activa el bloqueo de pantalla del dispositivo.
¿Cómo copiar archivos de mi VPS a mi ordenador por SSH?
Usa `scp` o `rsync`. Ejemplo: `scp [email protected]:/etc/nginx/nginx.conf ./` descarga el archivo al directorio actual. En Windows, `scp` viene incluido con el OpenSSH nativo. Para una interfaz gráfica, WinSCP es el equivalente de PuTTY para transferencia de archivos.
¿Puedo abrir varias sesiones SSH simultáneas en el mismo servidor?
Sí, `sshd` acepta múltiples conexiones en paralelo por defecto (límite configurable en `MaxSessions` del sshd_config, habitualmente 10). Puedes abrir un terminal para editar archivos, otro para ver logs en tiempo real y otro para ejecutar comandos, todo simultáneamente.
¿Qué hago si olvido la contraseña de root de la VPS?
Accede al panel de control de la hospedaje y usa la opción de consola de emergencia o modo de recuperación. Desde ahí puedes restablecer la contraseña con `passwd root` o montar el sistema de archivos para editar `/etc/shadow`. Algunos proveedores ofrecen restablecimiento de contraseña directamente desde el panel.