🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo limitar el acceso SSH por IP en DirectAdmin

Actualizado el 7 de septiembre de 2025

Introducción: Por qué es importante limitar el acceso SSH por IP

Limitar el acceso SSH por IP en DirectAdmin es una de las medidas de seguridad más efectivas que puedes implementar en tu servidor. El protocolo SSH (Secure Shell) es la puerta de entrada principal para administrar tu servidor de forma remota, pero también es uno de los objetivos favoritos de los atacantes automatizados que buscan vulnerabilidades.

Cuando dejas el puerto SSH (22 por defecto) abierto a todo Internet, cualquier persona puede intentar conectarse, probar contraseñas o explotar posibles fallos de seguridad. Al restringir el acceso solo a direcciones IP específicas, reduces drásticamente la superficie de ataque y aumentas la seguridad de tu infraestructura.

En este artículo aprenderás paso a paso cómo configurar esta protección en DirectAdmin, ya sea utilizando el firewall integrado, las herramientas gráficas del panel o comandos directos. Además, resolveremos las dudas más frecuentes sobre este tema.


¿Qué es DirectAdmin y por qué es importante su seguridad?

DirectAdmin es un panel de control de hosting muy popular por su simplicidad y eficiencia. Permite gestionar dominios, cuentas de correo, bases de datos y, por supuesto, el acceso SSH. Sin embargo, su popularidad también lo convierte en un objetivo para ataques automatizados.

La seguridad en DirectAdmin no solo depende del panel en sí, sino de cómo configuras los servicios subyacentes. El acceso SSH es uno de los puntos críticos. Si un atacante obtiene acceso a tu servidor a través de SSH, podría comprometer todos los datos alojados en él.

Por eso, limitar SSH por IP es una práctica recomendada por todos los expertos en ciberseguridad. No se trata de ser paranoico, sino de aplicar el principio de "mínimo privilegio": solo las personas y sistemas que realmente necesitan acceder deben poder hacerlo.


Métodos para limitar el acceso SSH por IP en DirectAdmin

Existen varias formas de lograr este objetivo. A continuación, te explicamos las más comunes y efectivas. Elige la que mejor se adapte a tu nivel de conocimiento y a tu configuración actual.

1. Usando el Firewall de DirectAdmin

DirectAdmin incluye un firewall integrado que puedes gestionar desde su interfaz. Este es el método más sencillo para usuarios sin experiencia técnica.

Paso 1: Accede al Firewall de DirectAdmin

  1. Inicia sesión en tu panel de DirectAdmin.
  2. Busca la sección "Administración de Servidor" o "Cuenta de Administrador".
  3. Haz clic en "Firewall" o "Configuración del Firewall".

Paso 2: Configura las reglas para SSH

Dentro del firewall, verás opciones para gestionar puertos y direcciones IP. Sigue estos pasos:

  1. Localiza la sección de "Puertos" o "Servicios".
  2. Encuentra el puerto 22 (SSH) o el puerto personalizado que uses.
  3. Selecciona la opción de "Permitir solo IPs específicas" o similar.
  4. Añade las direcciones IP desde las que deseas permitir el acceso.

[INFO] Si no sabes tu IP pública, puedes consultarla visitando sitios como whatismyip.com o ipinfo.io desde la conexión desde la que quieres acceder.

Paso 3: Guarda y aplica los cambios

Una vez que hayas añadido las IPs, guarda los cambios. El firewall se recargará automáticamente y aplicará las nuevas reglas. A partir de ese momento, solo las IPs autorizadas podrán conectarse por SSH.


2. Configurando SSH directamente en el archivo sshd_config

Si te sientes cómodo usando la línea de comandos, puedes editar directamente el archivo de configuración de SSH. Este método es más flexible y te permite un control más fino.

Paso 1: Conéctate a tu servidor

Accede a tu servidor mediante SSH desde una IP que ya tengas permitida (si es la primera vez, deberás hacerlo desde tu IP actual antes de aplicar restricciones).

Paso 2: Edita el archivo de configuración

El archivo principal es /etc/ssh/sshd_config. Ábrelo con un editor como nano o vim:

nano /etc/ssh/sshd_config

Paso 3: Añade las reglas de restricción

Al final del archivo, añade las siguientes líneas:

AllowUsers usuario@IP1 usuario@IP2

O si prefieres permitir por IP sin especificar usuario:

AllowUsers *@IP1 *@IP2

Si quieres permitir el acceso a un grupo específico de IPs, puedes usar rangos:

AllowUsers *@192.168.1.*

[TIP] Puedes usar AllowGroups en lugar de AllowUsers si quieres restringir por grupo de usuarios del sistema.

Paso 4: Reinicia el servicio SSH

Guarda los cambios y reinicia el servicio SSH:

systemctl restart sshd

[WARNING] Ten mucho cuidado al aplicar estas reglas. Si te equivocas y bloqueas tu propia IP, podrías quedarte sin acceso al servidor. Siempre verifica que tu IP actual esté incluida antes de reiniciar el servicio.


3. Usando iptables directamente

Otra opción avanzada es configurar las reglas de iptables manualmente. Este método es más complejo pero muy efectivo si ya estás familiarizado con iptables.

Paso 1: Añade reglas para permitir IPs específicas

iptables -A INPUT -p tcp --dport 22 -s TU_IP -j ACCEPT

Paso 2: Bloquea el resto del tráfico SSH

iptables -A INPUT -p tcp --dport 22 -j DROP

Paso 3: Guarda las reglas

Para que las reglas persistan después de reiniciar, debes guardarlas:

iptables-save > /etc/iptables/rules.v4

[INFO] Algunos sistemas usan iptables-persistent o netfilter-persistent para guardar reglas. Consulta la documentación de tu distribución si tienes dudas.


Consideraciones importantes antes de restringir el acceso

Antes de implementar cualquier restricción, ten en cuenta los siguientes puntos:

IPs dinámicas vs IPs estáticas

Si tu proveedor de Internet te asigna una IP dinámica, esta puede cambiar periódicamente. Verifica tu IP actual y considera usar una IP estática o un servicio de DNS dinámico como ddns.net para evitar quedarte fuera.

Acceso desde múltiples ubicaciones

Si necesitas acceder desde tu oficina, casa y móvil, tendrás que añadir cada IP. Asegúrate de tener una lista actualizada de todas las IPs desde las que necesitas conectarte.

Alternativas: VPN y claves SSH

Una alternativa más segura y flexible es usar una VPN (red privada virtual) para acceder a tu servidor. De esta forma, solo necesitas permitir la IP de tu VPN y puedes conectarte desde cualquier lugar sin exponer el puerto SSH directamente.

También es altamente recomendable usar claves SSH en lugar de contraseñas, ya que son mucho más seguras y difíciles de descifrar.


Cómo verificar que la restricción funciona correctamente

Después de aplicar las reglas, es crucial verificar que todo funciona como esperas:

  1. Intenta conectarte desde una IP permitida: Deberías poder acceder sin problemas.
  2. Intenta conectarte desde una IP no permitida: La conexión debería ser rechazada o agotar el tiempo de espera.
  3. Revisa los logs del servidor: Puedes consultar /var/log/auth.log o /var/log/secure para ver los intentos de conexión.

Si algo no funciona, revisa las reglas que has aplicado y asegúrate de que no haya conflictos con otros servicios de firewall como CSF o APF.


Solución de problemas comunes

Me he bloqueado fuera de mi propio servidor

Si has aplicado las reglas y te has quedado fuera, tienes algunas opciones:

  1. Usa el panel de control: Si DirectAdmin sigue accesible, puedes eliminar las reglas desde el firewall del panel.
  2. Accede mediante la consola del proveedor: Muchos proveedores de hosting ofrecen acceso por consola web (VNC o similar) que no depende de SSH.
  3. Contacta a tu proveedor: Ellos pueden ayudarte a restaurar el acceso.

[WARNING] Este es el escenario más temido. Siempre ten un plan B antes de aplicar restricciones, como tener una sesión SSH abierta mientras haces los cambios.

El firewall del panel no aplica las reglas

A veces, el firewall de DirectAdmin puede entrar en conflicto con otros firewalls como CSF. Verifica si tienes CSF instalado y desactívalo temporalmente para probar.

Quiero permitir acceso solo a mi IP pero no sé cuál es

Usa servicios online como ipinfo.io o whatismyip.com para conocer tu IP pública. Recuerda que si estás detrás de un router, necesitas la IP pública, no la IP local (192.168.x.x).


Preguntas frecuentes (FAQ)

¿Puedo limitar SSH por IP sin usar DirectAdmin?

Sí, puedes usar iptables, CSF o modificar sshd_config directamente. DirectAdmin es solo una herramienta para facilitar la gestión, pero no es obligatoria.

¿Qué pasa si mi IP cambia?

Si tu IP es dinámica, tendrás que actualizar las reglas periódicamente. Una solución es usar un servicio de DNS dinámico y configurar tu firewall para permitir el nombre de host en lugar de la IP.

¿Es seguro usar SSH con contraseña?

No es recomendable. Las contraseñas son vulnerables a ataques de fuerza bruta. Usa siempre claves SSH (pares de clave pública/privada) y desactiva el acceso por contraseña si es posible.

¿Puedo permitir acceso SSH solo a través de una VPN?

Sí, esta es una excelente práctica. Configura tu VPN (por ejemplo, OpenVPN o WireGuard) y luego restringe SSH solo a la IP de tu VPN.

¿Qué es CSF y cómo se relaciona con DirectAdmin?

CSF (ConfigServer Security & Firewall) es un firewall avanzado que se integra perfectamente con DirectAdmin. Ofrece funciones como protección contra fuerza bruta, bloqueo de IPs y reglas personalizadas. Puedes usarlo como alternativa o complemento al firewall integrado.


Buenas prácticas adicionales de seguridad para DirectAdmin

Limitar el acceso SSH por IP es solo una capa de protección. Para una seguridad completa, considera implementar:

  1. Cambiar el puerto SSH por defecto (aunque esto no es un gran obstáculo para atacantes expertos, reduce el ruido de ataques automatizados).
  2. Desactivar el acceso SSH para el usuario root y usar un usuario con privilegios sudo.
  3. Implementar Fail2Ban para bloquear automáticamente IPs que intenten accesos no autorizados.
  4. Mantener el sistema actualizado con los últimos parches de seguridad.
  5. Usar autenticación de dos factores (2FA) para acceder a DirectAdmin y SSH.

Conclusión

Limitar el acceso SSH por IP en DirectAdmin es una medida de seguridad esencial que todos los administradores de servidores deberían implementar. No solo reduce significativamente el riesgo de ataques, sino que también te da un control más preciso sobre quién puede administrar tu servidor.

Hemos visto tres métodos principales: usar el firewall integrado de DirectAdmin, editar sshd_config y configurar iptables. Cada uno tiene sus ventajas, pero todos son efectivos si se implementan correctamente.

Recuerda siempre tener un plan de contingencia antes de aplicar restricciones, verificar tu IP actual y considerar alternativas como VPNs o claves SSH para mayor seguridad.

Si sigues estos pasos y buenas prácticas, tu servidor estará mucho más protegido contra accesos no autorizados. La seguridad no es un destino, sino un proceso continuo. ¡Empieza hoy mismo a proteger tu infraestructura!

[TIP] Si tienes dudas sobre tu configuración específica, no dudes en consultar la documentación oficial de DirectAdmin o contactar con tu proveedor de hosting. Ellos podrán guiarte según tu entorno particular.


Este artículo ha sido redactado con fines educativos. Asegúrate de comprender completamente las implicaciones de cada cambio antes de aplicarlo en un entorno de producción.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel