Asterisk es un marco de código abierto que se utiliza para crear aplicaciones de comunicaciones, incluidas puertas de enlace VoIP y servidores de conferencias. Lo utilizan pequeñas empresas, centros de llamadas y gobiernos de todo el mundo. Asterisk utiliza un protocolo VoIP que le permite realizar una llamada utilizando TCP / IP sin ningún costo. Proporciona funciones muy útiles que incluyen correo de voz, grabación de llamadas, llamada automática, música en espera, mensajería y más.
Asterisk puede ejecutarse en múltiples sistemas operativos, aunque originalmente fue creado para Linux. Hoy en día, los usuarios de NetBSD, macOS y Solaris, entre otros, pueden instalar y utilizar el software Asterisk con facilidad.
Pre requisitos
- Ubuntu 20.04 VPS
- Privilegios de root
Inicie sesión en el servidor y actualice los paquetes del sistema operativo del servidor
Primero, inicie sesión en su servidor Ubuntu 20.04 a través de SSH como usuario root:
1 |
ssh root@IP_Address -p Port_number |
Deberá reemplazar «IP_Address» y «Port_number» con la dirección IP y el número de puerto SSH respectivos de su servidor. Además, reemplace «root» con el nombre de usuario de la cuenta de administrador si es necesario.
Antes de comenzar, debe asegurarse de que todos los paquetes del sistema operativo Ubuntu instalados en el servidor estén actualizados. Puede hacer esto ejecutando los siguientes comandos:
1 2 |
apt-get update -y apt-get upgrade -y |
Instalar Dependencias
Antes de comenzar, deberá instalar algunas dependencias necesarias para construir el servidor Asterisk. Puede instalarlos todos usando el siguiente comando:
1 |
apt-get install build-essential git autoconf wget subversion pkg-config libjansson-dev libxml2-dev uuid-dev libsqlite3-dev libtool -y |
Instalar Asterisk
De forma predeterminada, el paquete Asterisk no está incluido en el repositorio predeterminado de Ubuntu 20.04. Por lo tanto, deberá descargarlo y compilarlo desde la fuente. Puedes descargarlo desde Git Hub usando el siguiente comando:
1 |
git clone -b 18 https://gerrit.asterisk.org/asterisk asterisk-18 |
Una vez que se complete la descarga, cambie el directorio al directorio descargado e instale las dependencias requeridas con el siguiente comando:
1 2 3 |
cd asterisk-18/ contrib/scripts/get_mp3_source.sh contrib/scripts/install_prereq install |
Después
1 |
./configure |
Salida:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
configure: Menuselect build configuration successfully completed .$$$$$$$$$$$$$$$=.. .$7$7.. .7$$7:. .$$:. ,$7.7 .$7. 7$$$$ .$$77 ..$$. $$$$$ .$$$7 ..7$ .?. $$$$$ .?. 7$$$. $.$. .$$$7. $$$$7 .7$$$. .$$$. .777. .$$$$$$77$$$77$$$$$7. $$$, $$$~ .7$$$$$$$$$$$$$7. .$$$. .$$7 .7$$$$$$$7: ?$$$. $$$ ?7$$$$$$$$$$I .$$$7 $$$ .7$$$$$$$$$$$$$$$$ :$$$. $$$ $$$$$$7$$$$$$$$$$$$ .$$$. $$$ $$$ 7$$$7 .$$$ .$$$. $$$$ $$$$7 .$$$. 7$$$7 7$$$$ 7$$$ $$$$$ $$$ $$$$7. $$ (TM) $$$$$$$. .7$$$$$$ $$ $$$$$$$$$$$$7$$$$$$$$$.$$$$$$ $$$$$$$$$$$$$$$$. configure: Package configured for: configure: OS type : linux-gnu configure: Host CPU : x86_64 configure: build-cpu:vendor:os: x86_64 : pc : linux-gnu : configure: host-cpu:vendor:os: x86_64 : pc : linux-gnu : |
A continuación, deberá seleccionar los módulos que desea instalar con Asterisk. Puede seleccionarlo usando el siguiente comando:
1 |
make menuselect |
Seleccione los módulos adecuados:
- Applications/app_macro
- Channel Drivers/chan_sip
- Codec Translator/codec_opus
Dar clic en Save and Exit
Compilar con este comando:
1 |
make -j2 |
Instalar los modulos:
1 |
make install |
Salida:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
+---- Asterisk Installation Complete -------+ + + + YOU MUST READ THE SECURITY DOCUMENT + + + + Asterisk has successfully been installed. + + If you would like to install the sample + + configuration files (overwriting any + + existing config files), run: + + + + For generic reference documentation: + + make samples + + + + For a sample basic PBX: + + make basic-pbx + + + + + +----------------- or ---------------------+ + + + You can go ahead and install the asterisk + + program documentation now or later run: + + + + make progdocs + + + + **Note** This requires that you have + + doxygen installed on your local system + +-------------------------------------------+ |
Instalar configuración basica:
1 2 |
make samples make basic-pbx |
A continuación, instale el script de inicio de Asterisk con el siguiente comando:
1 |
make config |
A continuación, actualice las bibliotecas compartidas con el siguiente comando:
1 |
ldconfig |
Crear Asterisk User
Siempre se recomienda ejecutar Asterisk como un usuario independiente por razones de seguridad.
Primero, cree un nuevo usuario de Asterisk con el siguiente comando:
1 |
adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk |
A continuación, edite el archivo de configuración predeterminado de Asterisk y configúrelo para que se ejecute como un usuario de asterisk:
1 |
nano /etc/default/asterisk |
Descomentar las lineas:
1 2 |
AST_USER="asterisk" AST_GROUP="asterisk" |
Guarde y cierre el archivo, luego agregue el usuario de asterisco al grupo de marcado y audio:
1 |
usermod -a -G dialout,audio asterisk |
A continuación, establezca la propiedad y los permisos adecuados de todos los archivos y directorios de Asterisk con el siguiente comando:
1 2 |
chown -R asterisk: /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk chmod -R 750 /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk |
Iniciar y verificar Asterisk
En este punto, Asterisk está instalado y configurado. Ahora, puede iniciar el servicio Asterisk usando el siguiente comando:
1 |
systemctl start asterisk |
También puede habilitar el servicio Asterisk para que se inicie al reiniciar el sistema con el siguiente comando:
1 |
systemctl enable asterisk |
Para verificar el estado del servicio Asterisk, ejecute el siguiente comando:
1 |
systemctl status asterisk |
Salida:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
● asterisk.service - LSB: Asterisk PBX Loaded: loaded (/etc/init.d/asterisk; generated) Active: active (running) since Sun 2021-05-16 12:24:29 UTC; 13s ago Docs: man:systemd-sysv-generator(8) Process: 60668 ExecStart=/etc/init.d/asterisk start (code=exited, status=0/SUCCESS) Tasks: 46 (limit: 4691) Memory: 34.7M CGroup: /system.slice/asterisk.service └─60685 /usr/sbin/asterisk -U asterisk -G asterisk May 16 12:24:29 ubuntu2004 systemd[1]: Starting LSB: Asterisk PBX... May 16 12:24:29 ubuntu2004 asterisk[60668]: * Starting Asterisk PBX: asterisk May 16 12:24:29 ubuntu2004 asterisk[60668]: ...done. May 16 12:24:29 ubuntu2004 systemd[1]: Started LSB: Asterisk PBX. |
Ahora, conéctese a la utilidad de línea de comando Asterisk con el siguiente comando:
1 |
asterisk -vvvr |
Salida:
1 2 3 4 5 6 7 8 9 |
Asterisk GIT-18-78d7862463, Copyright (C) 1999 - 2021, Sangoma Technologies Corporation and others. Created by Mark Spencer Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= Connected to Asterisk GIT-18-78d7862463 currently running on ubuntu2004 (pid = 60685) ubuntu2004*CLI> |
Fuente: