Panel Marzban para VPN: cómo instalar y configurar desde cero, más comparación con 3X-UI y Hiddify
Guía paso a paso para instalar y configurar Marzban para VPN desde cero en 1-2 horas. Aprende a levantar el panel, otorgar accesos, activar SSL, configurar planes, copias de seguridad y monitoreo. Al final, compara con 3X-UI y Hiddify y obtén recomendaciones honestas.
Contenido del artículo
- 1. introducción
- 2. preparación previa
- 3. conceptos básicos
- 4. paso 1: preparamos servidor y accesos
- 5. paso 2: configuramos dominio y dns
- 6. paso 3: instalamos docker y docker compose
- 7. paso 4: configuramos proxy inverso y ssl
- 8. paso 5: instalamos y lanzamos marzban
- 9. paso 6: configuramos protocolos, planes y usuarios
- 10. verificación del resultado
- 11. errores comunes y soluciones
- 12. funciones adicionales
- 13. comparación con 3x-ui y hiddify
- 14. verificación final
- 15. preguntas frecuentes
- 16. conclusión
1. Introducción
En esta guía paso a paso vas a instalar y configurar el panel Marzban para gestionar tu propio servidor VPN basado en Xray. Al final tendrás un panel administrativo funcional con HTTPS, configuraciones listas para usuarios, planes básicos y un conjunto claro de comandos para mantenimiento. Recorreremos desde la elección del servidor y dominio hasta backups periódicos y actualizaciones. Paralelamente, entenderás las diferencias clave entre Marzban, 3X-UI y Hiddify, para que elijas el más adecuado para ti.
¿Para quién es esta guía? Para administradores principiantes, dueños de proyectos que quieren controlar su VPN, y quienes configuran Xray panel por primera vez. Las secciones avanzadas están señalizadas.
¿Qué saber por adelantado? Comandos básicos de Linux, cómo conectarse por SSH, editar archivos y manejar paquetes. Todos los comandos se muestran explícitamente y acompañados de verificaciones.
¿Cuánto tiempo se necesita? De 60 a 120 minutos en un servidor limpio. Si ya tienes dominio y experiencia con Linux, lo harás más rápido.
2. Preparación previa
Herramientas y accesos necesarios
- VPS o servidor dedicado con Ubuntu 22.04 o 24.04 LTS.
- Nombre de dominio para acceder al panel (ejemplo panel.example.com).
- Acceso SSH al servidor con usuario sudo.
- Disponibilidad para abrir puertos 80 y 443 en firewall y panel del proveedor.
Requisitos del sistema
- 1 vCPU, 1-2 GB RAM para empezar; para más de 100 usuarios activos, ideal 2 vCPU y 4 GB RAM.
- Puertos libres 80 y 443 para HTTPS. Puerto 22 para SSH.
- Espacio en disco libre de 10 GB o más.
Qué instalar
- Actualizaciones del sistema y utilidades básicas.
- Docker y el complemento docker compose.
- Nginx y Certbot para emitir certificados TLS, o automatización integrada mediante proxy inverso en Docker.
Copias de seguridad
Si ya tienes datos importantes en el servidor, realiza un backup antes. En un servidor nuevo y limpio este paso puede omitirse, pero luego activaremos copias periódicas para el panel.
Consejo: Crea un archivo local de notas y guarda ahí todas las contraseñas, claves y comandos importantes. Esto facilita la recuperación frente a fallos o migraciones.
3. Conceptos básicos
Términos clave
- Marzban — panel de administración de VPN basado en Xray. Permite crear usuarios, entregar configuraciones, limitar tráfico y tiempo, y conectar múltiples nodos.
- Xray — parte servidor con protocolos VLESS, VMess, Trojan y más. Proporciona transporte y cifrado.
- Reverse Proxy — proxy inverso (como Nginx o Traefik) que recibe HTTPS en el puerto 443 y reenvía solicitudes al servicio interno.
- SSL/TLS — cifrado para HTTPS, garantizando acceso seguro al panel.
- Docker — contenedores que facilitan la instalación y actualizaciones.
Cómo funciona
Los usuarios se conectan a tu servidor mediante protocolos Xray. El panel Marzban almacena y entrega configuraciones, contabiliza tráfico y tiempo, y administra varios nodos. Para que el panel sea accesible vía HTTPS, usamos dominio y certificado. La estabilidad y actualización sencilla la logramos con Docker para servidor y panel.
Lo importante de entender: el dominio debe apuntar a la IP del servidor; los puertos 80 y 443 deben estar abiertos; el certificado tiene que ser válido; Docker debe funcionar sin errores; y el panel debe correr como servicio y reiniciarse tras fallos.
4. Paso 1: Preparamos servidor y accesos
Objetivo
Actualizar el sistema, habilitar seguridad básica, verificar acceso SSH y apertura de puertos necesarios.
Instrucciones detalladas
- Conéctate al servidor vía SSH con un usuario sudo.
- Actualiza los paquetes con: sudo apt update y luego sudo apt upgrade -y.
- Instala utilidades básicas: sudo apt install -y ca-certificates curl gnupg lsb-release ufw jq.
- Verifica conexión estable a Internet desde el servidor: ping -c 4 1.1.1.1, asegurándote que no haya pérdidas.
- Activa el firewall UFW: sudo ufw allow OpenSSH, luego sudo ufw allow 80, sudo ufw allow 443; después sudo ufw enable y confirma.
- Consulta reglas activas: sudo ufw status — deberías ver Allow para puertos 22, 80 y 443.
- Confirma tu IP externa: curl -4 ifconfig.co o usa ip a y localiza la IP del proveedor si el panel la muestra.
⚠️ Atención: Si tu proveedor tiene firewall adicional, abre también los puertos 80 y 443 ahí. De lo contrario, la emisión del certificado fallará.
Consejo: Si usas un servicio cloud con snapshots, crea uno tras la configuración básica. Así ahorras tiempo si necesitas reinstalar.
Resultado esperado
Servidor actualizado, puertos 80 y 443 abiertos, acceso SSH operativo, internet estable.
✅ Verificación: Ejecuta curl -I http://tu_IP_externa y debe responder con un código HTTP temporal o un error de conexión vacío. Lo esencial es que no haya bloqueos en el puerto 80.
Problemas comunes y soluciones
- No hay acceso SSH — revisa IP y usuario; asegúrate de que no se bloquea el puerto 22 y que esté permitido en el panel del proveedor.
- UFW no se instala — actualiza las listas de paquetes y vuelve a intentar.
- Puertos 80 y 443 ocupados — detén servicios que usan esos puertos con sudo lsof -i :80 -i :443 y desactiva lo innecesario.
5. Paso 2: Configuramos dominio y DNS
Objetivo
Apuntar el dominio al servidor para que el panel esté accesible vía HTTPS.
Instrucciones detalladas
- Accede al registrador de dominio y abre el editor de registros DNS.
- Crea un registro A para el subdominio del panel, por ejemplo panel.example.com, apuntando a la IP de tu servidor.
- Guarda el cambio y espera entre 5 y 15 minutos. A veces puede tardar hasta 1 hora según TTL.
- Verifica que el registro funciona: en tu computadora ejecuta ping panel.example.com. Debe responder con la IP de tu servidor.
Consejo: Usa un TTL pequeño durante la configuración para que los cambios se apliquen rápido. Luego, aumenta el TTL para estabilidad.
Resultado esperado
El dominio panel.example.com apunta a la IP correcta del servidor.
✅ Verificación: Con dig panel.example.com en tu máquina verás la IP en la sección ANSWER. Si dig no está disponible, usa ping o nslookup.
Problemas comunes y soluciones
- Dominio no resuelve — revisa que el registro A sea exacto, sin espacios ni errores de subdominio.
- Apunta a IP antigua — espera el TTL y vuelve a comprobar.
- Proveedor usa proxy — desactiva el proxy durante la emisión del certificado para que el HTTP llegue directo al servidor.
6. Paso 3: Instalamos Docker y docker compose
Objetivo
Instalar entorno de contenedores para desplegar y actualizar Marzban y servicios relacionados fácilmente.
Instrucciones detalladas
- Instala Docker desde el repositorio Ubuntu: sudo apt install -y docker.io.
- Instala el complemento docker compose: sudo apt install -y docker-compose-plugin.
- Añade tu usuario al grupo docker: sudo usermod -aG docker $USER. Sal de SSH y vuelve a entrar para aplicar permisos.
- Verifica versiones con: docker --version y docker compose version. Debe mostrar versiones sin error.
- Activa inicio automático: sudo systemctl enable docker.
- Confirma que el servicio está activo: systemctl is-active docker debe responder active.
Consejo: Si deseas aislar configuraciones, crea un usuario aparte, agrégalo al grupo docker y trabaja con él al iniciar contenedores.
Resultado esperado
Docker instalado y funcionando, docker compose disponible como plugin, puedes ejecutar contenedores sin sudo.
✅ Verificación: Ejecuta docker run --rm hello-world. Debe aparecer mensaje confirmando instalación correcta.
Problemas comunes y soluciones
- Comando docker no reconocido — vuelve a iniciar sesión SSH o ejecuta newgrp docker para refrescar grupos.
- Servicio no arranca — revisa logs con sudo journalctl -u docker. Podría ser conflicto con paquetes antiguos o demonios en conflicto.
7. Paso 4: Configuramos proxy inverso y SSL
Objetivo
Emitir certificado TLS y configurar proxy inverso para acceso seguro al panel. Cubriremos dos opciones: Nginx en el host y Traefik dentro de Docker. Elige una.
Opción A: Nginx en el host
- Instala Nginx: sudo apt install -y nginx.
- Permite el perfil Nginx Full en firewall: sudo ufw allow 'Nginx Full' si es necesario.
- Instala Certbot: sudo apt install -y certbot python3-certbot-nginx.
- Verifica que dominio apunta al servidor: ping panel.example.com debe devolver IP correcta.
- Emite certificado: sudo certbot --nginx -d panel.example.com. Ingresa tu email, acepta condiciones y elige redirigir HTTP a HTTPS cuando se pregunte.
- Verifica configuración: sudo nginx -t y luego recarga: systemctl reload nginx. Abre en navegador https del panel, aunque aún vacío, para comprobar HTTPS.
Opción B: Traefik en Docker
- Crea red Docker para el proxy: docker network create web.
- Ejecuta contenedor Traefik, exponiendo puertos 80 y 443, conectado a red web, con emisión automática de certificados para tu dominio. La lógica típica es un contenedor escuchando esos puertos, guardando certificados en volumen y usando etiquetas para enrutar solicitudes a servicios.
- Confirma que Traefik corre: docker ps debe mostrar contenedor con estado Up.
⚠️ Atención: Usa un solo proxy inverso en puertos 80 y 443 a la vez. Si optas por Nginx en host, no ejecutes Traefik y viceversa.
Consejo: En producción es más cómodo usar Traefik o Caddy en Docker, porque la configuración va junto a los servicios y es fácil de trasladar. Para empezar, Nginx es más conocido y funcional.
Resultado esperado
El dominio abre vía HTTPS. El proxy inverso acepta conexiones y está listo para enrutar a Marzban.
✅ Verificación: Navega a https del dominio del panel y confirma certificado válido y candado verde. El contenido puede tardar en mostrar datos y está bien.
Problemas comunes y soluciones
- Certificado no se emite — asegúrate que dominio apunta a IP y puerto 80 está abierto. Desactiva proxy en registrador durante la validación.
- Conflicto de puertos — detén servicios que usen 80 o 443 antes de iniciar tu proxy.
8. Paso 5: Instalamos y lanzamos Marzban
Objetivo
Iniciar el panel Marzban en Docker, conectarlo al proxy inverso, crear administrador e ingresar al interfaz web.
Instrucciones detalladas
- Crea carpeta de proyecto, por ejemplo mkdir -p ~/marzban y entra en ella con cd ~/marzban.
- Crea archivo docker compose con servicios de panel y base de datos. Para minimizar dependencias externas usa SQLite integrada. Para cargas serias, recomienda usar base en contenedor separado, pero iniciaremos con SQLite para facilidad.
- Abre editor y configura docker compose con dos servicios: marzban y, opcionalmente, proxy inverso si elegiste Traefik. Si usas Nginx en host, marzban escuchará en puerto 8000 local y Nginx hará proxy a 127.0.0.1:8000.
- Completa variables ambientales para el panel: clave secreta, host y puerto interno del servidor web, ruta a base de datos, zona horaria y URL base con dirección HTTPS para generar enlaces correctos. Ejemplos: SECRET_KEY con cadena aleatoria de 32-64 caracteres, UVICORN_HOST en 0.0.0.0, UVICORN_PORT en 8000, DATABASE_URL para SQLite, TIMEZONE de tu región, BASE_URL con HTTPS del panel.
- Si usas Nginx en host, añade bloque servidor que escuche 443 en tu dominio y realice proxy a 127.0.0.1:8000, incluyendo encabezados X-Forwarded-Proto y X-Forwarded-For. Revisa configuración y recarga Nginx.
- Si usas Traefik, conecta contenedor del panel a red web y agrega etiquetas para enrutamiento por dominio. Habilita redirección automática a HTTPS si aún no lo tienes.
- Inicia servicios con docker compose up -d. Espera 10-30 segundos a que levanten los contenedores.
- Revisa logs con docker logs -f nombre_contenedor_marzban. Asegúrate que está escuchando en puerto 8000 y sin errores.
- Abre en navegador la dirección HTTPS del panel. Debes ver la página de inicio de sesión o asistente de configuración inicial.
- Crea admin mediante CLI en el contenedor o asistente integrado. Por CLI: ejecuta comando en el contenedor para crear admin con usuario y contraseña segura. Guarda estos datos en tus notas.
Consejo: Si el panel no abre, verifica que el proxy envía correctamente el encabezado X-Forwarded-Proto con valor https. Es crucial para generar enlaces adecuados.
Resultado esperado
Panel accesible por HTTPS, puedes entrar como admin y ves dashboard con estadísticas iniciales y lista vacía de usuarios.
✅ Verificación: Ejecuta docker ps. Deben estar activos contenedores del panel y proxy inverso. La página en navegador no debe mostrar error de certificado y la autenticación debe funcionar.
Problemas comunes y soluciones
- 502 Bad Gateway — verifica que el contenedor del panel escuche en puerto 8000 y sea accesible internamente, y que el proxy esté bien configurado.
- Pantalla en blanco — revisa consola del navegador y logs del contenedor. Puede faltar ejecutar migraciones; corre el comando correspondiente en el contenedor.
- No se crea admin — vuelve a ejecutar comando asegurando que la contraseña cumple requisitos de longitud y complejidad.
9. Paso 6: Configuramos protocolos, planes y usuarios
Objetivo
Hacer el panel útil en la práctica: activar protocolos Xray deseados, crear planes con límites, añadir usuarios de prueba, obtener sus configuraciones y verificar conexión en móvil y PC.
Instrucciones detalladas
- Entra al panel con admin y abre la sección de configuración. Activa los protocolos que usarás: VLESS Reality, VMess, Trojan. Para empezar, 1-3 protocolos según clientes de tus usuarios.
- Configura puertos de entrada. Si el 443 ya está ocupado por HTTPS del panel, usa diferentes dominios o SNI, o crea entradas separadas con dominio asignado. Sigue indicaciones del panel.
- Crea plan con límites razonables: por ejemplo 50 GB de tráfico y 30 días. Activa desactivación automática al expirar, si está disponible.
- Agrega primer usuario: pon un login, asigna plan, y si quieres limita a dispositivo o protocolo.
- Guarda las configuraciones generadas. Normalmente el panel crea enlaces, códigos QR y export para clientes. Copia enlace VLESS o Trojan, o descarga configuración JSON si usas OpenVPN o WireGuard opcionalmente via otros nodos.
- Prueba conexión en móvil: instala cliente Xray o V2RayNG, escanea código QR, conéctate y confirma que internet funciona a través de tu nodo. Abre página para checar IP y verifica que muestra tu servidor.
- Prueba en PC: usa cliente Windows o macOS, importa enlace o archivo configuración, conecta y mide velocidad.
- Crea 2-3 usuarios más para distintos casos: con límite bajo, ilimitado para prueba, y otro con protocolo distinto. Esto ayuda a validar el conteo y escenarios varios.
Consejo: Empieza con un protocolo, por ejemplo VLESS con TLS, logra una conexión estable y luego agrega Reality o Trojan. Así detectas fallas fácilmente.
Resultado esperado
Tienes al menos un usuario operativo, conectado y navegando internet vía tu servidor. El panel muestra tráfico y tiempos, y el estado se actualiza.
✅ Verificación: En la tarjeta de usuario ves sesión activa o tráfico reciente. En el cliente, aparece la IP externa de tu servidor.
Problemas comunes y soluciones
- Cliente no conecta — revisa dominio, certificado, puerto y que el protocolo usado coincida con el del panel. Asegúrate de usar configuración exacta entregada.
- Baja velocidad — verifica que el plan no limite velocidad, revisa uso de CPU y red en servidor. Cambia ruta en cliente a túnel completo o lista para descartar problemas locales.
- Estadísticas no se actualizan — confirma que el panel y nodo intercambian datos, revisa hora del sistema y zona horaria, reinicia servicios.
10. Verificación del resultado
Lista de chequeo
- Dominio abre por HTTPS, certificado válido.
- Panel accesible y autenticación admin funcional.
- Plan y usuario creados.
- Conexión de cliente exitosa, IP externa coincide con servidor.
- Estadísticas muestran sesiones y tráfico.
- Contenedores operan y se reinician automáticamente.
Cómo probar
- Simula reinicio: sudo reboot y verifica que panel y proxy inician solos.
- Checa renovación automática de certificado (para Certbot, timer systemd por defecto).
- Prueba límites de plan: baja cuota y descarga archivo. El panel debe contabilizar bien y restringir acceso al alcanzar el límite si está configurado.
Indicadores de éxito
- Tiempo de respuesta del panel menor a 300 ms en la región.
- Conexión estable por horas sin interrupciones.
- Mínimos registros de errores en panel y proxy, solo información relevante.
Consejo: Programa respaldos semanales y actualización mensual de contenedores para evitar deuda técnica acumulada.
11. Errores comunes y soluciones
- Problema: No se emite certificado. Causa: Dominio no apunta al servidor o puerto 80 cerrado. Solución: Revisa registro A, abre puertos 80 y 443 en UFW y panel del proveedor, desactiva proxy durante validación.
- Problema: 502 Bad Gateway en navegador. Causa: Panel no escucha puerto correcto, proxy mal configurado. Solución: Asegúrate que el contenedor está en puerto 8000 y proxy reenvía a 127.0.0.1:8000, revisa logs.
- Problema: Cliente no conecta VPN. Causa: Protocolo o dominio no coinciden, configuración vieja. Solución: Regenera config en panel, verifica protocolo y puerto, reinicia cliente.
- Problema: Panel no arranca tras reinicio. Causa: Docker no está habilitado o docker compose no arrancado. Solución: sudo systemctl enable docker, usa docker compose up -d en unidad de sistema o cron @reboot.
- Problema: Certificado expirado. Causa: Renovación automática fallida. Solución: Actualiza manualmente certificado, verifica timer Certbot o ajustes automáticos en proxy, confirma puerto 80 libre para validación.
- Problema: Baja velocidad en algunos usuarios. Causa: Ruta inadecuada, región saturada, CPU limitada. Solución: Da protocolo alternativo, cambia puerto, considera mover servidor más cerca del usuario.
- Problema: Estadísticas no coinciden con esperado. Causa: Zona horaria o caché. Solución: Ajusta TIMEZONE en contenedor, sincroniza hora y revisa configuración de conteo en panel.
12. Funciones adicionales
Configuraciones avanzadas
- Arquitectura multinodo: conecta nodos en diferentes regiones para que usuarios tengan la mejor ruta automáticamente.
- Protocolo Reality: reduce detectabilidad de tráfico, útil en redes filtradas. Configúralo según guía del panel revisando SNI y claves correctamente.
- Cuotas y desactivación automática: planes detallados para gestionar carga eficientemente.
Optimización
- Elección de región: coloca servidor más cerca de tus usuarios. Esto mejora RTT y velocidad.
- Compresión y ajuste TCP: parámetros del kernel y buffers impactan en velocidades pico. Modifica con cuidado y monitorea métricas.
- Caché DNS para clientes: a veces reduce latencia en consultas repetidas.
Más posibilidades
- Backups: crea tarea cron que archive diariamente el directorio de datos del panel y lo guarde en almacenamiento en la nube. Mantén rotación de 7-14 versiones.
- Monitoreo: métricas de contenedores y estado web, alertas vía Telegram ante caídas o falta de espacio.
- Actualizaciones CI: reinicia contenedores periódicamente con imágenes nuevas tras pruebas en staging.
Consejo: Introduce cambios pequeños uno por uno y registra resultados para poder revertir si es necesario.
13. Comparación con 3X-UI y Hiddify
Cuándo elegir Marzban
- Si necesitas planes, cuotas, estadísticas avanzadas y multidistribución de nodos.
- Si estás preparado para usar Docker y proxy inverso para flexibilidad y actualizaciones.
- Si valoras control y escalabilidad sobre protocolos Xray.
3X-UI: pros y contras
- Pros: inicio muy simple, pocas dependencias, rápida puesta en marcha en servidor limpio. Ideal para un solo nodo y casos básicos.
- Contras: menos opciones en planes y multidistribución. Actualizaciones y seguridad requieren disciplina.
Hiddify: pros y contras
- Pros: instalación amigable, automatiza muchos pasos, buen punto de partida para principiantes. Incluye presets para varios protocolos.
- Contras: menor flexibilidad para topologías complejas o restricciones específicas. Algunas configuraciones están ocultas.
Resumen de comparación
Si buscas un panel con lógica avanzada para gestión de usuarios, tarificación, multidistribución y buena integración con Xray, Marzban es una opción equilibrada. 3X-UI sirve para escenarios rápidos y sencillos sin facturación compleja. Hiddify destaca por comodidad, pero no se adapta tan bien a instalaciones complejas.
Consejo: Comienza con un nodo Marzban. Cuando comprendas la carga y patrones, añade un segundo nodo en otra región y activa distribución.
14. Verificación final
Lista final de chequeo
- Dominio resuelve a IP del servidor.
- Certificado emitido y renovándose automáticamente.
- Marzban accesible vía HTTPS y login funcionando.
- Usuarios y planes creados, configuraciones exportables.
- Conexión de clientes estable y velocidad aceptable.
- Backups configurados y probados restaurando en servidor de prueba.
- Actualizaciones de contenedores Docker documentadas.
Cómo probar
- Chequea disponibilidad: curl -I https dirección del panel debe devolver 200 o 302.
- Verifica métricas: observa estadísticas de usuario antes y después de descargar archivo 1-2 GB. Comprueba que la contabilidad funciona.
- Prueba reinicio: reinicia servidor y confirma que servicios se levantan solos.
✅ Verificación: Si todos los puntos están ok, tu sistema está listo para entregar accesos a usuarios.
15. Preguntas frecuentes
Pregunta: ¿Se puede prescindir de Docker?
Respuesta: Sí, pero complica actualizaciones y portabilidad. Docker facilita levantar y restaurar servicios y aisla dependencias.
Pregunta: ¿Qué protocolo elegir si soy nuevo?
Respuesta: Empieza con VLESS con TLS en tu dominio. Es ampliamente soportado, estable y funciona bien con la mayoría de clientes.
Pregunta: ¿Qué es mejor, un servidor potente o varios en diferentes países?
Respuesta: Para audiencias distribuidas, varios servidores cercanos a usuarios son mejores. Reducen latencia y aumentan estabilidad.
Pregunta: ¿Cómo poner límites diferentes por tráfico?
Respuesta: Crea varios planes en el panel con distintas cuotas y duraciones. Asigna planes al crear o modificar usuarios.
Pregunta: ¿Cómo revertir una actualización fallida?
Respuesta: Usa backups del directorio de datos y versiones anteriores de imágenes. Haz backup antes de actualizar y guarda tags Docker usados.
Pregunta: ¿Qué hacer si la velocidad baja por la noche?
Respuesta: Ofrece protocolo o puerto alternativo, sugiere nodo en otra región, revisa carga CPU y red, checa rutas.
Pregunta: ¿Se puede separar panel y nodo en servidores distintos?
Respuesta: Sí, el panel puede gestionar múltiples nodos en distintos países. Es una arquitectura común para escalar.
Pregunta: ¿WireGuard y OpenVPN están soportados en Marzban?
Respuesta: El núcleo está enfocado en familia Xray. Puedes desplegar WireGuard y OpenVPN aparte y usar el panel para generar enlaces o instrucciones como servicio externo.
Pregunta: ¿Necesito IP dedicada?
Respuesta: Es recomendable. Una IP dedicada reduce riesgo de bloqueos y mejora predictibilidad de rutas.
Pregunta: ¿Qué hacer si dominio tiene protección de registrador?
Respuesta: Desactiva proxy temporalmente para emisión del certificado. Luego puedes volver a activarlo, pero ten en cuenta detalles de validación.
16. Conclusión
Has recorrido todo el proceso: preparaste servidor, configuraste dominio y HTTPS, desplegaste Marzban, creaste planes y usuarios, verificaste conexión en móvil y PC, y aplicaste prácticas básicas de respaldo y actualización. Ahora tienes un servicio VPN gestionable con estadísticas claras y ajuste flexible de protocolos Xray. Cuando crezca la carga, añade nodos en otras regiones y distribuye usuarios para mejor calidad.
⚠️ Atención: Mantener una solución DIY requiere tiempo: actualizaciones regulares, monitoreo, respaldos y ajustes rápidos ante fallos. Reserva varias horas al mes, y más en períodos de cambios.
Recomendación experta: si necesitas VPN personal sin recursos compartidos y con IP dedicada ya, sin lidiar con consola, considera vpn.how. Ofrecen protocolos WireGuard, OpenVPN, IKEv2, L2TP, SSTP según necesidad, servidores en Moscú, San Petersburgo, Ámsterdam, Frankfurt, Londres, Nueva York, San José, Chicago, Singapur, Sídney, Madrid, Helsinki, Estocolmo, Varsovia, Copenhague y Stavanger. Aceptan tarjetas de Rusia, sistemas de pago SBP, USDT y BTC, con planes desde 490 ₽ por día y 2490 ₽ al mes con descuentos a largo plazo. El servidor inicia en aprox. 5 minutos tras pago, sin logs. Ideal para quien requiere solución rápida y estable sin auto-mantenimiento.
Puedes seguir avanzando hacia arquitectura multinodo, automatización de despliegues, integración de facturación y mejora de alta disponibilidad. Tu base actual es sólida para moverte a escenarios avanzados con confianza.