Agregue cifrado y empuje a SIP normal



Hola habr En este artículo, nos gustaría destacar varios problemas SIP cuando se usan en un dispositivo móvil, que los usuarios generalmente desconocen o desconocen.

Uno de los principales problemas: si utiliza cualquier proveedor SIP (o su propia IP PBX) en su teléfono inteligente, con una confianza del 99% podemos decir que sus datos no están encriptados.

Probablemente muchos hicieron algo simple: rastrearon el tráfico de los dispositivos SIP para encontrar la razón de cualquier inoperancia de la conexión VOIP.

En la práctica, esto significa que todas sus negociaciones SIP también se pueden rastrear, restaurar y escuchar fácilmente en el lado del cliente móvil y se pueden hacer con bastante facilidad.


Wikipedia nos dice que este problema existe:

"Seguridad de conexión

Muchas implementaciones de telefonía IP para consumidores no admiten el cifrado criptográfico, a pesar de que tener una conexión telefónica segura es mucho más fácil de implementar con tecnología IP que con las líneas telefónicas tradicionales. Como resultado, con la ayuda de un analizador de tráfico, es relativamente fácil establecer la escucha de llamadas IP y, con algunos trucos, incluso cambiar su contenido ".

Este problema surge del deseo de hacer que el cliente SIP sea universal, aunque en casi todos los softphones populares, se declara el cifrado.

Pero además del softphone en sí, el cifrado también debe ser compatible con el servidor SIP, y aquí es donde radica la raíz del problema: los proveedores son diferentes, usan diferentes soluciones y, para admitir todo el zoológico de los dispositivos SIP de sus clientes, el cifrado en el servidor generalmente está desactivado.

Otro problema que también es bastante común es el bloqueo del protocolo SIP.

Pueden ser bloqueos a nivel de un solo proveedor o a nivel de operadores nacionales; por ejemplo, SIP está bloqueado por las autoridades de los EAU, China y varios otros países.

Otro problema bien conocido asociado con el uso de SIP en dispositivos móviles: los softphones VOIP estándar, que se lanzan constantemente, consumen significativamente la batería del teléfono inteligente.

Esto se debe a que la mayoría de las IP PBX son un servidor SIP normal que requiere el registro periódico del cliente, es decir, la aplicación en el teléfono siempre debe estar en línea y, en consecuencia, la IP PBX siempre espera el paquete de registro de la aplicación.
Si dentro de cierto tiempo el paquete de registro no proviene de la aplicación, la IP PBX considera que el cliente está desconectado y nadie dentro de la PBX puede hacer una llamada a dicho cliente.

Por lo tanto, tales aplicaciones siempre deben estar en línea y, en consecuencia, consumen significativamente la batería del dispositivo móvil.

Esto sucedió históricamente cuando los dispositivos SIP del cliente eran principalmente teléfonos IP de escritorio o puertas de enlace VOIP y, en consecuencia, no había problemas para ahorrar baterías.
Lo peor para los usuarios de iOS en este momento es que a partir de la versión 11, Apple ha eliminado por completo la posibilidad de que sus aplicaciones estén siempre en línea y, en consecuencia, las viejas aplicaciones SIP ya no funcionan en las nuevas versiones de iOS. Esto está dictado por la política de Apple de minimizar el consumo de batería para todas las aplicaciones.

Hay varias formas de salir de la situación con la batería.

La idea principal es transferir la aplicación fuera de línea, es decir, "poner en suspensión" la aplicación y despertarla presionando exactamente en el momento en que llega la llamada entrante.

En realidad, todos los mensajeros instantáneos populares con protocolos patentados (WhatsApp, Viber, Telegram y otros) lo hacen cuando se realiza una llamada de audio o video entrante: activan la aplicación, se inicia y luego puede recibir llamadas.

La primera solución es crear su propio servidor, su IP PBX y escribir su propio cliente para dos plataformas (iOS y Android), lo que haría los pasos anteriores.

En principio, algunos grandes proveedores de VOIP (por ejemplo, MTT) o fabricantes de software para servidores VOIP hacen esto: tienen sus propios clientes SIP para dispositivos móviles que funcionan en modo push.

El problema es que dichos clientes solo pueden trabajar con este proveedor o con una PBX específica, respectivamente, si usa la PBX IP de su oficina y al mismo tiempo otros proveedores de telefonía IP, entonces esta solución no funcionará para usted.

La segunda forma es comprar un cliente SIP universal que pueda impulsar.
¿Por qué tales soluciones cuestan dinero?

Debido a que el cliente SIP con inserción no es solo escribir una aplicación separada y ponerla en la cola.

Para hacer esto, debe crear y mantener un servidor separado, que enviará paquetes de registro regulares a su IP PBX, y el servidor en sí mismo trabajará directamente con la aplicación. Despiértelo cuando se lo llame.

Es decir Para crear, necesita una infraestructura completa y es por eso que se pagan tales soluciones universales.

Pero, ¿qué pasa con los problemas antes mencionados con el cifrado y el bloqueo de SIP?

Existe una solución universal: M1 Messenger , que también puede funcionar como un cliente SIP con modo push, y al mismo tiempo proporciona cifrado en el lado del cliente y protección contra el bloqueo.

El tráfico SIP está "envuelto" en tráfico de mensajería cifrada (TLS) y los proveedores de DPI ya no se reconocen como VOIP.

Todo esto funciona en absolutamente cualquier servidor SIP, ya sea un Asterisco de oficina o cualquier otro proveedor con números virtuales, en todas partes del lado del cliente habrá tráfico cifrado y modo push.

Entonces, descargue el messenger para Android o iOS , regístrese (tenga en cuenta que el registro NO requiere un número de teléfono).

En el menú general encontramos la pestaña Conexiones SIP:


Agregue su cuenta SIP existente.

Nombre es el nombre de su proveedor (en nuestro ejemplo, será Zadarma)
Usuario: aquí debe especificar su inicio de sesión SIP
Dominio: la dirección de su proveedor de VOIP.
Si el proveedor o su IP PBX usa su puerto, entonces puede
especifíquelo a través de dos puntos, por ejemplo: sip.voipprovider.com: 5060
Auth: su inicio de sesión SIP (igual que en la sección Usuario)
Contraseña: su contraseña para la cuenta SIP


Puede agregar hasta 8 de esas cuentas al messenger. Con la marcación saliente, se ofrecerá una opción a través de qué proveedor hacer una llamada.

Puede ingresar varios números en el messenger, tanto en la oficina como en otras ciudades y países, y estar siempre disponible para llamadas entrantes sin temor a una gran descarga de la batería del teléfono inteligente.

Dado que el messenger es compatible con push, la aplicación duerme en modo de espera y no consume la batería del teléfono inteligente.

Por lo tanto, siempre puede estar en contacto para las llamadas SIP entrantes, por ejemplo, con un DID de un número virtual o de oficina (ahora SIP debido a problemas de alimentación generalmente se usa solo para llamadas salientes).

Esperamos que las nuevas características de M1 Messenger amplíen el alcance de un protocolo de comunicación tan conveniente y popular como SIP.

Source: https://habr.com/ru/post/es418741/


All Articles