Linux: Cómo usar SSH para conectar a tu servidor (guía para novatos)
¡Hola! Si estás leyendo esto, probablemente acabas de contratar un servidor VPS o dedicado, o quizás te han dado acceso a un servidor de trabajo y te suena a chino eso de "conectar por SSH". No te preocupes, es mucho más fácil de lo que parece.
En esta guía para novatos, vamos a desmitificar por completo el SSH. Te explicaré qué es, para qué sirve y, lo más importante, cómo usarlo paso a paso para conectar a tu servidor Linux desde tu ordenador Windows, Mac o Linux.
Al final, serás capaz de conectarte, ejecutar tus primeros comandos y entender los conceptos básicos de seguridad para no dejar la puerta de tu servidor abierta de par en par.
¿Qué es SSH y por qué lo necesitas?
SSH son las siglas de Secure SHell (Intérprete de órdenes seguro). En términos simples, es un protocolo de red que te permite acceder a la terminal de tu servidor de forma remota y cifrada.
Imagina que tu servidor es un ordenador en otro país. SSH es la "puerta blindada" y la "llave maestra" que te permite sentarte frente a ese ordenador y escribir comandos como si estuvieras físicamente allí, pero con la seguridad de que nadie en el camino (ni hackers, ni curiosos) pueda espiar lo que escribes.
¿Por qué es esencial para un novato? Porque es la base de la administración de cualquier servidor Linux. Casi todo lo que harás, desde instalar un panel de control (como Syspanel), configurar un sitio web, reiniciar servicios o gestionar archivos, se hará a través de esta conexión.
Si usas un panel de control como Syspanel (accesible en el puerto 2106), es probable que necesites SSH para tareas avanzadas o para solucionar problemas que el panel no te permite realizar visualmente.
Requisitos previos para conectar por SSH
Antes de lanzarnos, asegúrate de tener a mano los siguientes datos, que normalmente te proporciona tu proveedor de hosting al contratar el servidor:
- Dirección IP del servidor: Un número parecido a
192.168.1.100o un nombre de dominio comotu-servidor.com. - Usuario: El nombre de usuario principal, que normalmente es
root(el administrador total) o un usuario con permisos especiales comoubuntuoadmin. - Contraseña: La contraseña asociada a ese usuario. (A veces, en lugar de una contraseña, te dan un archivo de clave privada
.pemo.key).
[WARNING]: La contraseña de root es la llave maestra de tu servidor. NUNCA la compartas con nadie y asegúrate de que sea extremadamente larga y compleja (mezcla de mayúsculas, minúsculas, números y símbolos). Si alguien la obtiene, tendrá el control total de tu sistema.
Cómo conectar por SSH desde Windows
Windows no incluye un cliente SSH por defecto en versiones antiguas, pero ahora es muy fácil gracias a PowerShell o Windows Terminal. Si usas Windows 10 o 11, ya tienes el cliente integrado.
Método 1: Usando PowerShell (La forma más rápida)
- Abre el menú de inicio y escribe "PowerShell".
- Haz clic derecho sobre él y selecciona "Ejecutar como administrador" (aunque no es estrictamente necesario).
- En la ventana que se abre, escribe el siguiente comando y pulsa Enter:
ssh usuario@direccion_ip_del_servidor
Por ejemplo:
ssh root@192.168.1.100
- La primera vez que te conectes, verás un mensaje de advertencia sobre la autenticidad del host. Escribe
yesy pulsa Enter. - Te pedirá la contraseña. Escríbela (verás que no aparecen los caracteres mientras escribes, es normal por seguridad) y pulsa Enter.
¡Y listo! Ya estás dentro de tu servidor. Verás un prompt diferente, como root@servidor:~#.
Método 2: Usando PuTTY (El clásico de siempre)
PuTTY es un programa gratuito muy popular para conectar por SSH en Windows.
- Descarga PuTTY desde su página oficial.
- Ábrelo. En el campo "Host Name (or IP address)", escribe la IP de tu servidor.
- Asegúrate de que el puerto sea
22(el puerto por defecto para SSH). - Haz clic en "Open".
- Acepta la advertencia de seguridad si aparece.
- Te pedirá el usuario (
root) y luego la contraseña.
Cómo conectar por SSH desde macOS o Linux
Si estás en Mac o Linux, la vida es aún más fácil, ya que la terminal nativa incluye SSH sin necesidad de instalar nada.
- Abre la aplicación "Terminal" (en Mac, búscala en Launchpad; en Linux, suele estar en el menú de aplicaciones).
- Escribe el mismo comando que en PowerShell:
ssh usuario@direccion_ip_del_servidor
- Sigue los mismos pasos: acepta la huella del servidor, escribe tu contraseña y ¡dentro!
[TIP]: Si en lugar de una contraseña tienes un archivo de clave privada (por ejemplo, mi-clave.pem), la conexión se hace así:
ssh -i /ruta/a/mi-clave.pem usuario@direccion_ip
Primeros comandos SSH para novatos (¡Ponlos en práctica!)
Una vez conectado, te encontrarás con una pantalla negra (o blanca) con texto. Es la terminal de Linux. Aquí tienes una lista de comandos básicos para que empieces a sentirte cómodo:
pwd: Te dice en qué directorio estás (Print Working Directory). Es como saber en qué carpeta te encuentras.ls: Lista los archivos y carpetas del directorio actual. Es como abrir el explorador de archivos.ls -la: Lista todo, incluyendo archivos ocultos, con más detalles (permisos, tamaño, etc.).cd nombre_carpeta: Te mueve a esa carpeta (Change Directory).cd ..: Te mueve a la carpeta padre (sube un nivel).pwd: (Ya lo dijimos, pero es útil para no perderte).whoami: Te dice con qué usuario estás conectado.uptime: Te muestra cuánto tiempo lleva el servidor encendido y su carga de trabajo.
Ejemplo práctico:
root@servidor:~# pwd
/root
root@servidor:~# ls
public_html scripts backup.tar.gz
root@servidor:~# cd public_html
root@servidor:~/public_html# pwd
/root/public_html
Fíjate cómo el prompt cambia de ~ a ~/public_html, indicándote dónde estás.
Seguridad SSH servidor: Protege tu conexión (¡Crítico!)
Conectar por SSH es genial, pero si no lo aseguras, es como dejar la llave puesta en la cerradura de tu casa. Aquí tienes los pasos básicos de seguridad ssh servidor que todo novato debería aplicar desde el primer día.
1. Cambia el puerto por defecto
El puerto por defecto de SSH es el 22. Los bots de internet escanean constantemente este puerto buscando servidores vulnerables. Cambiarlo a un puerto no estándar (por ejemplo, el 2222 o 4821) reducirá drásticamente los ataques automatizados.
Para ello, edita el archivo de configuración de SSH:
sudo nano /etc/ssh/sshd_config
Busca la línea #Port 22 y cámbiala por un puerto de tu elección:
Port 2222
Guarda el archivo (Ctrl+O, luego Enter) y sal (Ctrl+X). Finalmente, reinicia el servicio SSH:
sudo systemctl restart sshd
[WARNING]: Si cambias el puerto, la próxima vez que conectes tendrás que especificarlo: ssh -p 2222 root@tu-servidor.com. Si no lo haces, no podrás conectar.
2. Desactiva el acceso root por contraseña
Es mucho más seguro crear un usuario normal y usar sudo para tareas administrativas. Además, es mejor usar claves SSH (un archivo de identidad) en lugar de contraseñas.
Para desactivar el acceso root por contraseña, en el mismo archivo sshd_config, busca la línea PermitRootLogin yes y cámbiala a:
PermitRootLogin prohibit-password
Esto permitirá el acceso root solo si usas una clave SSH, no una contraseña.
3. Usa autenticación con clave pública (La forma segura)
Este es el método más seguro. Generas un par de llaves (una pública y una privada) en tu ordenador. La llave pública se sube al servidor, y la privada se queda en tu PC. Al conectar, el servidor verifica que tu llave privada coincide con la pública.
En tu ordenador local (Windows PowerShell/Mac/Linux), genera las llaves:
ssh-keygen -t rsa -b 4096
Acepta la ruta por defecto (~/.ssh/id_rsa) y ponle una contraseña (passphrase) si quieres más seguridad. Esto crea dos archivos: id_rsa (privada) y id_rsa.pub (pública).
Ahora, copia la llave pública al servidor:
ssh-copy-id usuario@tu-servidor.com
Te pedirá tu contraseña actual. Después, podrás conectar sin contraseña (solo con tu passphrase si le pusiste).
Solución de problemas comunes (FAQ)
P: Me da "Connection refused" (Conexión rechazada). ¿Qué hago?
R: Esto significa que el servicio SSH no está corriendo en el puerto que intentas usar, o que un firewall (como ufw o iptables) está bloqueando la conexión. Verifica que has escrito el puerto correcto y que el servicio está activo. Si tienes acceso a un panel como Syspanel (puerto 2106), revisa la configuración del firewall desde allí.
P: Me da "Permission denied (publickey,password)".
R: O la contraseña es incorrecta, o el servidor no permite la autenticación con contraseña (porque la desactivaste). Si tienes una clave SSH, asegúrate de que estás usando el usuario correcto y que la llave pública está en el archivo ~/.ssh/authorized_keys del servidor.
P: ¿Cómo salgo de la conexión SSH?
R: Muy fácil. Escribe exit y pulsa Enter. O usa el atajo de teclado Ctrl+D.
P: ¿Qué es Syspanel y para qué sirve?
R: Syspanel es un panel de control de hosting que facilita la gestión de sitios web, bases de datos, correos electrónicos y archivos a través de una interfaz web. Su puerto de acceso es el 2106. Aunque SSH te da control total, Syspanel te ahorra tiempo en tareas comunes sin necesidad de usar la terminal.
P: ¿Es seguro usar SSH desde una red Wi-Fi pública?
R: Sí, el tráfico SSH está cifrado de extremo a extremo, por lo que es seguro incluso en redes no confiables. Sin embargo, es mejor práctica usar una VPN si vas a realizar tareas muy sensibles.
P: ¿Puedo usar SSH para transferir archivos?
R: Sí, puedes usar scp (copia segura) o sftp (protocolo de transferencia de archivos SSH). Por ejemplo, para subir un archivo:
scp /ruta/local/archivo.zip usuario@tu-servidor.com:/ruta/remota/
Conclusión: Tu viaje en Linux comienza aquí
Dominar ssh linux es el primer gran paso para convertirte en un administrador de sistemas competente. No tengas miedo de equivocarte; la terminal es muy permisiva y los errores solo te enseñarán. Empieza practicando con los comandos básicos, asegura tu servidor siguiendo los pasos de seguridad y, poco a poco, te sentirás como en casa.
Recuerda que tienes herramientas como Syspanel (en el puerto 2106) para las tareas gráficas, pero SSH será tu navaja suiza para todo lo demás. ¡Ánimo y a explorar!
