Skip to content

neocizee/FiveM-Qbox

Repository files navigation

FiveM Qbox Docker Boilerplate

FiveM Qbox Docker Security License

Project Status: Architecture Showcase / Boilerplate.


📋 Descripción Técnica

Infraestructura de Servidor FiveM de Alta Disponibilidad y Seguridad

Este repositorio presenta una implementación de referencia para el despliegue de servidores FiveM utilizando prácticas modernas de DevOps y Containerización. El proyecto demuestra una arquitectura diseñada para la seguridad, escalabilidad y mantenibilidad, utilizando Docker para la orquestación de servicios y WireGuard para la protección de red.

🎯 Objetivos de Arquitectura

Este boilerplate fue diseñado para resolver desafíos comunes en la administración de servidores de juegos:

  • Mitigación DDoS: Implementación de un patrón de "Secure Gateway" mediante túneles VPN.
  • Aislamiento de Servicios: Separación estricta de responsabilidades (Game Server, Database, Cache).
  • Infraestructura como Código (IaC): Despliegue reproducible y versionado.

🛡️ Arquitectura de Seguridad

La característica central de este proyecto es su enfoque en la seguridad de red mediante el aislamiento de contenedores.

Patrón de "Secure Network Tunneling"

En lugar de exponer el servidor de juegos directamente a la red pública, esta arquitectura utiliza un contenedor intermediario que actúa como puerta de enlace segura.

  1. Aislamiento de Red: El contenedor del servidor FiveM no expone puertos públicos directamente.
  2. Enrutamiento Seguro: Todo el tráfico entrante y saliente es encapsulado a través de una interfaz VPN (WireGuard).
  3. Protección de Origen: La IP real del servidor de alojamiento permanece oculta, reduciendo la superficie de ataque.

✨ Stack Tecnológico

Core & Game Logic

  • FiveM (Cfx.re): Motor del servidor.
  • Qbox Project: Framework de rol moderno, optimizado y modular.

Infraestructura & Datos

  • Docker & Docker Compose: Orquestación de contenedores y redes.
  • MariaDB 10.6: Persistencia de datos relacional.
  • Redis: Capa de caché de alto rendimiento para sesiones y datos temporales.

Seguridad

  • WireGuard: Protocolo VPN de última generación para el túnel seguro.
  • Linux Namespaces: Utilizados por Docker para el aislamiento de procesos y red.

📦 Estructura del Proyecto

La estructura del repositorio sigue las mejores prácticas para mantener el código limpio y separado de la configuración de infraestructura.

FiveM-Qbox/
├── .config/              # Configuraciones de servicios externos
├── resources/            # Lógica del juego y scripts (Lua/JS)
├── txData/               # Datos persistentes de administración
├── docker-compose.yml    # Definición de arquitectura de producción
├── Dockerfile            # Definición de imagen del servidor
└── .env.example          # Plantilla de variables de entorno

🚀 Despliegue y Configuración

Este proyecto utiliza variables de entorno para manejar secretos y configuraciones, siguiendo la metodología 12-Factor App.

Configuración de Entorno

El archivo .env (no incluido en el repositorio por seguridad) gestiona:

  • Credenciales de Base de Datos
  • Claves de API (Steam, FiveM License)
  • Secretos de conexión VPN

Ejecución

El despliegue se realiza mediante Docker Compose, levantando la pila completa de servicios:

docker-compose up -d

⚠️ Nota sobre Seguridad

Este repositorio es una demostración de arquitectura segura. Por razones de seguridad:

  • No se incluyen claves privadas ni certificados reales.
  • Las configuraciones de red mostradas son ejemplos de implementación.
  • Los archivos sensibles están excluidos mediante .gitignore.

📝 Licencia

Este proyecto se distribuye bajo la licencia MIT, permitiendo su uso y modificación con fines educativos y comerciales, siempre que se mantenga la atribución.


👨‍💻 Contexto Profesional

Este proyecto forma parte de mi portafolio como Desarrollador Full Stack / DevOps, demostrando competencias en:

  • Administración de Sistemas Linux
  • Seguridad de Redes y VPNs
  • Docker y Orquestación de Contenedores
  • Gestión de Bases de Datos SQL y NoSQL

About

Fivem Boilerplate Qbox/MariaDB/Redis

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors