Volver al blog
Guides

Alternativa auto-alojada a cPanel: por qué creamos ShadowPanel

cPanel cambió sus precios en 2019 y no ha mirado atrás. Aquí explicamos por qué creamos una alternativa auto-alojada — y qué significa para desarrolladores y agencias que pagan por cuenta.

S
ShadowPanel Team
7 min de lectura

El día en que cPanel cambió su modelo de precios

En junio de 2019, cPanel anunció discretamente una reestructuración de precios que cambiaría para siempre la economía del alojamiento compartido. Las licencias que antes tenían un precio mensual fijo pasaron a cobrarse por cuenta de cPanel — lo que significaba que cada cliente alojado aumentaba la factura mensual.

Para los pequeños proveedores de hosting con unas pocas docenas de sitios, el impacto era manejable. Para las agencias y desarrolladores que gestionaban cientos de sitios de clientes, la factura mensual se multiplicó de repente por tres, cinco o diez.

La comunidad reaccionó con frustración. Los hilos en WHT y Reddit documentaron a operadores en apuros para migrar clientes a alternativas. Algunos se quedaron a pesar del aumento de precios. Otros empezaron a buscar algo diferente.

Nosotros éramos de los que buscaban algo diferente.


Lo que los paneles gratuitos hacen bien — y dónde se quedan cortos

Tras el golpe de precios de cPanel, varios paneles gratuitos y de código abierto ganaron tracción: HestiaCP, CloudPanel, CyberPanel y aaPanel atrajeron cada uno a sus usuarios.

Son genuinamente útiles para configuraciones sencillas. Pero después de administrar hosting en producción durante varios años, siempre nos topábamos con las mismas barreras:

White-label y cuentas de revendedor — HestiaCP tiene soporte básico multiusuario, pero construir una oferta de revendedor adecuada con subcuentas de marca propia, límites de sitios por revendedor y facturación aislada o no está soportado o requiere un desarrollo personalizado significativo.

Flujos de trabajo modernos para desarrolladores — Git deploy con webhooks firmados, gestión de contenedores Docker, entornos de staging con push a producción con un clic: estas funciones están ausentes o añadidas como parches en la mayoría de los paneles gratuitos.

Calidad de la interfaz — CloudPanel tiene un diseño limpio, pero los demás siguen enviando interfaces que parecen de 2012. Un desarrollador que trabaja en VS Code y despliega a través de GitHub Actions lo notará.

Postura de seguridad — CyberPanel ha tenido una serie de vulnerabilidades de alto perfil. aaPanel incluye telemetría que incomoda a los operadores europeos conscientes de la privacidad. No son bloqueantes, pero merece la pena mencionarlos.

Nada de esto es una crítica a los equipos detrás de estos paneles — construir un panel de control de alojamiento completo es genuinamente difícil, y lo han hecho gratis. Pero tras evaluar las opciones, concluimos que la combinación de funciones de agencia + flujos de trabajo dev modernos + UI cuidada + seguridad fiable no existía en un único producto.


Lo que quisimos construir

ShadowPanel empezó como una herramienta interna. Necesitábamos un panel para alojar sitios de clientes que:

  1. Se ejecutara en nuestro propio VPS — sin phone-home por cuenta, sin dependencia de un plano de control de terceros.
  2. Cubriera el stack completo — DNS, correo, SSL, bases de datos, copias de seguridad, firewalls — no solo un deployer que se detiene en Nginx.
  3. Soportara flujos de trabajo de agencia — white-label con logo y colores personalizados, subcuentas de revendedor, cuotas de sitios por revendedor.
  4. Se sintiera moderno — UI en React, modo oscuro/claro, gestión de sitios por pestañas, notificaciones en tiempo real vía SSE.
  5. Tuviera un precio justo — una licencia plana única o anual, no una suscripción por servidor o por cuenta que escala en tu contra.

Después de construirlo, decidimos publicarlo.


Cómo funciona ShadowPanel

Cada instalación de ShadowPanel incluye:

Gestión de sitios

Cada sitio tiene su propio pool PHP-FPM que se ejecuta bajo un usuario Linux dedicado, con open_basedir para impedir el acceso entre sitios. Las versiones de PHP del 5.6 al 8.4 se pueden asignar por sitio. Los vhosts de Nginx se gestionan automáticamente.

SSL

Los certificados Let's Encrypt se emiten al crear el sitio y se renuevan automáticamente cuando alcanzan un umbral de 30 días para su vencimiento. Se soportan certificados wildcard.

Bases de datos

Cada sitio tiene una base de datos MySQL/MariaDB aislada y un usuario dedicado, provisionados por el daemon privilegiado — sin credenciales root compartidas.

Correo electrónico

Stack de correo completo con Postfix y Dovecot: crear buzones, establecer contraseñas, acceder al webmail. Los registros DNS se crean automáticamente.

DNS

Zonas y registros BIND9 gestionados desde la interfaz del panel, con soporte para la API DNS de Hetzner si prefieres DNS externo.

Copias de seguridad

Copias de seguridad bajo demanda y programadas en almacenamiento compatible con S3 (Pro/Agency). Los archivos se cifran opcionalmente con AES-256 GPG.

Seguridad

Gestión del firewall UFW, configuración de Fail2ban e integración de CrowdSec — todo visible y configurable desde el panel.


Arquitectura: por qué nos tomamos en serio la separación de privilegios

La parte de la que estamos más orgullosos es la arquitectura. La mayoría de los paneles ejecutan todo como root o como un único proceso privilegiado. ShadowPanel divide las responsabilidades:

Navegador → HTTPS → Nginx
                       └→ Socket Unix → Proceso API (user: shadowpanel)
                                            └→ Socket Unix → Daemon (user: root)

La API gestiona la autenticación, validación, limitación de velocidad y la lógica de negocio. Nunca toca directamente el sistema de archivos ni ejecuta comandos.

El Daemon expone una lista blanca estricta de comandos tipados y validados con Zod a través de un socket Unix. Cada comando utiliza execFile — nunca exec, nunca concatenación de strings en shell. Un proceso API comprometido no puede escalar privilegios más allá de lo que permite la lista blanca.

Las acciones de administrador que mutan licencias o roles requieren una verificación de segundo factor embebida en el JWT. Las entradas de caché Redis para los permisos de usuario están firmadas con HMAC-SHA256 para que un compromiso de escritura en Redis no pueda escalar un usuario a administrador.


Lo que ShadowPanel aún no hace

La honestidad importa aquí. ShadowPanel es un producto relativamente joven. A día de hoy:

  • Sin soporte Windows — solo Ubuntu 22.04 y 24.04 LTS.
  • Sin OpenLiteSpeed — solo Nginx + PHP-FPM. LiteSpeed no está en la hoja de ruta por ahora.
  • Sin CDN integrado — tendrás que configurar Cloudflare u otro CDN por separado.
  • Sin marketplace — todavía no hay ecosistema de plugins. Las extensiones están en la hoja de ruta.
  • Solo soporte comunitario en el tier gratuito — los planes de pago incluyen soporte prioritario por correo.

Preferimos que lo instales sabiéndolo antes que descubrirlo después de la migración.


Comenzar — tier gratuito, sin tarjeta de crédito

El tier gratuito de ShadowPanel soporta 3 sitios web en un único servidor, sin límite de tiempo y sin tarjeta de crédito.

Instalación en un VPS Ubuntu 22.04 o 24.04 limpio:

curl -fsSL https://shadowpanel.de/install.sh | bash

El instalador tarda 5–10 minutos e imprime tus credenciales de administrador al final. Abre https://<tu-dominio>:2087 para iniciar sesión.

Si necesitas más de 3 sitios o quieres las funciones Pro (Git deploy, Docker, staging, copias de seguridad automáticas, instalador 1-clic), consulta la página de precios.


Mantente al día

Publicamos actualizaciones regularmente. Suscríbete al changelog para recibir notificaciones de nuevas versiones. Si tienes algún problema, abre un ticket de soporte o únete a la comunidad de Discord.

Construimos esto porque lo necesitábamos nosotros mismos. Esperamos que también te sea de utilidad.

Usamos cookies

Usamos cookies para mejorar su experiencia y recordar sus preferencias. Puede gestionar sus opciones a continuación. Más información.

ShadowPanel

Gestione sus preferencias de cookies a continuación. Las cookies esenciales siempre están activas ya que son necesarias para el funcionamiento del sitio.

Esenciales

Necesarias para el funcionamiento del sitio, incluida la autenticación de sesión y la protección CSRF. No se pueden desactivar.

Siempre activo

Funcionales

Recuerda su preferencia de idioma para que no tenga que volver a seleccionarla en cada visita.

Analíticas

Nos ayuda a entender cómo usan los visitantes el sitio para mejorarlo. No se venden datos personales.

Marketing

Utilizado por Google Ads para medir las conversiones publicitarias y mejorar la segmentación de campañas. No se venden datos personales.