Cómo conectar a tu servidor por SSH desde Windows
¿Qué es SSH y por qué necesitas saber conectarte?
SSH (Secure Shell) es el protocolo estándar para administrar servidores Linux de forma remota y segura. Piénsalo como una llave maestra que te da acceso total a la terminal de tu servidor, sin importar si está en el otro lado del mundo.
Con acceso ssh windows puedes ejecutar comandos, instalar software, configurar servicios y gestionar archivos como si estuvieras sentado frente al equipo. Es la herramienta básica de cualquier administrador de sistemas, desarrollador o persona que tenga un VPS o servidor dedicado.
Si tienes un ssh servidor linux, necesitas sí o sí saber conectarte desde tu PC con Windows. Antes esto era complicado, pero hoy existen varias formas sencillas de hacerlo. En esta guía te enseñaré los métodos más prácticos, paso a paso y sin tecnicismos innecesarios.
Requisitos previos antes de empezar
Antes de lanzarte a conectar ssh windows, asegúrate de tener lo siguiente:
-
Datos de acceso al servidor: IP pública (ej. 192.168.1.100 o dominio como midominio.com), puerto SSH (normalmente 22), usuario (normalmente root o un usuario con permisos) y contraseña o clave privada.
-
Servidor Linux activo: Con el servicio SSH corriendo (casi todas las distribuciones lo traen por defecto).
-
Windows 10 u 11: Funciona mejor, aunque los métodos funcionan en versiones anteriores.
-
Conexión a internet estable: Aunque parezca obvio, una mala conexión puede cortar tus sesiones.
-
Conocimientos básicos de Linux: No necesitas ser experto, pero saber comandos como
ls,cd,nanooaptte ayudará muchísimo.
Método 1: SSH integrado en Windows Terminal (el más fácil)
Desde Windows 10 (versión 1803 en adelante), Microsoft incluye un cliente SSH nativo. No necesitas instalar nada extra.
Paso 1: Abre la terminal
Pulsa Windows + R, escribe cmd y presiona Enter. O mejor aún, abre PowerShell o Windows Terminal (si lo tienes instalado desde la Microsoft Store).
Paso 2: Ejecuta el comando SSH
Escribe lo siguiente y presiona Enter:
ssh usuario@ip-del-servidor
Por ejemplo:
ssh root@192.168.1.100
Si tu servidor usa un puerto distinto al 22, usa -p:
ssh -p 2222 usuario@ip-del-servidor
Paso 3: Acepta la huella del servidor
La primera vez, Windows te preguntará si confías en el servidor. Escribe yes y presiona Enter.
Paso 4: Introduce tu contraseña
Escribe la contraseña (no verás caracteres mientras escribes, es normal) y presiona Enter.
¡Listo! Ya estás dentro de tu servidor Linux. Verás un prompt tipo root@servidor:~#.
Método 2: ssh puTTY (el clásico de toda la vida)
PuTTY es el cliente SSH más conocido para Windows. Es ligero, portable y funciona en cualquier versión de Windows.
Paso 1: Descarga e instala PuTTY
Ve a la página oficial de PuTTY y descarga el instalador .msi de 64 bits (o 32 si tu sistema es antiguo). Instálalo como cualquier programa.
Paso 2: Configura la conexión
Abre PuTTY. Verás una pantalla con varios campos:
-
Host Name: Escribe la IP o dominio de tu servidor.
-
Port: 22 (o el puerto personalizado que uses).
-
Connection type: Selecciona SSH.
Guarda la sesión para no repetir esto cada vez: escribe un nombre en "Saved Sessions" y pulsa "Save".
Paso 3: Conecta
Pulsa "Open". Se abrirá una ventana negra. La primera vez, PuTTY te avisará sobre la clave del servidor. Acepta con "Accept" o "Yes".
Paso 4: Inicia sesión
Escribe tu usuario, presiona Enter, luego tu contraseña y listo.
[TIP]: PuTTY te permite guardar las credenciales, pero es más seguro usar claves SSH. Te lo explico más adelante.
Método 3: Usar claves SSH en lugar de contraseñas (recomendado)
Las contraseñas son fáciles de adivinar o interceptar. Las claves SSH son mucho más seguras. Te explico cómo configurarlas desde Windows.
Paso 1: Genera tu par de claves
Abre PowerShell o CMD y ejecuta:
ssh-keygen -t rsa -b 4096
Te preguntará dónde guardar la clave (por defecto C:\Users\tu-usuario\.ssh\id_rsa) y si quieres una frase de contraseña (opcional pero recomendada).
Paso 2: Copia tu clave pública al servidor
Puedes hacerlo de dos formas:
Opción A (con ssh-copy-id): Si tienes Git Bash o WSL instalado, usa:
ssh-copy-id usuario@ip-del-servidor
Opción B (manual): Copia el contenido de tu clave pública con:
cat ~/.ssh/id_rsa.pub
Luego conéctate al servidor con tu contraseña y añade la clave al archivo ~/.ssh/authorized_keys:
mkdir -p ~/.ssh
echo "tu-clave-publica-aqui" >> ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Paso 3: Conéctate sin contraseña
Ahora podrás conectarte con ssh usuario@ip y no te pedirá contraseña (solo la frase si la pusiste).
[WARNING]: Nunca compartas tu clave privada (id_rsa). Solo la pública va al servidor.
Método 4: Usar WSL (Subsistema de Windows para Linux)
Si quieres una experiencia 100% Linux en Windows, instala WSL. Es como tener una terminal Linux real dentro de Windows.
Paso 1: Instala WSL
Abre PowerShell como administrador y ejecuta:
wsl --install
Reinicia tu PC cuando termine.
Paso 2: Elige tu distribución
Al reiniciar, se instalará Ubuntu por defecto. Puedes cambiar con wsl --list --online y wsl --install -d <distro>.
Paso 3: Abre tu terminal Linux
Busca "Ubuntu" en el menú inicio y ábrelo. Tendrás una terminal Linux completa.
Paso 4: Conéctate por SSH
Ahora usa el comando SSH como en cualquier Linux:
ssh usuario@ip-del-servidor
Todo funciona igual que en un Linux nativo. Puedes usar ssh-copy-id, claves, etc.
Método 5: Conectar desde Visual Studio Code (para desarrolladores)
Si eres desarrollador, VS Code tiene una extensión llamada "Remote - SSH" que te permite editar archivos y ejecutar comandos en tu servidor desde el editor.
Paso 1: Instala la extensión
Abre VS Code, ve a la pestaña de extensiones (Ctrl+Shift+X) y busca "Remote - SSH". Instala la oficial de Microsoft.
Paso 2: Conecta
Pulsa F1, escribe "Remote-SSH: Connect to Host" y elige tu servidor (te pedirá usuario e IP).
Paso 3: Trabaja en remoto
Se abrirá una nueva ventana de VS Code conectada a tu servidor. Puedes explorar archivos, abrir terminal integrada y editar como si fuera local.
Solución de problemas comunes al conectar SSH
Error "Connection refused"
-
Verifica que el servicio SSH esté activo:
systemctl status sshd(en Debian/Ubuntu) oservice sshd status(en CentOS). -
Comprueba que el puerto no esté bloqueado por el firewall:
sudo ufw allow 22/tcposudo firewall-cmd --add-port=22/tcp --permanent.
Error "Permission denied (publickey,password)"
-
Asegúrate de que el usuario existe en el servidor.
-
Si usas claves, verifica que la pública esté bien en
authorized_keys. -
Revisa que
PasswordAuthenticationesté enyesen/etc/ssh/sshd_configsi quieres usar contraseñas.
Tiempo de espera agotado (timeout)
-
El servidor puede tener un firewall externo (hosting) que bloquea el puerto.
-
Prueba desde otra red o con
pingpara ver si responde.
PuTTY se cierra al instante
- Suele ser por un problema de configuración de puerto o protocolo. Revisa que el puerto sea SSH (22) y no Telnet (23).
Preguntas frecuentes (FAQ)
¿Puedo conectar SSH a un servidor Windows?
Sí, pero es menos común. Windows Server tiene OpenSSH integrado desde 2018. Los pasos son similares.
¿Es seguro usar SSH con contraseña?
Es mejor que nada, pero las claves SSH son mucho más seguras. Usa contraseñas largas y cambia el puerto por defecto si es posible.
¿Cómo cambio el puerto SSH de mi servidor?
Edita /etc/ssh/sshd_config y cambia la línea Port 22 por otro número (ej. Port 2222). Reinicia el servicio y usa el nuevo puerto al conectar.
¿Qué hago si olvidé mi contraseña SSH?
Necesitas acceso físico o al panel de tu proveedor de hosting. Muchos ofrecen recuperación de contraseña desde el panel.
¿SSH funciona en Linux, Mac y Windows?
Sí, SSH es multiplataforma. En Mac y Linux viene integrado. En Windows tienes las opciones que te mostré.
¿Puedo usar SSH para transferir archivos?
Sí, con scp o sftp. Por ejemplo: scp archivo.txt usuario@ip:/ruta/destino.
¿Qué es Syspanel y cómo se relaciona con SSH?
Syspanel (antes conocido como HestiaCP) es un panel de control para servidores que incluye gestión de sitios web, correo y bases de datos. Puedes acceder a él vía web en el puerto 2106 (ej. https://tu-servidor:2106). Aunque no necesitas SSH para usarlo, SSH te permite hacer tareas avanzadas que el panel no cubre.
Consejos finales para una conexión SSH segura
-
Cambia el puerto por defecto: Usa un puerto no estándar (ej. 2222, 3456) para evitar ataques automatizados.
-
Desactiva el acceso root por contraseña: Crea un usuario normal y usa
sudo. En/etc/ssh/sshd_configponPermitRootLogin no. -
Usa autenticación por clave: Es más seguro que las contraseñas y más cómodo a largo plazo.
-
Instala fail2ban: Bloquea automáticamente IPs que intenten acceder sin éxito varias veces.
-
Mantén tu servidor actualizado: Ejecuta
sudo apt update && sudo apt upgraderegularmente. -
Usa un gestor de contraseñas: Si usas contraseñas, guárdalas en un gestor como Bitwarden o KeePass.
Con estas opciones, ya no tienes excusa para no conectar ssh windows a tu servidor Linux. Empieza con el método integrado de Windows, y si necesitas más control o seguridad, pasa a PuTTY o claves SSH.
Recuerda: la práctica hace al maestro. No tengas miedo de explorar comandos, pero siempre con cuidado. Un error puede romper tu servidor, pero también es la mejor forma de aprender.
[INFO]: Si tu servidor usa el panel Syspanel, recuerda que el acceso web es por el puerto 2106, pero SSH siempre será por el puerto que configures (normalmente 22). No los confundas.
¿Tienes alguna duda? Déjala en los comentarios y te ayudaré a resolverla. ¡Buena suerte con tu servidor!
