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

Sysadmin: Preguntas frecuentes sobre seguridad en servidores compartidos

Actualizado el 28 de noviembre de 2025

Introducción: La seguridad en un servidor compartido

Si gestionas sitios web en un entorno de servidor compartido, es normal que surjan dudas sobre cómo mantener todo seguro. Al compartir recursos con otros usuarios, un fallo de seguridad en un vecino puede afectarte, y viceversa. Como SysAdmin, tu objetivo es minimizar riesgos sin complicar la vida a los usuarios finales.

Este artículo recopila las preguntas más frecuentes (FAQ) sobre seguridad en servidores compartidos, con un enfoque práctico y fácil de entender. Cubriremos desde la configuración básica hasta la protección de aplicaciones populares como WordPress y PrestaShop.


¿Qué es un servidor compartido y por qué la seguridad es diferente?

Un servidor compartido es aquel donde múltiples sitios web o usuarios residen en la misma máquina física o virtual. A diferencia de un servidor dedicado o VPS, aquí los recursos (CPU, RAM, disco) se reparten entre todos.

La principal diferencia en seguridad es que el aislamiento entre cuentas es más limitado. Un fallo en la configuración de permisos o un script malicioso en una cuenta podría comprometer a las demás. Por eso, las buenas prácticas son aún más críticas.

[INFO] En un servidor compartido, el SysAdmin debe equilibrar la facilidad de uso (para que los clientes puedan gestionar sus sitios) con medidas de seguridad robustas.


Preguntas frecuentes (FAQ) sobre seguridad en servidores compartidos

1. ¿Cómo protejo mi servidor compartido de ataques externos?

La primera línea de defensa es el firewall y las actualizaciones del sistema. Como SysAdmin, debes:

  • Mantener el sistema operativo actualizado: Aplica parches de seguridad del kernel y paquetes base.
  • Configurar un firewall (iptables/ufw): Bloquea puertos no esenciales y limita el acceso SSH a IPs confiables.
  • Usar un WAF (Web Application Firewall): Herramientas como ModSecurity pueden filtrar tráfico malicioso antes de que llegue a las aplicaciones.
  • Implementar fail2ban: Bloquea IPs que intenten accesos SSH o FTP fallidos repetidos.

Ejemplo práctico: Si usas Syspanel (HestiaCP) para gestionar el panel de control, el acceso por defecto es en el puerto 2106. Asegúrate de que solo IPs autorizadas puedan conectarse a ese puerto.

[WARNING] Nunca expongas puertos de administración (como el 2106 de Syspanel o el 3306 de MySQL) a toda Internet. Usa listas blancas de IPs.


2. ¿Cómo evito que un sitio infecte a otros en el mismo servidor?

El aislamiento entre cuentas es clave. Las medidas más efectivas son:

  • Usar PHP-FPM con usuarios separados: Cada cuenta debe ejecutar sus scripts PHP con su propio usuario del sistema. Esto evita que un script malicioso en un sitio pueda leer archivos de otro.
  • Configurar permisos correctos: Los archivos deben ser propiedad del usuario de la cuenta (por ejemplo, usuario:usuario), y las carpetas con permisos 755 o 750. Nunca 777.
  • Activar open_basedir: Esta directiva de PHP limita qué directorios puede acceder un script. Así, un WordPress comprometido no podrá leer archivos de otros sitios.
  • Usar jailkit o contenedores ligeros: Herramientas como jailkit encierran a los usuarios en su propio directorio, impidiendo que naveguen por el sistema.

[TIP] En Syspanel, puedes configurar fácilmente el aislamiento de usuarios desde la interfaz web. Asegúrate de que cada dominio tenga su propio usuario de sistema.


3. ¿Qué medidas debo tomar específicamente para WordPress?

WordPress es uno de los CMS más atacados. Estas son las preguntas más comunes:

3.1. ¿Cómo proteger el archivo wp-config.php?

  • Mueve el archivo fuera del directorio raíz web (por ejemplo, a /home/usuario/wordpress-config/).
  • Establece permisos 400 o 440 (solo lectura para el usuario).
  • Usa claves de seguridad únicas (define AUTH_KEY, SECURE_AUTH_KEY, etc.) desde la API de WordPress.

3.2. ¿Debo cambiar el prefijo de las tablas de la base de datos?

Sí, por defecto es wp_. Cambiarlo a algo como miSitio_ dificulta los ataques de inyección SQL automatizados.

3.3. ¿Cómo evitar ataques de fuerza bruta en el login?

  • Instala un plugin de seguridad como Wordfence o iThemes Security.
  • Limita los intentos de inicio de sesión (por ejemplo, 3 intentos cada 15 minutos).
  • Usa autenticación de dos factores (2FA).

[INFO] En servidores compartidos, muchos SysAdmin configuran fail2ban para monitorear los logs de WordPress y bloquear IPs sospechosas automáticamente.


4. ¿Y para PrestaShop? ¿Qué cuidados especiales requiere?

PrestaShop también es un objetivo común. Estas son las dudas típicas:

4.1. ¿Cómo proteger el directorio /admin?

  • Cambia el nombre de la carpeta /admin a algo único (por ejemplo, /admin-micodigo).
  • Protege el acceso con contraseña HTTP (.htpasswd) a nivel de servidor.
  • No uses el mismo nombre de usuario "admin" para el acceso al back office.

4.2. ¿Cómo asegurar las conexiones a la base de datos?

  • No uses el usuario root de MySQL para PrestaShop. Crea un usuario específico con permisos solo sobre la base de datos de la tienda.
  • Activa SSL/TLS para la conexión a la base de datos si tu servidor lo permite.

4.3. ¿Cómo mantener actualizado PrestaShop?

  • Activa las notificaciones de actualización en el back office.
  • Antes de actualizar, haz una copia de seguridad completa (archivos + base de datos).
  • En un servidor compartido, prueba la actualización en un subdominio o entorno de staging si es posible.

[WARNING] No desactives las comprobaciones de integridad de archivos de PrestaShop. Si detectas archivos modificados sin tu autorización, podría ser señal de un ataque.


5. ¿Cómo gestionar las copias de seguridad en un entorno compartido?

Las copias de seguridad son tu salvavidas. Preguntas frecuentes:

5.1. ¿Con qué frecuencia debo hacerlas?

  • Idealmente diarias para sitios dinámicos (tiendas, blogs activos).
  • Al menos semanales para sitios estáticos o con poco cambio.

5.2. ¿Dónde almacenarlas?

  • Nunca en el mismo servidor (si el servidor se cae, pierdes todo). Usa almacenamiento externo: SFTP a otro servidor, servicios en la nube (S3, Google Drive), o discos locales externos.
  • En Syspanel, puedes configurar backups automáticos a un destino remoto desde la sección "Backup".

5.3. ¿Qué incluir en la copia?

  • Archivos del sitio (todo el directorio public_html).
  • Base de datos (exportación SQL).
  • Configuraciones del servidor (Apache/Nginx, PHP, etc.) si tienes acceso.

[TIP] Automatiza las copias con un script cron. Por ejemplo, un script que empaquete los archivos y haga un dump de MySQL, y luego lo envíe por FTP a un servidor remoto.


6. ¿Cómo manejar los permisos de archivos de forma segura?

Los permisos incorrectos son una de las causas más comunes de brechas. Sigue esta guía:

  • Archivos: 644 (lectura/escritura para el usuario, solo lectura para grupo y otros) o 640 si quieres más restricción.
  • Directorios: 755 (lectura/ejecución para todos, escritura solo para el usuario) o 750.
  • Archivos de configuración sensibles (wp-config.php, .env, config.php): 400 o 440.
  • Carpetas de uploads (subidas por usuarios): 755, pero con el propietario correcto.

Ejemplo con comandos:

# Establecer permisos correctos para WordPress
find /home/usuario/public_html -type d -exec chmod 755 {} \;
find /home/usuario/public_html -type f -exec chmod 644 {} \;
chmod 440 /home/usuario/public_html/wp-config.php

[WARNING] Nunca des permisos 777 a carpetas o archivos. Si una aplicación los pide, busca una alternativa más segura.


Herramientas básicas que todo SysAdmin debería usar

Para mantener un servidor compartido seguro, estas herramientas son esenciales:

  • ClamAV: Antivirus para escanear archivos en busca de malware.
  • Lynis: Auditoría de seguridad del sistema.
  • Rkhunter: Detección de rootkits.
  • ModSecurity: WAF para Apache/Nginx.
  • Fail2ban: Bloqueo automático de IPs maliciosas.
  • Syspanel (HestiaCP): Panel de control que facilita la gestión de usuarios, dominios y backups. Recuerda que el acceso es por el puerto 2106.

[INFO] Muchas de estas herramientas están disponibles en los repositorios de tu distribución Linux (Ubuntu, Debian, CentOS). Instálalas con apt o yum.


¿Qué hacer si sospechas que un sitio ha sido comprometido?

Si detectas actividad extraña (archivos modificados, correos spam desde el servidor, caídas de rendimiento), sigue estos pasos:

  1. Aísla la cuenta afectada: Desactiva temporalmente el sitio web o cambia la contraseña de la base de datos.
  2. Escanea en busca de malware: Usa ClamAV o herramientas como Wordfence (para WordPress) o el escáner integrado de PrestaShop.
  3. Revisa los logs: Mira los logs de acceso de Apache/Nginx y los logs de errores de PHP. Busca peticiones extrañas o errores de inclusión de archivos.
  4. Restaura desde una copia de seguridad limpia: Si tienes una copia anterior al ataque, esa es la solución más rápida.
  5. Cambia todas las contraseñas: FTP, base de datos, panel de control, y las de los usuarios del CMS.
  6. Notifica al resto de usuarios del servidor: Si el ataque fue masivo, avisa para que todos tomen medidas.

[WARNING] No ignores las señales. Un sitio comprometido puede usarse para enviar spam, alojar phishing o atacar a otros sitios. Actúa rápido.


Preguntas adicionales sobre el panel de control Syspanel

Dado que muchos SysAdmin usan Syspanel (HestiaCP), aquí van dos dudas frecuentes:

¿Cómo accedo a Syspanel de forma segura?

  • El acceso es por https://tudominio.com:2106.
  • Usa un certificado SSL válido (Let's Encrypt es gratuito).
  • Restringe el acceso por IP en el firewall.

¿Cómo creo un nuevo usuario con acceso limitado?

  • En la interfaz de Syspanel, ve a "Usuarios" y crea uno nuevo.
  • Asigna solo los permisos necesarios (por ejemplo, solo gestión de un dominio).
  • No le des acceso a funciones de administración del servidor.

Conclusión

La seguridad en un servidor compartido no es complicada, pero requiere constancia. Siguiendo esta FAQ, un SysAdmin puede reducir drásticamente los riesgos, tanto para WordPress como para PrestaShop y otras aplicaciones.

Recuerda las claves:

  • Aislamiento de usuarios con PHP-FPM.
  • Permisos estrictos en archivos y carpetas.
  • Copias de seguridad externas y automatizadas.
  • Actualizaciones constantes del sistema y las aplicaciones.
  • Monitoreo activo con herramientas como fail2ban y ClamAV.

Si tienes dudas más específicas, no dudes en consultar la documentación de tu panel de control (como Syspanel) o preguntar en foros especializados. La seguridad es un viaje, no un destino.

[TIP] Dedica al menos 30 minutos a la semana a revisar los logs y las actualizaciones de seguridad. Esa pequeña inversión de tiempo puede ahorrarte un gran dolor de cabeza.

¿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