DirectAdmin: cómo ocultar la versión del servidor y aumentar la seguridad
¿Por qué ocultar la versión de tu servidor DirectAdmin?
Cuando un atacante quiere entrar en un servidor, lo primero que hace es reconocimiento. Busca pistas sobre qué software usas, qué versiones tienes y qué vulnerabilidades conocidas podrían funcionar contra ti. Si tu servidor muestra la versión exacta de Apache, Nginx, PHP o el propio panel DirectAdmin, le estás dando la mitad del trabajo hecho.
Ocultar la versión del servidor es una práctica básica de seguridad por oscuridad. No es una solución mágica, pero sí una capa extra que frena ataques automatizados y scripts que buscan versiones concretas. Un servidor que no revela su versión parece más difícil de atacar, y muchos bots simplemente pasan al siguiente objetivo.
En este artículo te enseñaré, paso a paso y sin tecnicismos complicados, cómo ocultar la versión de DirectAdmin y de los servicios más comunes. Además, te daré consejos prácticos para reforzar DirectAdmin y que tu servidor sea un hueso duro de roer.
¿Qué información se filtra y por qué es un problema?
Antes de ponernos manos a la obra, es importante que entiendas qué está expuesto. Cuando alguien visita tu web o escanea tu servidor, puede obtener estos datos:
| Dato expuesto | Riesgo |
|---|---|
| Versión de Apache o Nginx | Permite buscar exploits específicos para esa versión. |
| Versión de PHP | Si hay una vulnerabilidad conocida, saben que tu servidor es vulnerable. |
| Versión de DirectAdmin | Facilita ataques dirigidos al panel de administración. |
| Módulos instalados | Ayudan a identificar vectores de ataque adicionales. |
| Sistema operativo | Reduce el abanico de posibles ataques a probar. |
La buena noticia es que todo esto se puede ocultar con unos pocos comandos y ajustes. Vamos a verlo.
Antes de empezar: haz una copia de seguridad
Este es el consejo más aburrido pero también el más importante. Cualquier cambio en la configuración del servidor puede tener efectos inesperados. Un error de sintaxis en un archivo de configuración puede dejar tu web caída o, peor aún, impedir que el servidor arranque.
[WARNING] Haz siempre una copia de seguridad de los archivos que vayas a modificar. Puedes copiarlos con un simple
cp archivo archivo.bak. Si algo sale mal, solo tienes que restaurar la copia.
Cómo ocultar la versión de DirectAdmin en el panel
El panel de DirectAdmin, por defecto, muestra su número de versión en la esquina inferior izquierda y en la página de inicio de sesión. Esto es útil para ti, pero también para los atacantes.
Paso 1: Accede a la configuración de personalización
- Entra a tu panel de DirectAdmin como administrador.
- Ve a Panel de administración → Personalización del panel.
- Busca la sección Mensaje de inicio de sesión o Texto personalizado.
Paso 2: Oculta la versión en la página de login
En la página de inicio de sesión, DirectAdmin muestra la versión en la parte inferior. Para ocultarla, tienes dos opciones:
- Opción A: Usa el campo de CSS personalizado para añadir una regla que oculte el elemento. Por ejemplo, añade esto:
#version { display: none; }
- Opción B: Si tu versión de DirectAdmin lo permite, desactiva la opción Mostrar versión del panel en el mismo menú de personalización.
Paso 3: Oculta la versión dentro del panel
Una vez dentro del panel, la versión suele aparecer en el pie de página. Puedes ocultarla con el mismo truco del CSS personalizado. Añade esta línea al CSS global:
.footer-version { display: none; }
[INFO] No todos los temas de DirectAdmin usan la misma clase CSS. Si el truco anterior no funciona, inspecciona el elemento con el botón derecho del ratón y busca la clase exacta que contiene la versión.
Cómo ocultar la versión de Apache
Apache es el servidor web más común en DirectAdmin. Por defecto, envía una cabecera HTTP llamada Server que incluye el nombre y la versión del software. Por ejemplo:
Server: Apache/2.4.57 (Unix) mod_ssl/2.4.57 OpenSSL/1.1.1t
Un atacante ve esto y ya sabe que tienes Apache 2.4.57. Vamos a cambiar eso.
Paso 1: Edita la configuración de Apache
Conéctate a tu servidor por SSH como root o usuario administrador. Luego, navega al directorio de configuración de Apache:
cd /etc/httpd/conf
Paso 2: Modifica el archivo httpd.conf
Abre el archivo con un editor como nano o vim:
nano httpd.conf
Busca las líneas que contienen ServerTokens y ServerSignature. Si no existen, añádelas al final del archivo.
ServerTokens Prod
ServerSignature Off
- ServerTokens Prod: Solo muestra el nombre del producto (Apache), sin la versión ni el sistema operativo.
- ServerSignature Off: Elimina la firma que aparece en las páginas de error.
Guarda el archivo y sal del editor.
Paso 3: Reinicia Apache
Para que los cambios surtan efecto, reinicia el servicio:
systemctl restart httpd
O, en sistemas más antiguos:
service httpd restart
Paso 4: Verifica el resultado
Usa el siguiente comando para ver qué cabeceras envía tu servidor:
curl -I https://tudominio.com
Ahora deberías ver algo como:
Server: Apache
Sin versión, sin sistema operativo, sin módulos. Perfecto.
[TIP] Si tu servidor usa Nginx en lugar de Apache, el proceso es similar. Edita el archivo
nginx.confy añadeserver_tokens off;dentro del bloquehttp.
Cómo ocultar la versión de PHP
PHP también envía una cabecera llamada X-Powered-By que revela su versión. Ocultarla es muy sencillo.
Paso 1: Edita el archivo php.ini
Localiza el archivo php.ini de tu servidor. Normalmente está en:
/etc/php.ini
O puede haber varios, uno por versión de PHP. Usa este comando para encontrarlo:
php -i | grep "Loaded Configuration File"
Paso 2: Cambia la configuración
Abre el archivo con nano:
nano /etc/php.ini
Busca la línea:
expose_php = On
Cámbiala a:
expose_php = Off
Guarda y cierra el archivo.
Paso 3: Reinicia PHP
El método depende de cómo tengas PHP configurado. Si usas PHP-FPM:
systemctl restart php-fpm
Si usas módulo Apache:
systemctl restart httpd
[WARNING] Si tienes múltiples versiones de PHP instaladas, repite el proceso en cada
php.ini. De lo contrario, algunas versiones seguirán exponiendo sus datos.
Cómo ocultar la versión de DirectAdmin en las cabeceras HTTP
Aunque menos común, DirectAdmin también puede enviar cabeceras que revelen su versión. Para evitarlo, puedes usar una regla de mod_rewrite o un firewall de aplicación web (WAF).
Opción A: Usa mod_headers en Apache
Añade esto al archivo .htaccess de tu dominio o al httpd.conf:
Header unset X-Powered-By
Header unset Server
Esto elimina las cabeceras antes de que lleguen al cliente.
Opción B: Usa un WAF como ModSecurity
ModSecurity es un firewall de aplicación web que puedes instalar en DirectAdmin. Además de proteger contra ataques, puede eliminar cabeceras no deseadas.
cd /usr/local/directadmin/custombuild
./build modsecurity
Luego, configura las reglas para eliminar las cabeceras.
[INFO] Si no quieres complicarte con ModSecurity, la opción del
.htaccesses suficiente para la mayoría de los casos.
Reforzar DirectAdmin: más allá de ocultar versiones
Ocultar la versión es solo el primer paso. Para reforzar DirectAdmin de verdad, te recomiendo aplicar estas medidas adicionales:
1. Cambia el puerto de acceso al panel
Por defecto, DirectAdmin usa el puerto 2222. Cambiarlo a un puerto aleatorio reduce los ataques automatizados.
- Ve a Panel de administración → Configuración del servidor.
- Busca Puerto de administración y cámbialo a un número alto, como 8456.
- Guarda los cambios y reinicia DirectAdmin.
2. Activa la autenticación de dos factores (2FA)
DirectAdmin permite activar 2FA para todos los usuarios. Ve a Panel de administración → Configuración de usuarios y activa la opción.
3. Limita los intentos de inicio de sesión
Usa la herramienta Brute Force Monitor de DirectAdmin. Configúrala para bloquear IPs después de 3-5 intentos fallidos.
4. Mantén todo actualizado
Usa CustomBuild para mantener Apache, PHP, MySQL y el propio DirectAdmin al día:
cd /usr/local/directadmin/custombuild
./build update
./build all
5. Desactiva servicios que no uses
Si no usas FTP, POP3 o IMAP, desactívalos. Menos servicios expuestos = menos superficie de ataque.
6. Usa un firewall a nivel de servidor
Instala CSF (ConfigServer Security & Firewall). Es el firewall más popular para DirectAdmin y bloquea ataques automáticamente.
cd /usr/local/directadmin/custombuild
./build csf
7. Configura un sistema de detección de intrusos
CSF incluye LFD (Login Failure Daemon), que monitorea los logs del servidor y bloquea IPs sospechosas en tiempo real.
Preguntas frecuentes (FAQ)
¿Es ilegal ocultar la versión del servidor?
No. Es una práctica de seguridad estándar recomendada por organizaciones como OWASP. No ocultas nada ilegal, solo evitas dar información innecesaria a posibles atacantes.
¿Puedo ocultar la versión de DirectAdmin sin acceso SSH?
Sí, puedes hacerlo desde el panel de administración usando la personalización CSS. Sin embargo, para Apache y PHP necesitarás acceso SSH.
¿Afecta el rendimiento del servidor?
No. Ocultar la versión no tiene ningún impacto en el rendimiento. Es una medida de seguridad pasiva.
¿Qué hago si algo se rompe después de los cambios?
Restaura las copias de seguridad que hiciste al principio. Si el problema persiste, contacta con tu proveedor de hosting o con el soporte de DirectAdmin.
¿Syspanel es mejor que DirectAdmin?
Syspanel (antes conocido como HestiaCP) es una alternativa gratuita a DirectAdmin. Si estás considerando cambiar, ten en cuenta que Syspanel usa el puerto 2106 para el acceso al panel. Sin embargo, DirectAdmin ofrece más funcionalidades integradas y un soporte más maduro. La elección depende de tus necesidades y presupuesto.
Conclusión
Ocultar la versión de tu servidor es una medida de seguridad sencilla pero muy efectiva. Con los pasos que te he mostrado, puedes ocultar la versión de DirectAdmin, Apache y PHP en menos de 15 minutos. Además, aplicar las medidas de reforzamiento que te he dado hará que tu servidor sea mucho menos atractivo para los atacantes.
Recuerda que la seguridad es un proceso continuo. No basta con hacer estos cambios una vez; debes mantener el servidor actualizado, monitorear los logs y estar al tanto de nuevas vulnerabilidades. Pero con estos pasos, ya has dado un gran salto en la protección de tu servidor.
[TIP] Si te ha quedado alguna duda, deja un comentario o consulta la documentación oficial de DirectAdmin. La comunidad es muy activa y siempre hay alguien dispuesto a ayudar.
Ahora, ve y asegura tu servidor. Tu yo del futuro te lo agradecerá.
