Gestión de Hosting Compartido
NoxPanel integra un módulo de hosting compartido que permite gestionar sitios web, dominios, DNS, correo electrónico, FTP, bases de datos y certificados SSL desde una única interfaz.
Note
Para acceder al módulo de hosting necesitas el permiso can_access_hosting y pertenecer a un tenant con un paquete de hosting activo.
Acceso
El dashboard de hosting se encuentra en /hosting/. Desde allí puedes gestionar todos los recursos asociados a tu cuenta:
Sitios web — Crear, listar y eliminar sitios
Bases de datos — MySQL gestionadas automáticamente
Dominios y DNS — Zonas DNS con registros A, AAAA, CNAME, MX, TXT, etc.
Correo electrónico — Buzones, alias y dominios de email
FTP — Cuentas FTP vinculadas a sitios
SSL — Certificados Let’s Encrypt, personalizados o autofirmados
Gestor de archivos — Explorador de archivos integrado
Descripción General
Cada usuario pertenece a uno o más tenants (organizaciones). Cada tenant tiene un paquete de hosting que define cuotas:
Número máximo de sitios web
Número de bases de datos
Almacenamiento total en GB
Buzones de correo, alias, cuentas FTP, usuarios shell
Puedes ver tu uso actual y cuotas disponibles desde el dashboard principal.
Warning
Si alcanzas la cuota máxima de un recurso, no podrás crear nuevos elementos hasta que se libere espacio o el administrador amplíe tu plan.
Funcionalidades
Crear un Sitio Web
Accede a
/hosting/sites/create/o pulsa «Nuevo Sitio» en el dashboard.Rellena el formulario con el dominio deseado.
El sistema provisionará el sitio automáticamente en el motor de hosting.
# Ejemplo via API REST — crear un sitio web
curl -X POST https://tu-dominio.com/hosting/api/rest/sites/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"domain": "ejemplo.com",
"ip_address": "*",
"ssl_enabled": true
}'
El sitio se creará con un document_root automático y estará disponible en pocos minutos.
Gestionar DNS
Desde la sección de DNS puedes administrar las zonas y registros de tus dominios.
Tipos de registro soportados:
Tipo |
Nombre |
Uso |
|---|---|---|
|
IPv4 Address |
Apuntar dominio a una dirección IP |
|
IPv6 Address |
Apuntar dominio a una dirección IPv6 |
|
Canonical Name |
Alias de un dominio a otro |
|
Mail Exchange |
Servidor de correo del dominio |
|
Text Record |
SPF, DKIM, verificación de dominio |
|
Service |
Localizar servicios (ej: SIP, XMPP) |
|
Certificate Authority |
Autoridades permitidas para emitir SSL |
# Ejemplo — crear un registro DNS tipo A
curl -X POST https://tu-dominio.com/hosting/api/rest/dns-records/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"zone": 1,
"record_type": "A",
"name": "www",
"data": "203.0.113.50",
"ttl": 3600
}'
Note
Los cambios de DNS pueden tardar hasta 24-48 horas en propagarse globalmente, aunque normalmente se aplican en minutos.
Correo Electrónico
El sistema permite gestionar dominios de correo, buzones y alias.
Crear un buzón de email:
Primero asegúrate de que el dominio de correo está creado.
Ve a la sección de buzones y crea uno nuevo.
# Crear un dominio de correo
curl -X POST https://tu-dominio.com/hosting/api/rest/mail-domains/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"domain": "ejemplo.com"}'
# Crear un buzón
curl -X POST https://tu-dominio.com/hosting/api/rest/mailboxes/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"mail_domain": 1,
"email": "info@ejemplo.com",
"local_part": "info",
"name": "Contacto",
"quota_mb": 500,
"imap_enabled": true,
"pop3_enabled": true,
"smtp_enabled": true
}'
Alias de correo permiten redirigir emails de una dirección a otra sin crear un buzón adicional:
# Crear un alias de email
curl -X POST https://tu-dominio.com/hosting/api/rest/mail-aliases/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"mail_domain": 1,
"source": "ventas@ejemplo.com",
"destination": "info@ejemplo.com"
}'
Cuentas FTP
Cada sitio web puede tener una o más cuentas FTP asociadas. Las cuentas FTP están vinculadas a un directorio del sitio.
# Crear una cuenta FTP
curl -X POST https://tu-dominio.com/hosting/api/rest/ftp-accounts/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"site": 1,
"username": "deploy_user",
"password": "contraseña_segura",
"directory": "/web",
"quota_mb": 1024
}'
Tip
Utiliza cuentas FTP separadas para cada desarrollador o servicio que necesite acceso, con directorios restringidos.
Bases de Datos MySQL
Puedes crear bases de datos MySQL asociadas a tu tenant.
Accede a
/hosting/databases/o usa la API.Cada base de datos tiene su usuario y contraseña propios.
# Crear una base de datos
curl -X POST https://tu-dominio.com/hosting/api/rest/databases/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"name": "mi_app_db",
"db_user": "mi_app_user",
"db_password": "contraseña_segura"
}'
Certificados SSL
NoxPanel soporta tres tipos de certificados SSL:
Let’s Encrypt — Gratuito, auto-renovable (recomendado)
Personalizado — Sube tu propio certificado PEM
Autofirmado — Para entornos de desarrollo
# Solicitar certificado Let's Encrypt
curl -X POST https://tu-dominio.com/hosting/api/rest/ssl-certificates/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"site": 1,
"cert_type": "letsencrypt",
"domain": "ejemplo.com",
"auto_renew": true
}'
Warning
Para emitir un certificado Let’s Encrypt, el dominio debe apuntar correctamente al servidor y el puerto 80 debe estar accesible para la verificación HTTP.
Gestor de Archivos
El gestor de archivos integrado está disponible en /hosting/files/. Permite:
Navegar por los directorios de tus sitios web
Subir archivos directamente desde el navegador
Editar archivos de texto online
Crear carpetas y archivos
Eliminar archivos y directorios
Note
El gestor de archivos está aislado por tenant: solo puedes ver y modificar los archivos de los sitios que pertenecen a tu organización.
Usuarios Shell (SSH)
Si tu paquete lo permite, puedes crear usuarios shell para acceder vía SSH al servidor:
# Crear un usuario shell
curl -X POST https://tu-dominio.com/hosting/api/rest/shell-users/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"site": 1,
"username": "admin_ssh",
"shell": "/bin/bash"
}'
Notas
Todos los endpoints de la API REST se encuentran bajo
/hosting/api/rest/.La autenticación se realiza mediante tokens JWT (cabecera
Authorization: Bearer <token>).Los recursos están aislados por tenant: cada usuario solo ve y gestiona los recursos de su organización.
Los paquetes de hosting definen las cuotas máximas. Contacta con el administrador para ampliar límites.
Los cambios en el motor de hosting se aplican de forma asíncrona; algunos pueden tardar unos minutos en estar activos.
See also
Inicio Rápido para Usuarios — Guía de inicio rápido
Facturación y Suscripciones — Gestión de facturación y suscripciones
Sistema de Tickets y Soporte — Sistema de tickets de soporte