🔐 Cómo dejar MagnusBilling lo más seguro posible (Debian)
Un servidor VoIP expuesto a Internet recibe ataques constantemente: escaneos SIP, fuerza bruta, intentos de acceso al panel y fraudes de llamadas.
La seguridad real no depende sólo del software, sino de la configuración del servidor. Esta guía muestra cómo endurecer tu instalación de MagnusBilling para producción.
✅ Checklist de seguridad
- Cambiar puertos estándar
- Usar HTTPS con dominio
- Activar 2FA (doble factor)
- reCAPTCHA en el login
- Proxy SIP delante del Asterisk
- Autenticación SIP por IP
- SSH solo con llave RSA
- Firewall + Fail2Ban
- Actualizaciones semanales
- Contraseñas fuertes
1️⃣ Cambiar puertos estándar
Los bots atacan automáticamente estos puertos:
| Servicio | Puerto por defecto | Sugerido |
|---|---|---|
| SSH | 22 | 2222+ |
| HTTP | 80 | 8080 |
| SIP | 5060 | 5160+ |
MagnusBilling ya utiliza firewall y bloqueo automático de IPs.
Si cambias un puerto sin abrirlo antes en el firewall, perderás acceso al servidor.
Especial cuidado con SSH.
Orden correcto
Abrir puerto primero
firewall-cmd --permanent --add-port=2222/tcp
firewall-cmd --reload
Después modificar SSH
nano /etc/ssh/sshd_config
Port 2222
systemctl restart ssh
SIP
bindport=5160
firewall-cmd --permanent --add-port=5160/udp
firewall-cmd --reload
2️⃣ Activar doble factor (2FA)
La contraseña sola no es suficiente. Usa el plugin oficial de token para agregar autenticación tipo Google Authenticator.
Recomendado:
- Obligatorio para administradores
- Ideal para todos los usuarios
3️⃣ Usar dominio + HTTPS
No expongas el panel por IP directa:
http://IP/mbilling ❌
Usa:
https://billing.tudominio.com ✅
Instalar SSL
apt install certbot python3-certbot-apache
certbot --apache
4️⃣ Activar reCAPTCHA
Protege el login contra ataques automatizados.
En el panel:
Settings → buscar "recaptcha"
5️⃣ Usar Proxy SIP
Internet
↓
OpenSIPS
↓
MagnusBilling
- Filtra ataques SIP
- Bloquea floods
- Oculta el backend
- Permite rate limiting
En producción profesional es altamente recomendado.
6️⃣ Evitar autenticación SIP por contraseña
Evitar:
usuario + contraseña
Preferir:
autenticación por IP
7️⃣ SSH solo con llave RSA
ssh-keygen
ssh-copy-id -p 2222 root@IP
PasswordAuthentication no
PermitRootLogin prohibit-password
8️⃣ Actualizar semanalmente
/var/www/html/mbilling/protected/commands/update.sh
Las actualizaciones corrigen fallos de seguridad constantemente.
9️⃣ Editar usuario root por defecto
- Editar el usuario root
- Evitar nombres previsibles
- Contraseñas fuertes
🎯 Conclusión
- Puertos no estándar
- 2FA
- HTTPS
- SSH con llave
- Proxy SIP
- Firewall activo
Un servidor VoIP expuesto sin protección tarde o temprano será atacado. La prevención siempre es más barata que una pérdida por fraude.


