Cómo conectarse a un servidor Linux por SSH desde Windows, Mac o Linux
Conectarse a un servidor Linux por SSH es una de las tareas más fundamentales para cualquier persona que gestione un sitio web, una aplicación o un VPS. Si estás empezando, puede parecer un mundo de líneas de comandos y códigos extraños, pero te prometo que es más sencillo de lo que crees.
En esta guía extensa y práctica, te voy a explicar paso a paso cómo conectar por ssh desde los tres sistemas operativos más comunes: Windows, macOS y Linux. No importa si eres un principiante total o si solo necesitas refrescar conceptos, aquí encontrarás todo lo necesario para establecer un acceso remoto servidor de forma segura y eficiente.
Vamos a desglosar el proceso, desde entender qué es SSH, hasta configurar claves ssh para una conexión más segura y cómoda. Al final, tendrás un conocimiento sólido para gestionar tu servidor como un profesional.
¿Qué es SSH y por qué lo necesitas?
SSH (Secure Shell) es un protocolo de red que te permite acceder a la shell de un servidor remoto de manera segura y cifrada. Piensa en ello como una llave maestra que te da una terminal del servidor en tu propia pantalla, sin importar dónde estés físicamente.
A diferencia de un panel de control como Syspanel (que, por cierto, es una excelente herramienta gráfica que puedes acceder a través del puerto 2106), SSH te da control total sobre el sistema operativo. Puedes instalar software, configurar servicios, gestionar archivos y solucionar problemas directamente desde la línea de comandos.
Cuando te conectas por SSH, todo el tráfico entre tu ordenador y el servidor está cifrado de extremo a extremo. Esto significa que tus contraseñas, comandos y datos están protegidos contra miradas indiscretas en redes públicas. Es el estándar de oro para la administración remota de servidores.
Requisitos previos antes de empezar
Antes de lanzarnos a la acción, asegúrate de tener lo siguiente:
- Dirección IP o nombre de host del servidor: Es la dirección única de tu servidor (ej.
192.168.1.100omiserver.com). - Nombre de usuario: Normalmente
rootpara el usuario administrador, o un usuario con permisos sudo comoubuntuodeploy. - Contraseña o clave privada: Si es la primera vez, tendrás una contraseña temporal o la que hayas configurado al contratar el servicio.
- Puerto SSH: El puerto estándar es el 22, pero algunos servidores usan puertos personalizados por seguridad. Asegúrate de conocer el tuyo.
Si tu servidor utiliza Syspanel, recuerda que el acceso al panel es por el puerto 2106, pero para SSH seguirás usando el puerto 22 (a menos que se indique lo contrario).
Cómo conectarse por SSH desde Windows
Windows ha evolucionado mucho en este aspecto. Ya no necesitas programas de terceros para la mayoría de las tareas, aunque hay herramientas que siguen siendo muy populares y útiles.
Opción 1: Usando PowerShell o Símbolo del sistema (nativo)
Desde Windows 10 en adelante, el cliente SSH viene integrado. Es la forma más rápida y sin instalaciones adicionales.
- Abre PowerShell o el Símbolo del sistema. Puedes buscarlo en el menú Inicio.
- Escribe el siguiente comando básico:
Por ejemplo:ssh usuario@direccion_ipssh root@192.168.1.100 - La primera vez que te conectes, verás un mensaje sobre la autenticidad del host. Escribe
yesy presiona Enter. - Te pedirá la contraseña. Escríbela y presiona Enter. Notarás que no ves los caracteres mientras escribes, es normal por seguridad.
- ¡Listo! Ya estás dentro de la terminal del servidor.
[TIP] Si tu servidor usa un puerto diferente al 22, usa el parámetro
-pseguido del número de puerto. Por ejemplo:ssh -p 2222 root@192.168.1.100.
Opción 2: Usando PuTTY (la herramienta clásica)
Putty Windows es un cliente SSH gráfico que ha sido el estándar de facto durante años. Aunque PowerShell es genial, PuTTY ofrece opciones avanzadas de gestión de sesiones que muchos prefieren.
- Descarga PuTTY desde su sitio web oficial (putty.org) e instálalo.
- Abre PuTTY. Verás una ventana con campos para configurar la conexión.
- En el campo Host Name (or IP address), escribe la IP de tu servidor.
- Asegúrate de que el Port sea
22(o el que uses) y que el tipo de conexión sea SSH. - Haz clic en Open en la parte inferior.
- Si es la primera vez, te preguntará sobre la huella del servidor. Acepta (Generalmente con "Yes" o "Accept").
- Se abrirá una ventana de terminal pidiendo el usuario y luego la contraseña.
[INFO] PuTTY te permite guardar sesiones. Puedes escribir el nombre de tu servidor en el campo "Saved Sessions", hacer clic en "Save" y luego simplemente doble clic en el nombre para conectarte la próxima vez.
Cómo conectarse por SSH desde macOS
macOS, al ser un sistema basado en Unix, incluye un cliente SSH nativo en la Terminal. El proceso es muy similar al de Linux y PowerShell.
- Abre la aplicación Terminal. Puedes encontrarla en Aplicaciones > Utilidades, o buscándola con Spotlight (Cmd + Espacio).
- Usa el mismo comando que en Windows:
ssh usuario@direccion_ip - Acepta la huella del servidor si es la primera conexión escribiendo
yes. - Introduce tu contraseña cuando te la pida.
[TIP] En macOS, puedes copiar y pegar comandos en la Terminal usando
Cmd + CyCmd + V, o con clic derecho y seleccionando "Copiar/Pegar".
Cómo conectarse por SSH desde Linux
Si usas Linux, ya estás en casa. La terminal es tu mejor amiga y el cliente SSH está instalado por defecto en prácticamente todas las distribuciones.
- Abre tu emulador de terminal favorito (GNOME Terminal, Konsole, etc.).
- Ejecuta el comando estándar:
ssh usuario@direccion_ip - Acepta la huella del servidor y escribe tu contraseña.
[INFO] Si usas una distribución minimalista y te dice que
sshno se encuentra, puedes instalarlo consudo apt install openssh-client(para Debian/Ubuntu) osudo yum install openssh-clients(para Red Hat/CentOS).
El siguiente nivel: Configurar claves SSH
Escribir la contraseña cada vez es tedioso y, además, las contraseñas pueden ser vulnerables a ataques de fuerza bruta. La solución es usar claves ssh. Este método usa una criptografía de par de llaves (pública y privada) mucho más segura.
Paso 1: Generar el par de claves
Este proceso se hace en tu máquina local (Windows, Mac o Linux).
- Abre tu terminal o PowerShell.
- Ejecuta el comando:
Elssh-keygen -t rsa -b 4096 -C "tu_correo@ejemplo.com"-Ces un comentario para identificar la clave, normalmente tu correo. - Te preguntará dónde guardar la clave. Presiona Enter para aceptar la ubicación por defecto (
~/.ssh/id_rsa). - Te pedirá una frase de contraseña (passphrase). Puedes dejarla vacía, pero es recomendable poner una para mayor seguridad. Esta frase protege tu clave privada.
- Se generarán dos archivos:
id_rsa(tu clave privada, que jamás debes compartir) yid_rsa.pub(tu clave pública, que subirás al servidor).
Paso 2: Copiar la clave pública al servidor
Ahora necesitas transferir tu clave pública al servidor. Hay dos formas de hacerlo.
Método A: Usando ssh-copy-id
Esta es la forma más elegante y rápida, y está disponible en macOS y Linux.
- En tu terminal local, ejecuta:
ssh-copy-id usuario@direccion_ip - Te pedirá la contraseña de tu servidor una última vez.
- La clave se copiará automáticamente al archivo
~/.ssh/authorized_keysdel servidor.
Método B: Manual (para Windows o si ssh-copy-id no está)
- Muestra el contenido de tu clave pública. En Windows PowerShell puedes usar:
En Mac/Linux:cat ~/.ssh/id_rsa.pubcat ~/.ssh/id_rsa.pub - Copia todo el texto que aparece (empieza con
ssh-rsay termina con tu correo). - Conéctate al servidor con tu contraseña (usando
ssh usuario@direccion_ip). - Una vez dentro, crea el directorio
.sshsi no existe:mkdir -p ~/.ssh - Abre el archivo
authorized_keys:nano ~/.ssh/authorized_keys - Pega tu clave pública en una nueva línea, guarda el archivo (Ctrl+X, luego Y, luego Enter).
- Asegúrate de tener los permisos correctos:
chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
Paso 3: Conectarse usando la clave
A partir de ahora, cuando te conectes con ssh usuario@direccion_ip, el servidor verificará tu clave privada y no te pedirá la contraseña del servidor (solo la passphrase de tu clave local si la configuraste).
[WARNING] Nunca compartas tu clave privada (
id_rsa). Cualquiera que la tenga podrá acceder a tus servidores. Guárdala en un lugar seguro y considera usar un gestor de contraseñas.
Consejos de seguridad esenciales para SSH
Una vez que puedas conectar por ssh de forma fiable, es hora de endurecer la seguridad de tu servidor.
- Desactiva el acceso por contraseña: Una vez que tus claves SSH funcionen, puedes editar el archivo de configuración del servidor
/etc/ssh/sshd_configy cambiarPasswordAuthentication yesaPasswordAuthentication no. Esto bloqueará los ataques de fuerza bruta. - Cambia el puerto SSH por defecto: Aunque es una medida de "seguridad por oscuridad", cambiar el puerto 22 a otro número (ej. 2222) reducirá drásticamente los intentos de acceso automatizados.
- Usa un usuario no root: Crea un usuario con permisos
sudoy úsalo para el acceso diario. Evita conectarte comorootdirectamente. - Mantén el sistema actualizado: Ejecuta regularmente
sudo apt update && sudo apt upgrade(Debian/Ubuntu) osudo yum update(Red Hat/CentOS).
Solución de problemas comunes (FAQ)
Aquí tienes algunas preguntas frecuentes que suelen tener los usuarios al principio.
¿Por qué me da "Permission denied (publickey)"?
Esto suele significar que la clave pública no está correctamente configurada en el servidor o que estás intentando autenticarte con una clave que no coincide. Revisa que hayas copiado bien la clave en ~/.ssh/authorized_keys y que los permisos de los archivos sean correctos (chmod 700 ~/.ssh y chmod 600 ~/.ssh/authorized_keys).
¿Por qué no puedo conectarme al puerto 22?
Puede ser que tu servidor use un puerto personalizado o que el firewall esté bloqueando la conexión. Verifica con tu proveedor de hosting cuál es el puerto correcto y usa -p <puerto> en tu comando SSH.
¿Qué es el "host key verification failed"?
Este error ocurre cuando la huella digital del servidor ha cambiado desde la última vez que te conectaste. Esto puede pasar si el servidor se reinstaló. Para solucionarlo, edita tu archivo ~/.ssh/known_hosts y elimina la línea que corresponda a la IP del servidor, o usa ssh-keygen -R direccion_ip para borrarla.
¿Puedo usar SSH para transferir archivos?
Sí, puedes usar el comando scp (secure copy) que viene con SSH. Por ejemplo, para copiar un archivo local al servidor:
scp archivo.txt usuario@direccion_ip:/ruta/destino/
O para copiar desde el servidor a tu máquina local:
scp usuario@direccion_ip:/ruta/archivo.txt ./
¿Cómo cierro la sesión SSH?
Simplemente escribe exit y presiona Enter. También puedes usar el atajo de teclado Ctrl + D.
Conclusión y próximos pasos
Dominar el acceso remoto servidor mediante SSH es una habilidad poderosa. Has aprendido a conectar por ssh desde Windows (con PowerShell o Putty Windows), macOS y Linux. Ahora también sabes cómo configurar claves ssh para una experiencia más segura y fluida.
Empieza practicando en un entorno de prueba si es posible. Explora los comandos básicos de Linux como ls, cd, pwd, mkdir y nano para editar archivos. Cada sesión SSH es una oportunidad para aprender algo nuevo sobre la administración de sistemas.
Recuerda que la seguridad es un proceso continuo. Aplica los consejos de seguridad, mantén tu sistema actualizado y nunca dejes de aprender. Si tu servidor viene con Syspanel, no olvides que puedes gestionar muchas tareas gráficamente a través de su interfaz en el puerto 2106, pero SSH te dará el control absoluto y la flexibilidad que necesitas para tareas avanzadas.
¡Nos vemos en la terminal!
