Introducción
En un entorno PBXware (basado en CentOS 7 y gestionado desde línea de comandos con yum), proteger el tráfico VoIP es esencial. Aquí conviene elegir una VPN ligera, estable y fácil de integrar con un sistema sin entorno gráfico (o con acceso mínimo vía SSH). Los usuarios habituales de PBXware son administradores de sistemas, técnicos VoIP y responsables de redes, que prefieren soluciones CLI y dependen de la interfaz web de PBXware para la gestión de llamadas, mientras el resto de la seguridad y monitorización corren por su cuenta.
VPN más aptas para PBXware y por qué
- WireGuard:
- Se instala vía RPM (dependencias desde ELRepo) y
yum. - Ligero y con integración directa en el kernel para un rendimiento óptimo en llamadas concurrentes.
- Configuración mediante ficheros estáticos, perfecto para entornos “headless”.
- Se instala vía RPM (dependencias desde ELRepo) y
- OpenVPN:
- Disponible en EPEL, conocido y muy documentado.
- Flexible en modos tun/tap, con multitud de opciones de cifrado, ideal para redes mixtas (oficinas remotas).
- Se gestiona con scripts Easy-RSA, adaptado a flujos de trabajo habituales en VoIP.
- strongSwan (IPsec):
- Integrado en CentOS a través de
yum install strongswan. - Utiliza estándares IKEv2, muy robusto en túneles site-to-site.
- Recomendado si ya cuentas con equipamiento Cisco/Juniper usando IPsec.
- Integrado en CentOS a través de
Comparativa de características
| VPN | Protocolo | Rendimiento | Facilidad CLI | Integración Kernel | Más info |
|---|---|---|---|---|---|
| WireGuard | UDP, Curve25519 | Muy alto | Media (ficheros planos) | Sí | sitio oficial de WireGuard |
| OpenVPN | UDP/TCP, OpenSSL | Moderado | Alta (scripts Easy-RSA) | No | web de OpenVPN |
| strongSwan | ESP, IKEv2 | Alto | Media (ipsec.conf) | Sí | documentación de strongSwan |
Instalación y configuración
1. WireGuard
En PBXware (CentOS 7) es necesario habilitar ELRepo para obtener los módulos de kernel.
# Habilitar EPEL y ELRepo yum install -y epel-release yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm # Instalar WireGuard yum install -y kmod-wireguard wireguard-tools # Crear claves wg genkey tee /etc/wireguard/privatekey wg pubkey > /etc/wireguard/publickey # Configurar /etc/wireguard/wg0.conf cat gt /etc/wireguard/wg0.conf ltltEOF [Interface] PrivateKey = (cat /etc/wireguard/privatekey) Address = 10.0.0.1/24 ListenPort = 51820 [Peer] PublicKey = CLAVE_PUBLICA_DEL_PEER AllowedIPs = 10.0.0.2/32 Endpoint = vpn.ejemplo.com:51820 PersistentKeepalive = 25 EOF # Arrancar y habilitar wg-quick up wg0 systemctl enable wg-quick@wg0
Después de esto, las llamadas SIP entre sedes viajan cifradas sobre 10.0.0.0/24.
2. OpenVPN
Con OpenVPN y Easy-RSA preparas CA y certificados de cliente/servidor.
# Instalar OpenVPN y Easy-RSA yum install -y epel-release yum install -y openvpn easy-rsa # Crear PKI mkdir -p /etc/openvpn/easy-rsa cp -r /usr/share/easy-rsa/3/ /etc/openvpn/easy-rsa/ cd /etc/openvpn/easy-rsa/ ./easyrsa init-pki ./easyrsa build-ca nopass ./easyrsa gen-req servidor nopass ./easyrsa sign-req server servidor ./easyrsa gen-dh # Copiar certificados y configurar servidor cp pki/ca.crt pki/issued/servidor.crt pki/private/servidor.key pki/dh.pem /etc/openvpn/ cat gt /etc/openvpn/server.conf ltltEOF port 1194 proto udp dev tun ca ca.crt cert servidor.crt key servidor.key dh dh.pem server 10.8.0.0 255.255.255.0 keepalive 10 120 persist-key persist-tun cipher AES-256-CBC user nobody group nobody verb 3 EOF # Iniciar y habilitar el servicio systemctl start openvpn@server systemctl enable openvpn@server
Luego distribuyes ca.crt, cliente.crt y cliente.key a cada oficina remota.
3. strongSwan
Si prefieres IPsec/IKEv2:
yum install -y strongswan # Configurar /etc/strongswan/ipsec.conf cat gt /etc/strongswan/ipsec.conf ltltEOF config setup charondebug=ike 1, knl 1 conn pbx-tunel keyexchange=ikev2 left=%any leftid=@pbxware leftcert=pbxware.crt leftsubnet=0.0.0.0/0 right=vpn.sucursal.com rightid=@sucursal rightsubnet=192.168.1.0/24 auto=start EOF # Agregar certificados en /etc/strongswan/ipsec.d/ # Iniciar el demonio systemctl start strongswan systemctl enable strongswan
De esta forma, todo el tráfico VoIP de PBXware viajará cifrado hasta la oficina remota.
Deja una respuesta