Clone
5
Home
groales edited this page 2025-12-04 11:28:13 +01:00
Table of Contents
NetBox Wiki
Documentación completa para el despliegue y gestión de NetBox con Docker.
📑 Índice
Inicio Rápido
- Home - Esta página
- Generar Contraseñas - Antes de desplegar
Modos de Despliegue
Configuración y Uso
- Configuración Inicial - Primer acceso y setup
- Personalización - LDAP, plugins, configuración avanzada
- Backup y Restauración - Protege tus datos
- Actualización - Mantén NetBox actualizado
- Solución de Problemas - Diagnóstico y fixes
¿Qué es NetBox?
NetBox es una solución IPAM (IP Address Management) y DCIM (Data Center Infrastructure Management) de código abierto diseñada específicamente para equipos de red y data centers.
Características Principales
- 📊 IPAM Completo: Gestión de IPs, VLANs, VRFs, prefijos
- 🖥️ DCIM: Inventario de racks, dispositivos, cables, conexiones
- 🔌 Gestión de Circuitos: Proveedores, circuitos, conexiones WAN
- 📝 Documentación Rica: Custom fields, tags, journaling
- 🔗 API REST Completa: Integración con sistemas externos
- 🔐 Multi-tenancy: Soporte para múltiples organizaciones
- 📈 Reportes: Visualización y exportación de datos
- 🔄 Webhooks: Automatización y notificaciones en tiempo real
Casos de Uso
- Gestión de IPs: Planificación y asignación de direcciones IPv4/IPv6
- Inventario de Red: Documentar switches, routers, firewalls
- Gestión de Data Center: Racks, PDUs, cables, patch panels
- Documentación: Single source of truth para infraestructura
- Automatización: Integración con Ansible, Terraform, scripts
Inicio Rápido
Requisitos
- Docker Engine
- Portainer (recomendado)
- Red
proxycreada - PostgreSQL 18 y Redis (incluidos en el compose)
Generar Contraseñas
ANTES de desplegar, genera 3 contraseñas seguras:
# DB_PASSWORD (PostgreSQL)
openssl rand -base64 32
# REDIS_PASSWORD
openssl rand -base64 32
# SUPERUSER_PASSWORD (admin de NetBox)
openssl rand -base64 32
⚠️ Importante: Si las contraseñas contienen caracteres especiales (
$,!, etc.), usa comillas simples en el.env:DB_PASSWORD='tu_password_con_$_especiales'
Despliegue Básico
-
Crea el stack en Portainer con Git Repository:
- URL:
https://git.ictiberia.com/groales/netbox - Compose path:
docker-compose.yml
- URL:
-
Añade variables de entorno:
DB_PASSWORD=password_generado_1 REDIS_PASSWORD=password_generado_2 SUPERUSER_EMAIL=admin@example.com SUPERUSER_PASSWORD=password_generado_3 -
Deploy y espera 1-2 minutos (NetBox inicializa la BD)
-
Accede y configura según tu proxy inverso:
Arquitectura
┌─────────────────────────────────────────────────┐
│ Traefik / NPM (Proxy) │
│ HTTPS / SSL │
└────────────────┬────────────────────────────────┘
│
┌─────────▼──────────┐
│ NetBox │ Puerto 8000
│ (LinuxServer) │
└─┬────────────────┬─┘
│ │
┌────▼─────┐ ┌────▼──────┐
│PostgreSQL│ │ Redis │
│ 18 │ │ 7 │
└──────────┘ └───────────┘
(Base Datos) (Caché)
Componentes
- NetBox: Aplicación Django (puerto 8000)
- PostgreSQL 18: Base de datos principal
- Redis 7: Caché y mensajería
- Proxy: Traefik o NPM para HTTPS
Volúmenes
netbox_config: Configuración, media, scriptsnetbox_db: Base de datos PostgreSQL
Redis (Caché en tmpfs)
Redis utiliza tmpfs (RAM) en lugar de volumen persistente:
- ✅ Más rápido: Acceso directo a RAM
- 🔒 Contraseña requerida: Seguridad defense-in-depth
- ⚡ No persistente: Caché se regenera automáticamente
- 💾 No requiere backup: Solo almacena sesiones y tareas temporales
Próximos Pasos
-
Elige tu modo de despliegue:
-
Configura NetBox:
- Configuración Inicial - Primer acceso
- Personalización - LDAP, plugins, etc.
-
Protege tus datos:
- Backup y Restauración - Automatiza backups
-
Mantén actualizado:
- Actualización - NetBox y PostgreSQL