Cómo instalar Asterisk en CentOS/RHEL 8/7

Cómo instalar Asterisk en CentOS/RHEL 8/7

Asterisco es un marco de código abierto utilizado para la creación de aplicaciones de comunicación. Puede usarlo para convertir una computadora o servidor local en el servidor de comunicación. Se utiliza para alimentar sistemas IP PBX, puertas de enlace VoIP, servidores de conferencias y otras soluciones. Es utilizado por todo tipo de organizaciones en todo el mundo y finalmente, pero no por último es gratuito y de código abierto.

En este tutorial, le mostraremos cómo instalar Asterisco en CentOS 8/7 (Las instrucciones también funcionan RHEL 8/7), pero antes de comenzar, tendremos que hacer algunos preparativos para que así Asterisco puede funcionar sin problemas después de la instalación.

Paso 1: Desactivar Selinux en CentOS

Para hacer esto, ssh a su sistema y utilizando su editor de texto de línea de comando favorito, abra /etc/selinux/config y deshabilitar Selinux.

# vim/etc/selinux/config 

La línea Selinux debería verse así:

Selinux = discapacitado 
Deshabilitar Selinux en CentOS

Ahora reinicie su sistema. Una vez que regrese SSH nuevamente a ese sistema.

Paso 2: Instale los paquetes requeridos

Asterisco tiene bastantes requisitos que deben instalarse. Puede usar el siguiente comando yum para instalar los paquetes requeridos como se muestra.

# yum instalación -y epel-release dmidecode gcc-c ++ ncurses-devel libxml2-devel make wget openssl-devel newt-devel-devel kernel-devel sqlite-devel-devel 
Instalar paquetes de software

Antes de continuar más, cree un nuevo usuario con privilegios de sudo llamado "asterisco", Usaremos este usuario para configurar asterisco en el sistema.

# adduser asterisk -C "Asterisk user" # passwd asterisk # usermod -ag asterisk # su asterisco 

A continuación, instalar Pjsip, es una biblioteca de comunicación multimedia de código abierto gratuita que implementa protocolos basados ​​en estándares como SIP, SDP, RTP, aturdimiento, turno y hielo. Es el Sorbo de asterisco Conductor del canal que debería mejorar la claridad de las llamadas.

Para obtener la última versión, primero creemos un directorio temporal donde construiremos el paquete a partir de la fuente.

$ mkdir ~/build && cd ~/build 

Ahora vaya a la página de descarga de PJSIP y tome el paquete o use el siguiente comando wget para descargar el paquete directamente en el terminal.

Tenga en cuenta que mediante la redacción de este artículo, la última versión es 2.8, Esto puede cambiar en el futuro, por lo tanto, asegúrese de usar la última versión:

$ wget https: // www.pjsip.org/versión/2.9/PJProject-2.9.alquitrán.bz2 

Una vez que se complete la descarga, extraiga el archivo y cambie a ese directorio.

$ tar xvjf pjproject-2.9.alquitrán.BZ2 $ CD PJProject-2.9 

El siguiente paso es preparar el paquete para ser compilado. Puede usar el siguiente comando:

ps ./Configurar cflags = "-dndebug -dpj_has_ipv6 = 1"--prefix =/usr --libdir =/usr/lib64 --enable-shared --sable-video -disable-sound --disable-opencore-amr 
Configurar la fuente de PJSIP

No deberías ver ningún error o advertencia. Asegúrese de que se cumplan todas las dependencias:

$ Make Dep 
Compilar fuente PJSIP

Y ahora podemos completar las bibliotecas de instalación y enlace con:

$ make && sudo make install && sudo ldconfig 
Instalar fuente PJSIP

Finalmente, asegúrese de que todas las bibliotecas estén instaladas y presentes:

$ ldconfig -p | Grep PJ 

Debe obtener la siguiente salida:

libpjsua2.entonces.2 (libc6, x86-64) => /lib64 /libpjsua2.entonces.2 libpjsua2.Entonces (libc6, x86-64) => /lib64 /libpjsua2.Entonces libpjsua.entonces.2 (libc6, x86-64) => /lib64 /libpjsua.entonces.2 libpjsua.Entonces (libc6, x86-64) => /lib64 /libpjsua.Entonces libpjsip.entonces.2 (libc6, x86-64) => /lib64 /libpjsip.entonces.2 libpjsip.Entonces (libc6, x86-64) => /lib64 /libpjsip.Entonces libpjsip-ua.entonces.2 (libc6, x86-64) => /lib64 /libpjsip-ua.entonces.2 libpjsip-ua.Entonces (libc6, x86-64) => /lib64 /libpjsip-ua.así que libpjsip-simple.entonces.2 (libc6, x86-64) => /lib64 /libpjsip-simple.entonces.2 libpjsip-simple.Entonces (libc6, x86-64) => /lib64 /libpjsip-simple.Entonces libpjnath.entonces.2 (libc6, x86-64) => /lib64 /libpjnath.entonces.2 libpjnath.Entonces (libc6, x86-64) => /lib64 /libpjnath.Entonces libpjmedia.entonces.2 (libc6, x86-64) => /lib64 /libpjmedia.entonces.2 libpjmedia.Entonces (libc6, x86-64) => /lib64 /libpjmedia.Entonces libpjmedia-vidEDEV.entonces.2 (libc6, x86-64) => /lib64 /libpjmedia -videodev.entonces.2 libpjmedia-VidEodev.Entonces (libc6, x86-64) => /lib64 /libpjmedia -videodev.Entonces libpjmedia-code.entonces.2 (libc6, x86-64) => /lib64 /libpjmedia-codec.entonces.2 libpjmedia-codec.Entonces (libc6, x86-64) => /lib64 /libpjmedia-codec.Entonces libpjmedia-audioDev.entonces.2 (libc6, x86-64) => /lib64 /libpjmedia-AudioDev.entonces.2 libpjmedia-audiodev.Entonces (libc6, x86-64) => /lib64 /libpjmedia-AudioDev.Entonces libpjlib-util.entonces.2 (libc6, x86-64) => /lib64 /libpjlib-util.entonces.2 libpjlib-util.Entonces (libc6, x86-64) => /lib64 /libpjlib-util.Entonces libpj.entonces.2 (libc6, x86-64) => /lib64 /libpj.entonces.2 libpj.Entonces (libc6, x86-64) => /lib64 /libpj.entonces 

Paso 3: Instale el asterisco en CentOS 8/7

Ahora estamos listos para iniciar la instalación de Asterisk. Navegar de regreso a nuestro ~/construir directorio:

$ CD ~/construcción 

Vaya a la página de descarga de Asterisk y tome la última versión o puede usar el siguiente comando wget para descargar el archivo en terminal.

$ wget http: // descargas.asterisco.org/pub/telefony/asterisk/asterisk-16-corrente.alquitrán.GZ 

Por la escritura de este tutorial, la última versión de Asterisk es dieciséis. Asegúrese de descargar la última versión de Asterisk, cuando siga los pasos.

Ahora extraiga el archivo y navegue al directorio recién creado:

$ TAR -ZXVF ASTERISK-16-Corriente.alquitrán.GZ $ CD ASTERISK-16.5.1 

Este es el momento de mencionar que si desea habilitar el soporte MP3 para reproducir música mientras el cliente está en espera, deberá instalar algunas dependencias más. Estos pasos son opcionales:

$ sudo yum instalación svn $ sudo ./contrib/scripts/get_mp3_source.mierda 

Después del segundo paso, debe obtener una salida similar a estos:

A complementos/mp3 A complementos/mp3/makefile A complementos/mp3/readme a complementos/mp3/decode_i386.c a complementos/mp3/dct64_i386.C A complementos/mp3/mpglib_todo A complementos/mp3/mpg123.h a complementos/mp3/layer3.c a complementos/mp3/mpglib.h a complementos/mp3/decode_ntom.C A complementos/mp3/interfaz.C A complementos/mp3/mpglib_readme a complementos/mp3/comunes.C A Addons/Mp3/Huffman.h a complementos/mp3/tabinit.C Revisión exportada 202. 

Comience ejecutando el script Configurar para preparar el paquete para compilar:

$ sudo contrib/scripts/install_pereq install $ ./configurar--libdir =/usr/lib64-with-jansson-bundled 

Si obtiene alguna dependencia faltante para instalarlas. En mi caso, recibí el siguiente error:

Configurar: Error: se requiere Patch para configurar PJProject Bundled 

Para dar esto simplemente ejecutar:

# parche de instalación yum 

Y volver a ejecutar el script de configuración. Si todo salió perfectamente sin errores, verá la siguiente captura de pantalla.

Configurar la fuente de asterisco

Ahora, comencemos el proceso de compilación:

$ HACER MENUSELECTO 

Después de unos segundos, debe obtener una lista de características para habilitar:

Compilación del módulo de asterisco

Si intenta usar la función de música en espera, deberá habilitar el "format_mp3"Característica de"Complementos" sección. Guarde su lista y ejecute el siguiente comando:

$ make && sudo make install 
Instalar fuente de asterisco

Para instalar los archivos de configuración de muestra, use el comando a continuación:

$ sudo hacer muestras 
Instalar muestras de asterisco

Para comenzar el asterisco en el arranque, use:

$ sudo make config 

Actualice la propiedad de los siguientes directorios y archivos:

$ sudo chown asterisk. /var/run/asterisk $ sudo chown asterisk. -R /etc /asterisk $ sudo chown asterisk. -R/var/lib, log, spool/asterisk 

Finalmente, probemos nuestra instalación con:

$ sudo Service Asterisk inicio $ sudo asterisk -rvv 

Debería ver la salida similar a este:

Asterisco 16.5.1, Copyright (c) 1999 - 2018, Digium, Inc. y otros. Creado por Mark Spencer <[email protected]> Asterisk no tiene absolutamente ninguna garantía; Tipo 'Core Show Garantía' para más detalles. Este es un software gratuito, con componentes con licencia bajo la GNU General Public License versión 2 y otras licencias; Usted es bienvenido a redistribuirlo bajo ciertas condiciones. Escriba 'Core Show License' para más detalles. ==================================================== ======================= Conectado con Asterisk 16.5.1 Actualmente se ejecuta en CentOS8-TecMint (PID = 9020) Centos8-TecMint*CLI> 

Si desea ver una lista de comandos disponibles:

Asterisk*cli> show nore ayuda 
Ayuda de asterisco

Para salir de la solicitud de asterisco, simplemente escriba:

asterisco*cli> salir 

Asterisk seguirá ejecutando en segundo plano.

Conclusión

Ahora tienes una carrera Asterisco servidor y puede comenzar a conectar teléfonos y extensiones y ajustar su configuración según sus necesidades. Para obtener más detalles sobre cómo lograr esto, se recomienda usar la página Wiki de Asterisk. Si tiene alguna pregunta o comentario, háganos saber en la sección de comentarios a continuación.