Seguridad Equipo Avantys 11 min

Seguridad en VPS cPanel: Guía Completa 2025

Aprende a proteger tu VPS cPanel contra ataques, malware y vulnerabilidades. Configuración de firewall, 2FA, cPHulk, Imunify360 y mejores prácticas.

// Compartir

Seguridad en VPS cPanel: Guía Completa 2025

Un VPS mal configurado es una invitación abierta a los atacantes.

Cada mes detectamos miles de intentos de fuerza bruta contra paneles cPanel, inyecciones SQL en WordPress desactualizados y malware en cuentas comprometidas. La buena noticia: el 90% de estos ataques se pueden prevenir con configuraciones básicas.

En esta guía te muestro cómo proteger tu VPS cPanel desde cero. No teoría abstracta: configuraciones concretas que puedes aplicar hoy.

Las 3 amenazas principales contra tu VPS cPanel

Antes de protegerte, necesitas entender contra qué te defiendes:

1. Ataques de fuerza bruta

Bots automatizados intentando miles de combinaciones de usuario/contraseña contra:

  • Login de cPanel y WHM
  • SSH
  • FTP
  • Cuentas de correo
  • Paneles de administración de CMS (wp-admin)

2. Malware y código malicioso

Archivos infectados que llegan a tu servidor mediante:

  • Plugins y temas de WordPress pirateados
  • Vulnerabilidades en CMS desactualizados
  • Formularios de subida sin validación
  • Cuentas comprometidas

3. Explotación de vulnerabilidades

Ataques dirigidos que aprovechan:

  • Software desactualizado (cPanel, PHP, Apache)
  • Configuraciones inseguras por defecto
  • Permisos de archivos incorrectos
  • Funciones PHP peligrosas habilitadas

Arquitectura de seguridad en capas

Capas de seguridad en VPS cPanel - Firewall, WAF, Antimalware, Backups

La seguridad efectiva funciona en capas. Si una falla, las demás te protegen:

CapaFunciónHerramientas
PerímetroFiltrar tráfico maliciosoCSF/iptables, Fail2ban
AplicaciónBloquear ataques webModSecurity WAF
AutenticaciónImpedir accesos no autorizados2FA, cPHulk, contraseñas fuertes
SistemaDetectar y eliminar malwareImunify360, ClamAV
RecuperaciónRestaurar tras incidentesBackups automatizados

Vamos a configurar cada una.

Capa 1: Firewall y protección perimetral

Instalar CSF (ConfigServer Security & Firewall)

[!WARNING] Fin de soporte de CSF: ConfigServer ha anunciado que dejará de dar soporte a CSF el 31 de agosto de 2025.

Por este motivo, no recomendamos realizar nuevas instalaciones de CSF. cPanel ha anunciado que realizará un fork del proyecto para mantenerlo y publicarlo bajo su propia marca a partir de 2026. Puedes seguir el desarrollo de esta iniciativa aquí.

Para nuevas instalaciones, recomendamos utilizar Imunify360 o esperar a la solución nativa de cPanel.

Si ya tienes CSF instalado, seguirá funcionando, pero dejará de recibir actualizaciones de seguridad después de la fecha indicada.

Configuración esencial (para instalaciones existentes):

  1. Ve a WHM → Plugins → ConfigServer Security & Firewall
  2. En “csf - ConfigServer Firewall”, haz clic en “Firewall Configuration”
  3. Configura estos valores esenciales:
TESTING = "0"           # Desactivar modo test
RESTRICT_SYSLOG = "3"   # Restringir acceso a syslog
SMTP_BLOCK = "1"        # Bloquear SMTP saliente (excepto autenticado)
LF_ALERT_TO = "[email protected]"  # Alertas por email
  1. Guarda y reinicia CSF

Configurar puertos permitidos

Solo abre los puertos que realmente necesitas:

Puertos esenciales cPanel:

  • 80, 443: HTTP/HTTPS
  • 21, 20: FTP (considera SFTP en su lugar)
  • 22: SSH (cámbialo a otro puerto)
  • 25, 465, 587: SMTP
  • 110, 995: POP3
  • 143, 993: IMAP
  • 2082-2083: cPanel
  • 2086-2087: WHM
  • 2095-2096: Webmail

Cambiar el puerto SSH

El puerto 22 recibe miles de ataques diarios. Cambiarlo reduce el ruido:

# Editar configuración SSH
nano /etc/ssh/sshd_config

# Cambiar línea Port 22 a:
Port 2468    # Elige un puerto entre 1024-65535

# Reiniciar SSH
systemctl restart sshd

Importante: Asegúrate de abrir el nuevo puerto en CSF antes de cerrar tu sesión actual.

Deshabilitar login root por SSH

Crea un usuario con privilegios sudo en lugar de usar root:

# Crear usuario
adduser administrador
passwd administrador

# Añadir a grupo wheel (sudo)
usermod -aG wheel administrador

# Editar SSH config
nano /etc/ssh/sshd_config

# Cambiar a:
PermitRootLogin no

# Reiniciar SSH
systemctl restart sshd

Ahora conéctate como “administrador” y usa sudo para comandos root.

Capa 2: Protección de aplicaciones web (WAF)

Activar ModSecurity

ModSecurity es un Web Application Firewall que bloquea ataques como SQL injection y XSS.

Activar en WHM:

  1. Ve a WHM → Security Center → ModSecurity Configuration
  2. Cambia a “On” si está desactivado
  3. En “Rules List”, selecciona un conjunto de reglas (OWASP recomendado)

Configurar reglas OWASP CRS

Las reglas OWASP Core Rule Set son el estándar de la industria:

  1. WHM → Security Center → ModSecurity Tools
  2. Haz clic en “Rules Deployment”
  3. Selecciona “OWASP ModSecurity Core Rule Set”
  4. Aplica las reglas

Nota: Algunas reglas pueden generar falsos positivos. Monitoriza los logs y ajusta excepciones según sea necesario.

Imunify360: Protección integral

Si buscas seguridad profesional sin complicaciones, Imunify360 es la mejor opción. Combina:

  • Firewall inteligente con IA
  • Protección contra fuerza bruta
  • Escaneo y limpieza de malware
  • Defensa proactiva contra ataques zero-day
  • Parches virtuales para vulnerabilidades

Instalación:

wget https://repo.imunify360.cloudlinux.com/defence360/i360deploy.sh
bash i360deploy.sh --key TU_CLAVE_LICENCIA

Una vez instalado, aparece en WHM → Plugins → Imunify360.

Con el VPS cPanel administrado de Avantys, Imunify360 viene preinstalado y configurado como parte del servicio de administración.

Capa 3: Autenticación y control de acceso

Activar autenticación de dos factores (2FA)

2FA añade una capa extra: aunque roben tu contraseña, necesitan el código de tu móvil.

Activar 2FA en WHM:

  1. WHM → Security Center → Two-Factor Authentication
  2. Haz clic en “Configure Two-Factor Authentication”
  3. Activa “Enable Two-Factor Authentication”
  4. Escanea el código QR con Google Authenticator o Authy

Forzar 2FA para todas las cuentas cPanel:

En la misma sección, activa “Require Two-Factor Authentication for all cPanel accounts”.

Configurar cPHulk (protección fuerza bruta nativa)

cPHulk viene integrado en cPanel y bloquea IPs tras varios intentos fallidos.

Activar en WHM:

  1. WHM → Security Center → cPHulk Brute Force Protection
  2. Haz clic en “Enable”
  3. Configura estos valores:
OpciónValor recomendado
IP Based Brute Force ProtectionEnable
Maximum Failures Per IP5
IP Brute Force Protection Period15 minutos
Maximum Failures Per Account10
Automatic IP BlockingEnable

Añadir tu IP a la whitelist:

Si tienes IP fija, añádela para no bloquearte a ti mismo:

WHM → Security Center → cPHulk → Whitelist Management → Add IP

Políticas de contraseñas fuertes

Obliga a todos los usuarios a usar contraseñas seguras:

  1. WHM → Security Center → Password Strength Configuration
  2. Establece fuerza mínima: 65 (sobre 100)
  3. WHM → Security Center → Configure Security Policies
  4. Activa “Password Age Requirement” (90 días recomendado)

Capa 4: Seguridad a nivel de sistema

Mantener todo actualizado

El 80% de los ataques exitosos explotan vulnerabilidades conocidas con parche disponible.

Actualizar cPanel:

/usr/local/cpanel/scripts/upcp --force

Configurar actualizaciones automáticas:

WHM → Server Configuration → Update Preferences → Automatic Updates: “Release”

Actualizar sistema operativo:

# AlmaLinux/Rocky Linux
dnf update -y

Configurar PHP de forma segura

PHP mal configurado es la puerta de entrada más común para malware.

WHM → MultiPHP INI Editor → Editor Mode:

disable_functions = exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source
expose_php = Off
allow_url_fopen = Off
allow_url_include = Off
display_errors = Off
log_errors = On

Importante: Algunas aplicaciones legítimas necesitan estas funciones. Prueba antes de aplicar en producción.

Permisos de archivos correctos

Permisos incorrectos permiten que atacantes escriban archivos maliciosos.

Valores correctos para WordPress:

TipoPermiso
Directorios755
Archivos644
wp-config.php600

Corregir permisos masivamente:

# Directorios
find /home/usuario/public_html -type d -exec chmod 755 {} \;

# Archivos
find /home/usuario/public_html -type f -exec chmod 644 {} \;

# wp-config.php
chmod 600 /home/usuario/public_html/wp-config.php

Instalar antivirus ClamAV

ClamAV escanea archivos en busca de malware conocido.

Instalar desde WHM:

  1. WHM → cPanel → Manage Plugins
  2. Busca “ClamAV” y actívalo
  3. Los usuarios pueden escanear desde cPanel → Advanced → Virus Scanner

Proteger directorios temporales

Los atacantes a menudo usan /tmp para ejecutar código malicioso.

# Montar /tmp con opciones restrictivas
# Añadir a /etc/fstab:
tmpfs /tmp tmpfs defaults,noexec,nosuid,nodev 0 0

# Aplicar cambios
mount -o remount /tmp

Capa 5: Backups y recuperación

La seguridad perfecta no existe. Los backups son tu red de seguridad.

Configurar backups automáticos en WHM

  1. WHM → Backup → Backup Configuration
  2. Activa “Enable Backup”
  3. Configura:
OpciónRecomendación
Backup TypeCompressed
Backup DailyEnable
Backup WeeklyEnable
Backup MonthlyEnable
RetentionDaily: 7, Weekly: 4, Monthly: 2

Almacenamiento externo de backups

Guardar backups en el mismo servidor es peligroso. Si hackean el servidor, pierdes los backups también.

Opciones recomendadas:

  • Servidor remoto: Configura en WHM → Backup → Backup Destination con SFTP
  • Amazon S3: Usa el plugin de backup de cPanel con credenciales AWS
  • Google Drive/Dropbox: Mediante scripts o plugins de terceros

Probar la restauración

Un backup que no has probado restaurar no es un backup. Programa pruebas periódicas:

  1. Crea una cuenta de prueba
  2. Restaura un backup anterior
  3. Verifica que los archivos, bases de datos y correos funcionan

Checklist de seguridad rápido

Checklist de seguridad VPS cPanel - Configuraciones esenciales

Usa esta lista para verificar tu configuración:

Firewall y red

  • Firewall configurado (Imunify360 o CSF existente)
  • Solo puertos necesarios abiertos
  • Puerto SSH cambiado del 22
  • Login root por SSH deshabilitado

Autenticación

  • 2FA activado en WHM
  • cPHulk activo con límites configurados
  • Política de contraseñas fuertes (65+)
  • IP propia en whitelist de cPHulk

Aplicación web

  • ModSecurity activo con reglas OWASP
  • PHP con funciones peligrosas deshabilitadas
  • allow_url_fopen = Off
  • display_errors = Off

Sistema

  • cPanel actualizado a última versión
  • Sistema operativo actualizado
  • ClamAV o Imunify360 instalado
  • /tmp montado con noexec

Backups

  • Backups automáticos diarios activos
  • Destino de backup externo configurado
  • Restauración probada en los últimos 30 días

¿Prefieres seguridad sin complicaciones?

El VPS cPanel administrado de Avantys incluye toda esta configuración de seguridad aplicada desde el primer día. Firewall avanzado, Imunify360, backups automáticos externos y monitorización 24/7.

Ver Planes VPS cPanel

Monitorización y respuesta a incidentes

Logs que debes vigilar

LogUbicaciónQué buscar
Acceso cPanel/usr/local/cpanel/logs/access_logLogins fallidos, IPs sospechosas
Errores Apache/var/log/apache2/error_logAtaques web, errores PHP
SSH/var/log/secureIntentos de acceso
Mail/var/log/exim_mainlogSpam saliente, cuentas comprometidas
CSF/var/log/lfd.logBloqueos de firewall

Configurar alertas por email

En WHM → Server Contacts → Contact Information, configura:

  • System Administrator Email: [email protected]
  • Activa notificaciones para: Disk usage, Bandwidth, Security alerts

CSF también envía alertas. Configura en: WHM → Plugins → CSF → Firewall Configuration → LF_ALERT_TO

Qué hacer si te hackean

  1. No entres en pánico. La mayoría de hacks se pueden limpiar.
  2. Aísla el servidor si es posible (corta acceso de red excepto tu IP)
  3. Identifica la entrada: Revisa logs de acceso y fecha de modificación de archivos
  4. Restaura desde backup limpio si tienes uno reciente
  5. Cambia TODAS las contraseñas: cPanel, FTP, MySQL, SSH
  6. Escanea con Imunify360/ClamAV para detectar archivos infectados
  7. Actualiza todo: CMS, plugins, temas, PHP
  8. Refuerza la seguridad aplicando las medidas de esta guía

FAQ: Preguntas frecuentes

¿Es suficiente el firewall del proveedor de VPS?

Generalmente no. Los firewalls de red del datacenter protegen a nivel de infraestructura, pero necesitas protección a nivel de aplicación (CSF, ModSecurity) y de cuentas (cPHulk, 2FA).

¿Imunify360 o CSF + ModSecurity + ClamAV?

Imunify360 integra todas esas funciones y añade IA para detección proactiva. Si el presupuesto lo permite, Imunify360 es más completo y fácil de gestionar. Dado el fin de soporte de CSF en 2025, Imunify360 es la opción recomendada para nuevas instalaciones.

¿Cada cuánto debo actualizar cPanel?

Configura actualizaciones automáticas en el canal “Release” (estable). Las actualizaciones de seguridad se aplican automáticamente. Para actualizaciones mayores, programa una ventana de mantenimiento y prueba antes en staging si tienes sitios críticos.

¿Por qué deshabilitar allow_url_fopen?

Esta función permite que PHP descargue archivos remotos. Los atacantes la usan para descargar shells y malware. La mayoría de aplicaciones legítimas funcionan sin ella. Si algo falla, habilítala solo para esa cuenta específica.

¿Los backups en el mismo servidor son seguros?

No. Si el servidor se compromete o falla el disco, pierdes servidor y backups. Siempre configura un destino externo: otro servidor, S3, o servicio de backup en la nube.

¿Cómo sé si mi servidor está comprometido?

Señales de alerta:

  • Uso de CPU/RAM anormalmente alto
  • Emails salientes que no reconoces
  • Archivos modificados recientemente que no tocaste
  • Nuevos usuarios o cuentas FTP desconocidas
  • IPs bloqueadas en listas negras (verifica en mxtoolbox.com)

¿Es seguro usar cPanel en un VPS sin CloudLinux?

Sí, pero CloudLinux añade aislamiento entre cuentas (CageFS) que impide que una cuenta comprometida afecte a otras. En VPS con múltiples clientes, CloudLinux es muy recomendable.

¿Debo bloquear el acceso a xmlrpc.php de WordPress?

Sí. El archivo xmlrpc.php es un vector de ataque común para fuerza bruta. Bloquéalo en .htaccess si no usas pingbacks ni publicación remota:

<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>

Conclusión

La seguridad de un VPS cPanel no es un proyecto que se hace una vez. Es un proceso continuo de actualización, monitorización y ajuste.

Los pasos más importantes son:

  1. Firewall configurado (Imunify360 o solución nativa)
  2. Autenticación robusta (2FA + contraseñas fuertes + cPHulk)
  3. Software actualizado (cPanel, SO, CMS)
  4. Backups externos probados y funcionando

Si implementas solo estas cuatro cosas, ya estarás mejor protegido que el 80% de los VPS.

Para quienes prefieren centrarse en su negocio sin preocuparse por la seguridad del servidor, el VPS cPanel administrado de Avantys incluye todas estas medidas aplicadas y mantenidas por nuestro equipo técnico.


Guías relacionadas del cluster VPS cPanel

Complementa tu conocimiento con estas guías:

Configuración y optimización

Fundamentos


Última actualización: Diciembre 2025. Guía verificada con cPanel 118 y WHM.

VPS cPanel Administrado

La potencia de un VPS con la facilidad de cPanel. Soporte en español.

Ver VPS gestionado
// Boletín

Suscríbete al boletín

Guías nuevas, sin spam. Cancela cuando quieras.