elastix, tls, srtp y openvpn
DESCRIPTION
"Implementación práctica de TLS, SRTP y OpenVPN en Elastix para encriptar las comunicaciones" Juan Almeida - Minga.ec, Noviembre 27 de 2013 Quito, EcuadorTRANSCRIPT
![Page 1: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/1.jpg)
![Page 2: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/2.jpg)
Encriptación de las Comunicaciones en
Elastix
![Page 3: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/3.jpg)
Introducción
Las telecomunicaciones son una parte crítica de la
seguridad nacional.
La seguridad y confiabilidad de las comunicaciones
son un importante requerimiento para organismos
públicos y privados
![Page 4: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/4.jpg)
Requerimientos de seguridad
Los requerimientos de seguridad de las
comunicaciones se pueden dividir en:
Confidencialidad.
Integridad.
Disponibilidad.
![Page 5: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/5.jpg)
Marco Teórico
![Page 6: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/6.jpg)
Encriptación
Encriptar significa transformar datos en un código
secreto que puede ser descifrado únicamente por la
parte interesada.
![Page 7: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/7.jpg)
Elastix
Es un aplicación open source para crear sistemas de telefonía VoIP, que integra las mejores herramientas para PBX y Callcenter basados en Asterisk.
Permite la creación de nuevos módulos que permiten ampliar su funcionalidad.
![Page 8: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/8.jpg)
Protocolo SIP
El “Session Initiation Protocol” (SIP) es un protocolo de señalización multimedia.
Esta definido por la IETF en el RFC 3261.
SIP es un protocolo similar al protocolo HTTP usado en la navegación web.
Dentro de la definición del protocolo, no existe un mecanismo para el cifrado de datos.
![Page 9: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/9.jpg)
Protocolo SIP: Componentes
![Page 10: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/10.jpg)
Protocolo SDP
El “Session Description Protocol” (SDP) transmite las capacidades multimedia de los terminales que quieren establecer una comunicación.
Está definido por la IETF en el RFC 2327.
![Page 11: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/11.jpg)
Protocolo RTP
El “Real-Time Transport Protocol” (RTP) es utilizado para la transmisión de información (voz, vídeo, entre otros) en tiempo real.
Está definido por la IETF en el RFC 3550 y RFC 3511.
Funciona sobre UDP, ya que posee un menor retardo en la entrega de paquetes con información.
![Page 12: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/12.jpg)
Interceptar las comunicaciones
Consiste en captar información (paquetes SIP, SDP, RTP en el caso de VoIP) de forma ilegal.
Una forma de interceptar comunicaciones es el sniffing, usando herramientas como wireshark o tcpdump.
![Page 13: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/13.jpg)
Interceptar las comunicaciones
Utilizando Cain & Abel también se puede capturar tráfico VoIP, a hosts que están en el mismo segmento de red.
Cuando se tienen VLANs se pueden efectuar dos tipos de ataques: Switch Spoofing y Double Tagging.
Manipulando el protocolo MGCP se puede interceptar comunicaciones entre “call agents”.
![Page 14: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/14.jpg)
Encriptación de las comunicaciones
Se puede aplicar la encriptación en tres niveles:
Señalización (SIP).Multimedia (RTP).Transmisión de datos en general (OpenVPN).
![Page 15: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/15.jpg)
Encriptación de la señalización
![Page 16: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/16.jpg)
Vulnerabilidad del Protocolo SIP
Los dispositivos SIP se identifican usando direcciones SIP (SIP URI), que tienen la forma:
sip:usuario@dominio
El protocolo SIP dentro de su especificación no incluye mecanismos de seguridad, la información se envía como texto plano.
![Page 17: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/17.jpg)
Registro de un dispositivo SIP
![Page 18: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/18.jpg)
Inicio y finalización de una llamada SIP
![Page 19: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/19.jpg)
Inicio y finalización de una llamada SIP
![Page 20: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/20.jpg)
Encriptación de la señalización: SIP/TLS (SIPS)
El documento RFC en donde se define el protocolo SIP, recomienda el uso de TLS como medida de protección para evitar ataques como la interceptación de llamadas, o ataques man-in-the-middle.
TLS está definido en el documento RFC 4346.
![Page 21: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/21.jpg)
SIP/TLS (SIPS): Partes
Se divide en dos partes:
TLS Record Protocol, que se encarga de mantener una conexión segura entre dos dispositivos.
TLS Handshake Protocol cuya función es la negociación de la llaves criptográficas y la autenticación cliente/servidor.
![Page 22: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/22.jpg)
SIP/TLS (SIPS): Funcionamiento
![Page 23: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/23.jpg)
SIP/TLS (SIPS) vs SIP
El SIPS URI tiene la forma: sips:usuario@dominio.
Para el transporte de información se usa TLS. Por tanto los datos enviados son cifrados.
El puerto SIPS es el 5061, en lugar del puerto 5060 que esta reservado para UDP o TCP.
Los paquetes SIPS se transportan usando TCP.
![Page 24: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/24.jpg)
SIP/TLS (SIPS): Recomendaciones
Para la transmisión de datos se recomienda utilizar el algoritmo AES 128-bit en modo CBC (Cipher Block Chaining)
Para la autenticación y verificación de la integridad de los mensajes, se debería usar SHA-1.
![Page 25: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/25.jpg)
SIP/TLS (SIPS): VentajasSoporte para autenticación mutua (cliente y
servidor). Importante para evitar ataques man-in-the-middle.
Provee confidencialidad e integridad de la comunicación.
TLS es un protocolo universalmente soportado por diferentes dispositivos y sistemas operativos.
Protege el proceso de negociación de las llaves a ser utilizadas para la encriptación de multimedia (SRTP).
![Page 26: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/26.jpg)
SIP/TLS (SIPS): DesventajasSolo puede ser usado con TCP o SCTP, pero no con
UDP. Muchos proveedores de telefonía SIP solo soportan tráfico UDP.
Aumenta la utilización de recursos en el servidor SIP (Elastix) en un 30%, en especial en el uso de procesador y memoria RAM.
No brinda confidencialidad extremo a extremo. Requiere la terminación y creación de una nueva sesión para cada uno de los segmentos.
![Page 27: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/27.jpg)
SIP/TLS (SIPS): Desventajas
![Page 28: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/28.jpg)
Encriptación de multimeda (RTP)
![Page 29: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/29.jpg)
SRTP
El “Secure Real Time Protocol” (SRTP) es un complemento al “Real Time Protocol” (RTP), que provee confidencialidad, integridad y autenticación de los datos (voz, vídeo, mensajería, entre otros).
Se encuentra definido por la IETF en el documento RFC 3711.
También brinda protección a los mensajes RTCP (Real-Time Transport Control Protocol) usados para aplicar políticas como QoS, estos paquetes son utilizados por los dispositivos activos de una red.
![Page 30: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/30.jpg)
SRTP: Funcionamiento
![Page 31: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/31.jpg)
SRTP: Recomendaciones
El algoritmo de encriptación por defecto es AES (Advanced Encryption Standard) en modo counter, usando una llave de 128-bits.
Para la autenticación y verificación de la integridad de los mensajes, se debe usar SHA-1.
Como la llave a utilizar en la encriptación se negocia en cada llamada, utilizando SDP, durante el intercambio de mensajes SIP, no tiene sentido utilizar SRTP sino se lo complementa con SIPS.
![Page 32: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/32.jpg)
SRTP: Ventajas
Confidencialidad, integridad y autenticación del contenido multimedia.
Soporte de AES que permite recibir paquetes en desorden.
Minimiza el uso de recursos de hardware y ancho de banda.
![Page 33: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/33.jpg)
SRTP: Desventajas
Debe funcionar junto con SIPS para no tener huecos de seguridad.
No es soportado por los proveedores de telefonía IP.
Los fabricantes de los dispositivos SIP aplican diferentes algoritmos para la encriptación, y para la negociación de los mismos.
Algunos dispositivos requieren la implementación de mecanismos para la negociación de llaves de encriptación como MIKEY o ZRTP.
![Page 34: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/34.jpg)
Encriptación de datos en general (OpenVPN)
![Page 35: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/35.jpg)
OpenVPN
Permite unir diversos dispositivos de una organización, ubicados en lugares distintos, a través de un medio inseguro (internet), manteniendo la confidencialidad de los datos transmitidos.
![Page 36: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/36.jpg)
OpenVPN: Ventajas
Se puede implementar en dos modos básicos, capa 2 y capa 3.
En el firewall, que protege la red, se requiere abrir un solo puerto que escuche las conexiones.
Las conexiones OpenVPN se pueden realizar a través de casi cualquier firewall. También posee soporte para proxy.
No existe problema con NAT.
![Page 37: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/37.jpg)
OpenVPN: Ventajas
Se pueden implementar reglas de firewall para limitar el acceso a recursos a los usuarios conectados a través de OpenVPN.
Muchos fabricantes están desarrollando hardware con clientes OpenVPN integrados.
El tráfico VoIP (SIP + RTP) se envía a través del túnel VPN.
![Page 38: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/38.jpg)
OpenVPN: Desventajas
No hay estandarización en la forma en que se deben cargar los archivos de configuración y certificados en un cliente.
![Page 39: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/39.jpg)
Escenarios de red
![Page 40: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/40.jpg)
Escenario Ideal
![Page 41: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/41.jpg)
Escenario Recomendado
![Page 42: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/42.jpg)
¿Por qué usar Elastix?
![Page 43: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/43.jpg)
¿Por qué usar Elastix?Elastix soporta TLS para la encriptación de la
señalización SIP y soporta también SRTP para encriptar los datos de una llamada (voz, vídeo, entre otros).
En su sistema operativo base (CentOS 5.9) los paquetes OpenSSL y LibSRTP vienen instalados.
La versión de Asterisk ha sido compilada incluyendo el módulo “res_srtp”.
![Page 44: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/44.jpg)
¿Por qué usar Elastix?Tiene los scripts necesarios para generar
certificados, que serán utilizados tanto por los dispositivos que soportan SIP/TLS como para los dispositivos que se conectaran utilizando OpenVPN.
Los algoritmos de encriptación tanto para SIPS como para SRTP soportados por Elastix, son soportados por la mayoría de dispositivos SIP.
![Page 45: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/45.jpg)
Preguntas y ComentariosVisiten la página web del proyecto Elastix:
www.elastix.org
Visiten mi blog:
Juanelojga.blogspot.com
![Page 46: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/46.jpg)
Hands On
![Page 47: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/47.jpg)
Escenario de Pruebas
![Page 48: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/48.jpg)
Prueba 1: Llamada sin encriptación
![Page 49: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/49.jpg)
Prueba 1: Llamada sin encriptación
![Page 50: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/50.jpg)
Prueba 1: Llamada sin encriptación
![Page 51: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/51.jpg)
Prueba 1: Llamada sin encriptación
![Page 52: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/52.jpg)
Prueba 1: Llamada sin encriptación
![Page 53: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/53.jpg)
Prueba 2: Llamada con encriptación de multimedia SRTP
![Page 54: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/54.jpg)
Prueba 2: Llamada con encriptación de multimedia SRTP
![Page 55: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/55.jpg)
Prueba 2: Llamada con encriptación de multimedia SRTP
![Page 56: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/56.jpg)
Prueba 3: Llamada encriptada
![Page 57: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/57.jpg)
Prueba 3: Llamada encriptada
![Page 58: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/58.jpg)
Prueba 3: Llamada encriptada
![Page 59: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/59.jpg)
Prueba 3: Llamada encriptada
![Page 60: Elastix, TLS, SRTP y OpenVPN](https://reader034.vdocuments.net/reader034/viewer/2022052322/557abd95d8b42a1e128b4dcd/html5/thumbnails/60.jpg)
Prueba 4: Llamada a través de túnel OpenVPN