Introducción
Asterisk es una popular plataforma PBX de código abierto para desarrollar aplicaciones de comunicación como servidores de conferencias y pasarelas VoIP. Es utilizado por individuos, pequeñas empresas, grandes corporaciones y gobiernos de todo el mundo.
Las características de Asterisk incluyen correo de voz, música en espera, conferencias telefónicas, cola de llamadas, grabación de llamadas, respuesta de voz interactiva, mensajes SMS y más.
Este tutorial explica cómo instalar Asterisk en Ubuntu 20.04 LTS Focal Fossa.
Los repositorios de Ubuntu incluyen una versión anterior de Asterisk. Instalaremos el último Asterisk del código fuente.
Prerrequisitos
Instale los siguientes paquetes necesarios para descargar y crear Asterisk:
sudo apt update
sudo apt install wget build-essential git autoconf subversion pkg-config libtool
Instale DAHDI y LibPRI
DAHDI es un conjunto de controladores y utilidades que permite a Asterisk comunicarse con teléfonos analógicos y digitales. La biblioteca LibPRI permite a Asterisk comunicarse con conexiones ISDN. Si no necesita estas bibliotecas, puede omitir esta sección.
Navegue al directorio /usr/src
y descargue e instale DAHDI:
cd /usr/src/
sudo git clone -b next git://git.asterisk.org/dahdi/linux dahdi-linux
cd dahdi-linux
sudo make
sudo make install
Después:
cd /usr/src/
sudo git clone -b next git://git.asterisk.org/dahdi/tools dahdi-tools
cd dahdi-tools
sudo autoreconf -i
sudo ./configure
sudo make install
sudo make install-config
sudo dahdi_genconf modules
Ejecute los siguientes comandos para crear LibPRI:
cd /usr/src/
sudo git clone https://gerrit.asterisk.org/libpri libpri
cd libpri
sudo make
sudo make install
Instalar Asterisk
Clonar la fuente de Asterisk en el directorio /usr/src
:
cd /usr/src/
sudo git clone -b 18 https://gerrit.asterisk.org/asterisk asterisk-18
En el momento de escribir este artículo, la última versión de Asterisk es 18.x. Si hay una nueva versión disponible, cambie el número de sucursal en el comando anterior.
Antes de continuar con los siguientes pasos, vaya al directorio de origen de Asterisk:
cd asterisk-18/
Descargue las fuentes MP3 necesarias para construir el módulo MP3 y use los archivos MP3 en Asterisk:
sudo contrib/scripts/get_mp3_source.sh
Ejecute el script install_prereq
para instalar las dependencias necesarias:
sudo contrib/scripts/install_prereq install
El script configure
realiza varias comprobaciones para asegurarse de que todas las dependencias del sistema estén presentes. Ejecute el script escribiendo:
sudo ./configure
El siguiente paso es seleccionar los módulos que desea compilar e instalar. Acceda al menú de selección escribiendo:
sudo make menuselect
Seleccione la opción "format_mp3" para decirle a Asterisk que cree el módulo MP3:
Una vez hecho esto, vaya al botón "Guardar y salir" y presione "Entrar".
Inicie el proceso de construcción:
sudo make -j2
La compilación puede llevar algún tiempo, dependiendo de su sistema. Puede cambiar la bandera -j
según la cantidad de núcleos en el procesador.
Una vez completado, instale Asterisk y sus módulos escribiendo:
sudo make install
Puede instalar los archivos de configuración genéricos con la documentación de referencia escribiendo:
sudo make samples
O instale los archivos de configuración básicos de PBX:
sudo make basic-pbx
El último paso es instalar el script de inicialización de Asterisk escribiendo:
sudo make config
También es una buena idea ejecutar ldconfig
para actualizar la memoria caché de la biblioteca compartida:
sudo ldconfig
Crea un usuario de Asterisk
De forma predeterminada, Asterisk se ejecuta como usuario root. Crearemos un nuevo usuario del sistema y configuraremos Asterisk para que se ejecute como un usuario recién creado por razones de seguridad.
Ejecute el siguiente comando para crear un nuevo usuario del sistema llamado asterisk
:
sudo adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk
Para configurar Asterisk para que se ejecute como usuario asterisk
, abra el archivo /etc/default/asterisk
y descomente las siguientes dos líneas:
sudo nano /etc/default/asterisk
AST_USER="asterisk"
AST_GROUP="asterisk"
Agregue el usuario asterisk
a grupos dialout
y audio
:
sudo usermod -a -G dialout,audio asterisk
También debe cambiar la propiedad y los permisos de todos los archivos y directorios de Asterisk para que el usuario de Asterisk pueda acceder a esos archivos:
sudo chown -R asterisk: /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk
sudo chmod -R 750 /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk
Iniciar asterisco
Ahora que está listo, inicie el servicio Asterisk con el siguiente comando:
sudo systemctl start asterisk
Para verificar que Asterisk se esté ejecutando, conéctese a la interfaz de línea de comandos (CLI) de Asterisk escribiendo:
sudo asterisk -vvvr
Verá el indicador CLI predeterminado de Asterisk:
Connected to Asterisk GIT-18-759f906dr5 currently running on ubuntu2004 (pid = 82101)
ubuntu2004*CLI>
El último paso es permitir que el servicio Asterisk se inicie en el inicio con:
sudo systemctl enable asterisk
Configurar cortafuegos
El firewall protegerá su servidor del tráfico no deseado.
Si no tiene un firewall configurado en su servidor, puede consultar nuestra guía sobre cómo configurar un firewall con ufw en ubuntu.
De forma predeterminada, SIP usa el puerto UDP 5060, para abrir el puerto ejecutar:
sudo ufw allow 5060/udp
Si ha habilitado el Protocolo en tiempo real (RTP), también debe abrir el siguiente rango de puertos:
sudo ufw allow 10000:20000/udp
Siéntase libre de ajustar el cortafuegos según sus necesidades.
Conclusión
Le mostramos cómo instalar la última versión de Asterisk desde la fuente en Ubuntu 20.04 LTS Focal Fossa.
Para obtener más información sobre cómo configurar y usar Asterisk, consulte la documentación oficial.