Curso Asterisk (VI): Lidiando con el NAT

El enemigo público número uno del protocolo SIP son las tablas NAT. El NAT es la principal causa de problemas a la hora de montar nuestro servidor Asterisk. Desafortunadamente para nosotros, debido a la falta de IPs públicas de IPv4, lo normal en nuestros hogares es que estemos detrás de un NAT. Por lo tanto, si queremos montar nuestro Asterisk dentro de casa, tendremos que pelearnos con él.

Si haciendo pruebas se obtienen alguno de estos resultados, casi seguro que estemos experimentando problemas derivados de estar dentro de una red privada con NAT:

  • Audio sólo en un sentido
  • Ausencia total de audio en ambos sentidos
  • No puedes recibir llamadas
  • Las llamadas se cortan transcurridos 10-30 segundos desde el establecimiento

 Los escenarios posibles son los siguientes:

  • El servidor está detrás de un NAT
  • Sólo un extremo está detrás de un NAT
  • Ambos extremos están detrás de un NAT
  • Ambos extremos y el servidor están detrás de un NAT

Sigue leyendo

Curso Asterisk (V): Interconexión con proveedores VoIP

Ha llegado el momento de que nuestra centralita Asterisk pueda comunicarse con el exterior. Mediante el uso de proveedores de telefonía VoIP podremos realizar llamadas a la Red de Telefonía Conmutada, y también que nos puedan llamar desde ella. Aquí empieza el verdadero potencial de Asterisk.

Podemos separar los proveedores VoIP en dos categorías diferenciadas en función del servicio que proporcionan:

  • Proveedores de minutos: Permiten realizar llamadas hacia la Red de Telefonía Conmutada, cobrándonos por tiempo u ofreciéndonos tarifas planas de llamadas. Las tarifas son variadas, pero podemos encontrar precios de 1 cent/minuto o incluso menos a destinos tanto nacionales como internacionales.
  • Proveedores de DID: Nos proporcionan un número de teléfono de la Red de Telefonía Conmutada donde cualquier persona nos pueda llamar, y nos entregan las llamadas  a nuestro Asterisk. Normalmente se alquilan por meses, y tienen un coste entre 2 y 10€/mes según el proveedor y el tipo de número. Por ejemplo, podemos tener un DID de numeración fija de Madrid del tipo «91 xxx xx xx», o de cualquier otra provincia española. También podemos alquilar números de países extranjeros para que nos llamen desde allí a precio de llamada local.

Y por supuesto, podemos encontrar proveedores que ofrezcan los dos servicios al mismo tiempo.

Sigue leyendo

Reparar el display de un Kenwood TH-79E

Ha llegado a mis manos un transceptor de radio bibanda UHF/VHF Kenwood TH-79E con problemas de visualización del display. Concretamente la unidad que me han traído sufría parpadeos y problemas con algunos segmentos del LCD, aunque la mayoría de unidades suelen presentar el display completamente en blanco.

Se trata de un problema habitual de este modelo producido por acumulación de suciedad en la cinta que va del LCD a la unidad «A». La solución es tan simple como llegar a la cinta, limpiar los contactos con alcohol y volverlo a montar, con la única salvedad de que tendremos que desoldar un par de contactos del LCD para poder retirarlo. Todo viene bien detallado en el Manual de Servicio del modelo:

Kenwood TH-79E Service Manual

El procedimiento es sencillo, aunque hay que tener cuidado a la hora de sacar la placa «A» de la carcasa, ya que va encajada a presión y la podemos partir. El procedimiento es:

Sigue leyendo

Curso Asterisk (IV): El Dialplan

En la anterior entrada vimos cómo dar de alta algunas extensiones internas, y trabajamos muy por encima con el Dialplan para poder llamar de una extensión a otra.

El Dialplan es el verdadero corazón de Asterisk y de cualquier sistema VoIP. El Dialplan, o plan de marcado, es una colección ordenada de acciones que se ejecutan cuando alguien marca un número dentro de nuestro Asterisk. El ejemplo más trivial sería que cuando alguien marca la extensión de otra persona, por ejemplo «3001», suene el teléfono de ese usuario. Sin embargo, se pueden hacer cosas mucho más avanzadas, como por ejemplo gestionar las llamadas en función de un horario, crear una centralita automática de recepción de llamadas, grabar conversaciones, poner música en espera, etc.

Antes de entrar en lo que se puede hacer con el Dialplan, vamos a definir algunos conceptos básicos.

Sigue leyendo

Crónica de una migración a Pepephone ADSL desde Jazztel

Llevo año y medio contento con mi conexión VDSL2 de Jazztel, con 30 Mbps de bajada y 3,5 Mbps de subida. La conexión es fabulosa, y más con la distancia que tengo hasta la central (unos 100 metros), que me proporciona velocidades reales rozando lo teórico. Pero el precio, si bien está en la media, no me convencía del todo.

Cuando Pepephone lanzó su ADSL Naked sin línea fija de teléfono, llamó mucho mi atención. Que alguien se atreviera a lanzar al mercado un ADSL sin teléfono con unas características decentes me pareció fabuloso, a la par que alineado con mi reciente interés por la VoIP como sustituta definitiva de la telefonía fija tradicional. Cada vez que lo pensaba, el binomio Pepephone + Netelip me parecía más atractivo. Cuando Pepephone bajó el precio de su ADSL de los 23€ / mes iniciales a los 19,50€ / mes actuales, me terminó de convencer.

Tras hacer unas pruebas de viabilidad de la VoIP en escenario real, me decidí a cambiar al ADSL de Pepephone:

  • Protocolo ADSL2+
  • 20 Mbps de bajada
  • 1 Mbps de subida
  • Sin línea de teléfono
  • Soporte y atención telefónica nacional
  • 19,50€ / mes + IVA, precio final

Lo único que echo de menos en Pepephone es tener un poco más de velocidad de subida. En lugar de 20/1 Mbps, no me importaría que fuera 10/2 Mbps, especialmente para tener más margen con la VoIP cuando estoy descargando torrents. No obstante, no es nada que no pueda arreglar con un poco de QoS en el router.

Sigue leyendo

Configuración regional Cisco SPA112 para España

Lo más cómodo para hablar por telefonía IP es utilizar un teléfono inalámbrico normal, de los de toda la vida. Primero por calidad de audio, segundo por movilidad, y tercero porque es lo que estamos acostumbrados a manejar. El ser humano es un animal de costumbres, y si queremos utilizar telefonía IP como alternativa a la telefonía tradicional, tiene que parecerse lo máximo posible.

En el mercado también existen teléfonos con soporte SIP nativo, pero suelen ser muy caros. Aprovechando que seguro que tenemos un teléfono convencional en casa que podemos usar para este fin, o que podemos comprar a bajo precio, lo más habitual es recurrir al uso de adaptadores VoIP.

El Cisco SPA112 es un dispositivo adaptador que permite utilizar un teléfono convencional para hacer llamadas VoIP vía SIP. Permite la conexión de hasta dos teléfonos convencionales, cada uno con su línea SIP independiente, proporcionando una gran calidad de audio con unos retardos mínimos, sin ruidos ni efectos extraños, y que ofrece las mismas sensaciones que la telefonía analógica tradicional. Es un fabuloso dispositivo con un fabuloso precio, unos 39€ en Amazon España. Sólo hay que conectarlo al router, enchufarlo a la corriente, y tendremos dos rosetas de teléfono normales y corrientes.

spa112

Sigue leyendo

Asterisk Honeypot

Aprovechando la facilidad con la que puedo crear máquinas virtuales en Proxmox, estos días he montado un segundo Asterisk para capturar ataques. Esto es lo que se llama Honeypot, un servicio o máquina montada como si fuera real, pero que tiene como objetivo obtener información de vectores de ataque y atacantes potenciales.

Los requisitos planteados son los siguientes:

  • Asterisk con configuración SIP segura (allowguest=no y alwaysauthreject=yes)
  • Puerto SIP por defecto para maximizar el número de escaneos (5060/UDP)
  • Un usuario/extensión con contraseña
  • Por supuesto sin proveedores configurados ni posibilidad de hacer llamadas reales
  • Fail2ban para monitorizar los ataques y crujir atacantes

De momento lleva 24h funcionando, y en este tiempo sólo he recibido 25 ataques de 2 atacantes diferentes:

 Lo cierto es que esperaba mucho mayor volumen de atacantes, ya que un servidor SIP vulnerable con posibilidad de enrutar llamadas reales es un objetivo muy goloso. Por ejemplo, por SSH, la cantidad de gente realizando escaneos es inmensa.

Estoy incluso planteándome dejar esta máquina activa de forma permanente, ya que al estar en el puerto SIP por defecto distrae la atención frente al verdadero servidor SIP.

Seguiremos informando de los resultados en esta misma entrada.

OVH suspende completamente los servicios VoIP

Soy cliente de la línea SIP de OVH desde primeros del presente año 2013. El 14 de junio eliminaron los servicios VoIP para nuevas contrataciones, pero prometieron a sus clientes que seguirían ofreciendo el servicio a quienes ya lo tuvieran contratado.

Hoy, he recibido el siguiente email de OVH:

Nos ponemos en contacto con usted para informarle que vamos a dejar de ofrecer el servicio de VoIP el 31 de diciembre de 2013.
Nuestras ofertas de telefonía, lanzadas en 2010 con una gran inversión para brindarle el mejor servicio, no han tenido la acogida esperada. Por ese motivo, hemos tomado la decisión de retirar este producto para centrarnos en el núcleo de nuestra actividad: el alojamiento web.

Los servicios que van a dejar de prestarse son los siguientes :

– 0034*********

En los casos que sea técnicamente posible, puede, si así lo desea, portar su número geográfico a otro operador. Para ello, solo tiene que contactar con nuestro servicio de atención al cliente, que le guiará sobre el procedimiento que debe seguir (más abajo encontrará la información de contacto).

[…]

Por un lado está el amargo sabor de boca que supone que te dejen tirado con un servicio que te gusta. Es tiempo de empezar a buscar alternativas. Pero lo que no tiene sentido es que argumenten falta de acogida cuando, de la noche a la mañana, OVH se hizo realmente famoso en multitud de foros tras el lanzamiento de su servicio de telefonía IP en España, y más aun con la aparición del ADSL Naked de Pepephone.

Sencillamente no les salía rentable. Lanzaron una campaña de marketing agresiva mediante un producto que no se podía sostener. Era imposible que tuvieras un DID nacional y llamadas gratuitas a fijos de 40 países por solo 1€ / mes. Pero se hicieron famosos, muy famosos.

Al estilo de la jugada de la telefonía fue la de los servidores dedicados Kemsirve por 3€ / mes. Publicaron el producto y rápidamente la información se extendió como la pólvora. Pero después cancelaron sin previo aviso la mitad de los pedidos, colgaron el cartel de «sold out», y nunca más se ha vuelto a saber nada más del tema.

Lo que parecía una mala planificación empieza a parecer intencionado. Productos rompedores a precios imposibles que duran días, se extienden como la pólvora en los foros de Internet, y luego es imposible contratar. Es una gran falta de seriedad.

Curso Asterisk (III): Extensiones Internas

Ya es hora de empezar a hacer algo con nuestro flamante y recién instalado Asterisk. Los objetivos para el capítulo de hoy son:

  • Ver algunos parámetros de configuración de SIP
  • Crear un par de extensiones SIP
  • Crear un dialplan que permita hacer llamadas entre extensiones
  • Hacer una llamada de prueba desde un softphone

A partir de ahora el término dialplan empezará a aparecer mucho. El dialplan es el corazón de Asterisk, y es donde reside buena parte de su potencial. Más adelante lo veremos en profundidad, pero de momento es suficiente con saber que es donde se define la lógica a seguir cuando entra una llamada en el sistema.

Crear extensiones SIP

Vamos a editar el archivo /etc/asterisk/sip.conf para que quede de esta manera:

Sigue leyendo

Curso Asterisk (II): Instalación

En el capítulo de hoy vamos a instalar Asterisk en una Debian 7 Wheezy. Para ello tenemos dos formas, en función de si queremos utilizar los repositorios de Debian o preferimos compilar la última versión de Asterisk a partir de su código fuente. Yo os recomiendo esta última.

Instalar Asterisk: The Easy Way

En los repositorios de Debian tenemos la versión Asterisk 1.8 disponible. Instalarla es tan fácil como hacer lo siguiente:

La versión 1.8 es suficiente para empezar a cacharrear, pero es bastante antigua. Para un uso real recomiendo instalar la última versión disponible, normalmente con más funcionalidades y menos bugs, a partir del código fuente. También necesitaremos compilar si queremos hacerlo funcionar en plataforma ARM (RaspBerry Pi, PandaBoard, etc). La versión estable más reciente en este momento es Asterisk 11.5.

Sigue leyendo