# Documentación del Sistema VoIP - FreePBX 17 ## Información General - **Servidor:** Ubuntu 24.04 LTS - **IP del Servidor:** `192.168.10.114` - **PBX:** FreePBX 17.0.28 - **Asterisk:** 21.12.2 - **Empresas:** Horux360, Consultoria-AS, Nexus --- ## Accesos Principales ### Panel Web FreePBX (Administración) - **URL:** http://192.168.10.114/admin - **Usuario:** `admin` - **Contraseña:** `FreePBX2026!` ### Panel de Usuario (UCP - User Control Panel) - **URL:** http://192.168.10.114/ucp - Las extensiones pueden acceder aquí para ver sus grabaciones, voicemail y llamadas. --- ## Extensiones Configuradas | Extensión | Empresa | Nombre | Contraseña SIP | Grabación | |-----------|---------|--------|----------------|-----------| | 100 | Horux360 | Horux360 - Admin | `Horux100!` | Siempre | | 200 | Consultoria AS | Consultoria AS - Admin | `Consult200!` | Siempre | | 300 | Nexus | Nexus - Admin | `Nexus300!` | Siempre | ### Softphones Recomendados - **Windows:** MicroSIP (https://www.microsip.org) - **Mac:** Telephone (App Store) - **Móvil:** Zoiper (iOS/Android) - **WebRTC:** UCP incluye teléfono web ### Configuración de Softphone - **Servidor/SIP Domain:** `192.168.10.114` - **Puerto:** `5060` (UDP) - **Transporte:** UDP - **Usuario:** Número de extensión (ej. `100`) - **Contraseña:** Según tabla arriba --- ## IVR (Menú Principal) - **Nombre:** MenuPrincipal - **Contexto Asterisk:** `ivr-1` - **Opciones:** - `1` → Horux360 (Extensión 100) - `2` → Consultoria AS (Extensión 200) - `3` → Nexus (Extensión 300) Para asignar una llamada entrante al IVR, configura la ruta entrante (Inbound Route) con destino `IVR → MenuPrincipal`. --- ## Grabación de Llamadas - **Estado:** Activada para todas las extensiones - **Almacenamiento:** `/var/spool/asterisk/monitor/` - **Formato:** WAV (por defecto) - **Acceso:** Panel web FreePBX → Reports → CDR Reports (incluye link a grabaciones) - **Retención:** Configurable en FreePBX. Actualmente sin límite de rotación. --- ## Dashboard de Métricas (CDR) - **URL:** http://192.168.10.114/admin → Reports → CDR Reports - **Datos disponibles:** - Historial de llamadas (entrantes/salientes) - Duración - Estado (contestada, perdida, ocupada) - Grabaciones asociadas - Filtrado por fecha, extensión, número, etc. --- ## Base de Datos ### MariaDB - **Root Password:** `FreePBXRoot2026!` - **FreePBX User:** `asteriskuser` - **FreePBX Password:** `AsteriskDB2026!` - **Bases de datos:** `asterisk` (configuración), `asteriskcdrdb` (registro de llamadas) --- ## Firewall (UFW) Puertos abiertos: - `22/tcp` - SSH - `80/tcp` - HTTP (FreePBX) - `443/tcp` - HTTPS - `5060/tcp+udp` - SIP - `5061/tcp+udp` - SIPS - `10000-20000/udp` - RTP (audio de llamadas) - `8088/tcp` - Asterisk HTTP - `8089/tcp` - Asterisk HTTPS - `5038/tcp` - AMI (Asterisk Manager Interface) --- ## Seguridad ### Fail2Ban - **Estado:** Activo - **Jails:** sshd, asterisk, apache-auth, apache-badbots - **Bantime:** 3600 segundos (1 hora) - **Max retry:** 5 intentos ### AMI (Integración Odoo) - **Usuario AMI:** `odoo` - **Contraseña AMI:** `OdooAMI2026!` - **Permisos:** Lectura/Escritura completa - **Acceso permitido:** Red local `192.168.10.0/24` - **Puerto:** `5038` --- ## Integración con Odoo ### Módulos Requeridos (Odoo Community) 1. Instalar desde https://github.com/OCA/connector-telephony: - `base_phone` - `asterisk_click2dial` - `crm_phone` (opcional, para pop-up en CRM) ### Configuración en Odoo 1. Ir a **Settings → Asterisk Server** 2. Agregar servidor: - **Name:** FreePBX VoIP - **IP:** `192.168.10.114` - **Port:** `5038` - **Login:** `odoo` - **Password:** `OdooAMI2026!` 3. Configurar prefijo de marcado si es necesario ### Funcionalidades - **Click-to-Call:** Click en cualquier número de teléfono en Odoo para llamar - **Pop-up de Cliente:** Al recibir llamada, Odoo busca el número y abre la ficha - **Historial:** Registro de llamadas en la ficha del cliente --- ## Troncal SIP (PSTN) - **Estado actual:** No configurado - **Próximo paso:** Contratar troncal SIP con proveedor recomendado ### Proveedores Recomendados | Proveedor | Ventaja | |-----------|---------| | **Twilio** | Confiable, fácil API, soporte global | | **Telnyx** | Precios bajos, buena calidad | | **VozTelecom** | Si operan en España | | **OVH** | Buena cobertura Europa/Latam | ### Configuración General 1. FreePBX → Connectivity → Trunks → Add Trunk → Add SIP (chan_pjsip) Trunk 2. Ingresar datos del proveedor (host, usuario, contraseña) 3. Configurar Outbound Routes (rutas salientes) 4. Configurar Inbound Routes (rutas entrantes) → apuntar a IVR --- ## Comandos Útiles ```bash # Estado de Asterisk asterisk -rvx "core show uptime" # Estado de extensiones PJSIP asterisk -rvx "pjsip show endpoints" # Recargar configuración FreePBX fwconsole reload # Reiniciar todo el servicio fwconsole restart # Estado de Fail2Ban fail2ban-client status # Ver logs de Asterisk tail -f /var/log/asterisk/messages.log # Ver logs de FreePBX/web tail -f /var/log/apache2/freepbx-error.log ``` --- ## Multi-Tenant (3 Empresas) - **Enfoque:** Un solo FreePBX con prefijos de extensión por empresa - `100-199` → Horux360 - `200-299` → Consultoria AS - `300-399` → Nexus - **IVR:** Un menú principal con opciones por empresa - **CID Saliente:** Configurable por ruta/trunk cuando se contrate troncal --- ## Respaldo y Mantenimiento ### Backup Automático - Instalar módulo `backup` en FreePBX (ya instalado) - Configurar en Admin → Backup & Restore - Recomendado: Backup diario de configuración + grabaciones ### Actualizaciones ```bash # Actualizar módulos FreePBX fwconsole ma updateall fwconsole reload # Actualizar sistema operativo apt update && apt upgrade ``` --- ## Notas Importantes 1. **Cambiar contraseñas por defecto** antes de poner en producción pública 2. **Configurar HTTPS** (Let's Encrypt) para acceso seguro al panel 3. **NAT:** Si el servidor está detrás de router/firewall, configurar "NAT = Yes" en Settings → Asterisk SIP Settings 4. **RTP:** Asegurar que el rango UDP 10000-20000 esté abierto en el router/firewall externo 5. **Sonidos:** Los sonidos en inglés están instalados. Para español, instalar `sounds-es` desde FreePBX → Admin → Sound Languages --- ## Soporte - **FreePBX Wiki:** https://sangomakb.atlassian.net/wiki/spaces/FP/overview - **Asterisk Docs:** https://docs.asterisk.org/ - **Comunidad:** https://community.freepbx.org/ --- *Documento generado el 2026-04-29* *Implementación realizada por Kimi Code CLI*