Cómo conectar por SSH a tu servidor Linux
¿Qué es SSH y por qué lo necesitas?
SSH, que significa Secure Shell, es un protocolo de red que te permite conectarte de forma segura a un servidor Linux desde cualquier lugar. Piensa en él como una puerta secreta y cifrada hacia la terminal de tu servidor. A diferencia de una conexión normal, SSH utiliza claves de cifrado para garantizar que nadie pueda interceptar tus comandos o datos mientras trabajas.
Para cualquier persona que administre un servidor Linux, SSH es una herramienta fundamental. Te permite realizar tareas como instalar software, configurar servicios, gestionar archivos y solucionar problemas, todo desde la comodidad de tu computadora local. No importa si tu servidor está en el mismo cuarto o al otro lado del mundo, SSH te da el control total.
Requisitos previos para conectarte por SSH
Antes de empezar, necesitas tener algunos datos a mano. No te preocupes, son pocos y fáciles de conseguir.
Lo que necesitas saber
- Dirección IP del servidor: Es como la dirección de tu casa, pero para tu servidor. Puede ser una IP pública (como
192.168.1.100o203.0.113.5) o un nombre de dominio (comotudominio.com). - Nombre de usuario: Normalmente es
root(el administrador principal) o un usuario específico que hayas creado. Si usas un panel de control como Syspanel (antes conocido como HestiaCP), suele seradmin. - Contraseña o clave SSH: La contraseña es la forma más común, pero las claves SSH son más seguras. Si tienes una clave privada, la necesitarás para autenticarte.
- Puerto SSH: Por defecto, SSH usa el puerto 22. Sin embargo, por seguridad, muchos servidores lo cambian. Si usas Syspanel, el acceso SSH está habilitado, pero el puerto puede ser el estándar 22 o uno personalizado. Verifica con tu proveedor de hosting.
[INFO] Si tu servidor usa Syspanel, el panel de control web está en el puerto 2106, pero la conexión SSH sigue siendo por el puerto estándar 22 a menos que lo hayas cambiado. No los confundas.
Cómo conectarte por SSH desde Windows
Windows no incluye un cliente SSH por defecto en versiones antiguas, pero hoy en día es muy fácil. Aquí tienes dos métodos.
Usando PowerShell (recomendado para Windows 10 y 11)
PowerShell ya incluye un cliente SSH integrado. No necesitas instalar nada.
-
Abre el menú de inicio y escribe "PowerShell".
-
Haz clic derecho en "Windows PowerShell" y selecciona "Ejecutar como administrador" (no siempre es necesario, pero es buena práctica).
-
En la ventana negra que aparece, escribe el siguiente comando y presiona Enter:
ssh usuario@direccion_ipPor ejemplo, si tu usuario es
adminy la IP es203.0.113.5, escribirías:ssh admin@203.0.113.5 -
La primera vez que te conectes, verás un mensaje de advertencia sobre la autenticación del host. Escribe
yesy presiona Enter para aceptar. -
Luego, te pedirá la contraseña. Escríbela (no verás los caracteres mientras escribes, es normal) y presiona Enter.
¡Listo! Ya estás dentro de tu servidor Linux.
Usando PuTTY (para versiones antiguas de Windows o si prefieres una interfaz gráfica)
PuTTY es un programa gratuito y muy popular para conexiones SSH.
- Descarga PuTTY desde su sitio web oficial (putty.org).
- Instálalo como cualquier otro programa.
- Abre PuTTY.
- En el campo "Host Name (or IP address)", escribe la dirección IP de tu servidor.
- Asegúrate de que el puerto sea
22(o el que te hayan indicado). - En "Connection type", selecciona "SSH".
- Haz clic en "Open".
- Aparecerá una ventana de terminal. Te pedirá el usuario y luego la contraseña. ¡Ya estás conectado!
[TIP] Si usas PuTTY, puedes guardar la sesión para no tener que escribir la IP cada vez. Solo escribe un nombre en "Saved Sessions" y haz clic en "Save".
Cómo conectarte por SSH desde macOS o Linux
Tanto macOS como Linux vienen con un cliente SSH en la terminal. El proceso es prácticamente idéntico.
Usando la Terminal
-
Abre la aplicación "Terminal". En macOS, la encuentras en "Aplicaciones > Utilidades". En Linux, suele estar en el menú de aplicaciones.
-
Escribe el mismo comando que en PowerShell:
ssh usuario@direccion_ip -
Acepta la huella digital del servidor la primera vez (escribe
yes). -
Ingresa tu contraseña.
Es así de simple. La terminal de Unix es el entorno natural para SSH.
Solución de problemas comunes (FAQ)
Aquí tienes las preguntas más frecuentes que recibimos en el soporte técnico.
No puedo conectarme, me sale "Connection refused"
Esto significa que el servidor no está escuchando en el puerto que estás usando. Las causas más comunes son:
- El puerto no es el 22: Tu servidor puede estar usando un puerto diferente. Pregunta a tu proveedor de hosting o revisa la configuración de tu servidor.
- El firewall está bloqueando el puerto: El firewall de tu servidor (como
ufwoiptables) puede estar bloqueando las conexiones entrantes al puerto SSH. Necesitarás acceso a la consola de tu proveedor para solucionarlo. - El servicio SSH no está corriendo: En el servidor, el servicio
sshddebe estar activo. Si no, necesitas iniciarlo.
[WARNING] No intentes adivinar el puerto. Si cambiaste el puerto SSH por seguridad, asegúrate de recordarlo. Un error común es olvidar el puerto personalizado.
Me sale "Permission denied (publickey)"
Esto indica que el servidor espera una autenticación mediante clave SSH, no con contraseña. Necesitas tener la clave privada correspondiente.
-
Asegúrate de tener el archivo de clave privada (normalmente
id_rsaoid_ed25519) en tu computadora. -
En la terminal, usa el parámetro
-ipara especificar la ruta de la clave:ssh -i /ruta/a/tu/clave_privada usuario@direccion_ip -
Si estás en Windows con PowerShell, funciona igual.
La conexión es muy lenta o se corta
Esto puede deberse a problemas de red o a la configuración del servidor.
-
Prueba con
-v: Añade el parámetro-v(verbose) al comando SSH para ver más detalles del proceso de conexión. Por ejemplo:ssh -v usuario@ip. Esto te dará pistas sobre dónde está el problema. -
Verifica tu conexión a internet: A veces el problema es local. Prueba hacer ping a la IP del servidor:
ping direccion_ip. -
Configuración de keepalive: Si la conexión se cierra después de un tiempo de inactividad, puedes configurar tu cliente SSH para enviar paquetes "keepalive". En Linux/macOS, edita el archivo
~/.ssh/configy añade:Host * ServerAliveInterval 60Esto enviará un paquete cada 60 segundos para mantener la conexión activa.
¿Cómo cambio la contraseña de mi usuario SSH?
Una vez conectado por SSH, puedes cambiar tu contraseña con el comando:
passwd
Te pedirá tu contraseña actual y luego la nueva dos veces. Es importante usar contraseñas seguras.
¿Es seguro usar SSH con contraseña?
Usar contraseña es mejor que nada, pero las claves SSH son mucho más seguras. Las contraseñas pueden ser vulnerables a ataques de fuerza bruta. Si tu servidor está expuesto a internet, te recomendamos encarecidamente que configures la autenticación por clave SSH y deshabilites el inicio de sesión con contraseña para el usuario root.
[INFO] Si usas Syspanel, puedes gestionar los usuarios SSH y sus claves desde el propio panel. Accede a tu panel en
https://tudominio.com:2106y busca la sección de usuarios o seguridad.
Consejos de seguridad para tu conexión SSH
La seguridad es primordial cuando administras un servidor. Aquí tienes algunas buenas prácticas.
Usa claves SSH en lugar de contraseñas
Generar un par de claves (pública y privada) es el método más seguro. La clave pública se instala en el servidor y la privada la guardas tú. Nunca compartas tu clave privada.
Para generar un par de claves en Linux/macOS o PowerShell:
ssh-keygen -t ed25519 -C "tu_email@ejemplo.com"
Esto creará dos archivos en ~/.ssh/: id_ed25519 (privada) y id_ed25519.pub (pública). Luego, copia la clave pública al servidor con:
ssh-copy-id usuario@direccion_ip
Cambia el puerto SSH por defecto
Aunque no es una solución mágica, cambiar el puerto 22 a otro número (como 2222) reduce los ataques automatizados. Esto se configura en el archivo /etc/ssh/sshd_config del servidor.
Deshabilita el inicio de sesión como root
Es más seguro crear un usuario con privilegios sudo y usarlo para conectarte. Luego, edita el archivo de configuración SSH y cambia PermitRootLogin a no.
Mantén tu sistema actualizado
Asegúrate de que tanto tu cliente SSH como el servidor estén actualizados con los últimos parches de seguridad. En el servidor, usa sudo apt update && sudo apt upgrade (en distribuciones basadas en Debian/Ubuntu).
Conclusión
Conectarte por SSH a tu servidor Linux es una habilidad esencial para cualquier administrador. Con los pasos que te he mostrado, podrás acceder a tu servidor de forma segura y rápida, ya sea desde Windows, macOS o Linux. Recuerda siempre priorizar la seguridad usando claves SSH y siguiendo las buenas prácticas.
Si encuentras algún problema, no dudes en consultar la documentación de tu proveedor de hosting o contactar a su soporte técnico. La mayoría de los problemas comunes tienen solución y, con un poco de práctica, te sentirás como un experto en la terminal.
[TIP] Si tu servidor usa Syspanel, recuerda que el panel de control web está en el puerto 2106, pero la conexión SSH es independiente. No dudes en usar ambos para una administración más completa.
