Instalemos Asterisk en Debian

El objetivo del presente laboratorio es instalar Asterisk desde cero en un servidor Debian.

1. Instalamos Debian.

En este paso no hay mucha dificultad, es simplemente descargar la ISO de la última versión de Debian, preparar un usb con dicha ISO e instalar Debian arrancando desde el USB.

Página Oficial de Debian: https://www.debian.org/

Recomiendo usar Rufus o balenaEtcher.

Durante la instalación no olvidar configurar acceso SSH, ya que todos los comandos deberán ser ejecutados desde otro equipo mediante este protocolo.

Así mismo ten en cuenta haber usado tarjeta de red en modo Puente (Muy Importante) y al terminar la instalación verificar la IP privada de tu equipo.

2. Instalamos cabeceras y wget

sudo apt-get install linux-headers-$(uname -r) 
sudo apt-get install wget

3. Descargamos el Asterisk desde su web oficial

Nos colocamos en la ruta:

cd /usr/src

Ejecutamos los siguientes comandos línea por línea:

sudo wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
sudo wget https://downloads.asterisk.org/pub/telephony/libpri/libpri-1-current.tar.gz
sudo wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-22.4.0.tar.gz

4. Descomprimir e iniciar el proceso de instalación.

sudo tar -zxvf asterisk-22.4.0.tar.gz
cd asterisk-22.4.0/

Obviamente, recordar que el nombre de la carpeta depende de la versión que descargaron. En este laboratorio estamos manejando la versión 22.4.0 (Última versión a la fecha de este post).

Luego de ingresar en nuestra carpeta de Asterisk, instalaremos los prerrequisitos

sudo ./contrib/scripts/install_prereq install

No olvidar que la máquina virtual debe tener internet, ya que se descargaran algunas dependencias, se recomienda colocar la tarjeta en modo puente.

Importante: ejecutar todos los comandos línea por línea para minimizar errores.

Continuamos…

cd /usr/src
sudo tar -zxvf dahdi-linux-complete-current.tar.gz
cd dahdi-linux-complete-3.4.0+3.4.0/
sudo make
sudo make install
sudo make install-config
cd /usr/src/
sudo tar -zxvf libpri-1-current.tar.gz
cd libpri-1.6.1/
sudo make
sudo make install
cd /usr/src/
cd asterisk-22.4.0/
sudo ./configure
sudo make menuselect

Seleccionamos Add-ons y a la derecha activamos chan_ooh323

A la izquierda bajamos hasta ubicar Core Sound Packages y a la derecha activamos CORE-SOUNDS-ES-GSM

Guardamos y Salimos (Save & Exit)

Continuamos…

sudo make
sudo make install
sudo make samples
sudo make config
sudo asterisk -v

Accedemos a la consola de Asterisk mediante:

sudo asterisk -vr

Ejecutamos exit para salir de la consola de Asterisk

5. Creamos las extensiones

cd /etc/asterisk/
sudo mv pjsip.conf pjsip.conf.backup
sudo nano pjsip.conf

Pegamos la siguiente configuración de prueba:

[200]
type = endpoint
aors = 200
auth = clave200
transport = tr
context = prueba
disallow = all
allow = ulaw

[200]
type = aor
max_contacts = 1

[clave200]
type = auth
auth_type = userpass
password = 1234
username = 200

[201]
type = endpoint
aors = 201
auth = clave201
transport = tr
context = prueba
disallow = all
allow = ulaw

[201]
type=aor
max_contacts=1

[clave201]
type=auth
auth_type=userpass
password=1234
username=201

[tr]
type=transport
protocol=udp
bind=0.0.0.0:0

Guardamos (control + s) y Salimos del nano (control + x)

Entramos en la consola de Asterisk para verificar:

sudo asterisk -vr
pjsip show endpoints

pjsip reload

sudo nano asterisk.conf

Dentro de asterisk.conf descomentamos la línea: verbose = 3 y guardamos el archivo.

Ingresamos nuevamente a la consola de Asterisk y recargamos:

sudo asterisk -vr
dialplan reload

Salimos de la consola con exit y continuamos el proceso.

sudo mv extensions.conf extensions.conf.backup
sudo nano extensions.conf

Ingresamos el siguiente contenido de ejemplo para nuestro laboratorio y guardamos.

[prueba]
exten => 500,1,Answer()
exten => 500,2,Playback('demo-congrats')
exten => 500,3,Hangup()

exten => 200,1,Dial(PJSIP/200)
exten => 201,1,Dial(PJSIP/201)

exten => 999,1,Dial(PJSIP/200)

Finalmente, ingresamos a la consola de Asterik y recargamos el dialplan

sudo asterisk -vr
dialplan reload

6. Configurar cliente

Listo, ya tenemos nuestro servidor Asterisk operativo. Ahora configuraremos el cliente Zoiper (o el de tu preferencia).

Colocar la IP de tu servidor Aterisk y el puerto por defecto.

Acabas de completar la instalación de un Servidor Asterisk y la configuración de in cliente SIP, ahora realiza pruebas de llamadas entre 2 anexos y desarrolla las conclusiones finales para completar el laboratorio.

Apuntes importantes

  • No olvides colocar tu tarjeta de red virtual en modo puente.
  • No olvides que todos los comandos detallados en esta guía deben ser ejecutados uno a uno, no te mandes a ejecutar 2 o más líneas de comandos, puesto que incrementarías el margen de error, recuerda que estás en etapa de aprendizaje.
  • Si ya eres un destroyer en Linux, puedes seguir la guía a tu criterio.
  • Para realizar una llamada de un anexo a otro, solo es necesario digitar el número de anexo y marcar, No se requiere anteponer asterisco.

Descarga la máquina virtual Debian con Asterisk desde Aqui

  • Usuario: realdeb
  • Clave: 12345678