Redhat / Centos / Almalinux

Cómo instalar Asterisk en Rhel 8 / Centos 8 Linux

Este artículo describirá cómo instalar el software de comunicación de código abierto Asterisk en RHEL 8 / CentOS 8; Debido al hecho de que el asterisco y otras dependencias importantes no están disponibles como paquetes de RPM de los repositorios, es necesario compilarlas de fuentes.

En este tutorial aprenderás:

Salida de inicio del servicio de Asterisk Systemd en RHEL 8 / CentOS 8

Requisitos y convenciones de software utilizados

Requisitos de software y convenciones de línea de comandos de Linux
Categoría Requisitos, convenciones o versión de software utilizada
Sistema RHEL 8 / CENTOS 8
Software Asterisk, PJSIP, Libedit
Otro repositorios locales o remotos configurados; Fecha correcta del sistema y zona horaria.
Convenciones # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

Introducción

Asterisk es un software de intercambio de sucursal privado de código abierto (PBX), y como tal, su objetivo principal es establecer y controlar las llamadas telefónicas entre varios sistemas, a través de líneas PSTN tradicionales o puntos finales de VoIP modernos.
En esta guía, nos aseguraremos de que se instalará en Rhel 8 / Centos 8 junto con componentes comunes.

Instalación del asterisco en RHEL 8 / CentOS 8 - Paso a paso.

Pondremos la última versión: el 16.3.0 al momento de escribir este tutorial.

  1. Requisitos previos

    Necesitamos instalar los paquetes a continuación, incluidos systemd-devel Si queremos iniciar asterisco como un servicio Systemd.

    # dnf -y install wget bzip2 tar sqlite-devel ncurses-devel systemd-devel 


    Y para desarrollar a partir de fuentes:

    # dnf -y instalar binutils gcc gcc-c ++ kernel-devel autoconf automake libbTool 

    De ahora en adelante necesitamos instalar todo, desde fuentes, así que hagámoslo desde una carpeta común

    # mkdir -p /root /src && cd /root /src

    Primero vamos a compilar lango, un reemplazo o alternativa a la edición de la línea de comandos de la línea de lectura de GNU.

    # cd/root/src # wget http: // thysoee.dk/editline/libedit-20190324-3.1.alquitrán.GZ # TAR XZVF LIBEDIT-20190324-3.1.alquitrán.GZ # CD LIBEDIT-20190324-3.1 # ./configure && make && make install 
  2. Instalación de componentes opcionales
    Los siguientes componentes son opcionales, pero en un escenario real se necesitan muy a menudo.

    Dahdi (Interfaz de dispositivo de hardware Digium/Asterisk): es un marco para interactuar con las tarjetas de telefonía digital en Asterisk.
    Vamos a instalarlo.

    # cd/root/src # wget https: // descargas.asterisco.org/pub/telefony/dahdi-linux-complete/dahdi-linux-comprent-corrente.alquitrán.gz # tar zxvf dahdi-linux-compensor.alquitrán.GZ && CD DAHDI-LINUX-COMPLETE-3.0.0+3.0.0 # hacer todo && make install && make install-config # cd /etc /dahdi && cp system.confusión.sistema de muestra.conf # systemCtl habilitar dahdi && systemctl iniciar dahdi # modprobe dahdi # modprobe dahdi_transcode 


    Libpri es una biblioteca que agrega soporte para ISDN (PRI y BRI), básicamente se necesita si instala una tarjeta ISDN para comunicarse con sistemas heredados.

    Para instalarlo:

    # cd/root/src/ # wget http: // descargas.asterisco.org/pub/telefony/libpri/libpri-1.6.0.alquitrán.GZ # TAR XZVF LBPRI-1.6.0 && CD libpri-1.6.0 # make && make install 
  3. Instalación de asterisco
    Ahora es el momento de compilar la aplicación principal de las fuentes, como se mencionó.
    Esto instalará también la biblioteca SIP pjsip en el sistema.
    # cd/root/src/ # wget http: // descargas.asterisco.org/pub/telefony/asterisk/asterisk-16.3.0.alquitrán.GZ # TAR XZVF ASTERISK-16.3.0.alquitrán.gz # wget https: // raw.githubusercontent.com/asterisk/tercero/maestro/pjproject/2.8/PJProject-2.8.alquitrán.BZ2 # MV PJProject-2.8.alquitrán.BZ2 /TMP # CD ASTERISK-16.3.0 # ./Configurar # make && make install && make install-logrotate 

    Con hacer instalar-logrotato nos aseguramos de que los archivos de registro de la aplicación se girarán.

  4. Configuración de asterisco
    En Asterisk hay muchos archivos de configuración, el principal es asterisco.confusión; Para instalar una versión predeterminada de todos ellos necesitamos ejecutar:
    # cd/root/src/asterisk-16.3.0/ # hacer muestras 

    En este punto, dado que algunos módulos o características requieren una configuración o dependencias adicionales, es mejor deshabilitarlos.
    Sin embargo, esto no es obligatorio, no son componentes esenciales que eviten que el asterisco comience.

    #cd /etc /asterisk # módulos CP.módulos confirmantes.confusión.org # echo "noload => res_config_ldap.Entonces ">> módulos.conf # echo "noload => res_pjsip_transport_websocket.Entonces ">> módulos.conf # echo "noload => cdr_sqlite3_custom.Entonces ">> módulos.conf # echo "noload => cel_sqlite3_custom.Entonces ">> módulos.conf # echo "noload => res_config_sqlite3.Entonces ">> módulos.conf # echo "noload => cdr_pgsql.Entonces ">> módulos.conf # echo "noload => cel_pgsql.Entonces ">> módulos.conf # echo "noload => res_config_pgsql.Entonces ">> módulos.conf sed -i.org 's/habilitado = sí/habilitado = no/' ari.confusión 


    Luego es hora de preparar los archivos de servicio Systemd:

    # cd/root/src/asterisk-16.3.0/Contrib/Systemd # CP Asterisk*/usr/lib/systemd/system 

    El servicio de asterisco debe ejecutarse como un usuario normal, por razones de seguridad, por lo que debemos agregar una ID de servicio que se llamará asterisco como se especifica en el archivo de configuración de Systemd.

    # userAdd -m -c "Asterisk User" 

    Entonces cambiemos algunos permisos:

    chown -r asterisco: asterisk/var/log/asterisk/* chown asterisk: asterisk/var/log/asterisk/. 
  5. Asterisco inicial
    Selinux evitará que el asterisco comience, por lo que lo estamos poniendo en modo permisivo por el bien de la simplicidad.
    # setenforce 0 # sed -i.org 's/aplicando/permisivo/'/etc/sysconfig/Selinux 

    Finalmente podemos comenzar asterisco

    # SystemCTL Habilitar Asterisk # SystemCTL Start Asterisk 

    También puede ejecutar Asterisk directamente sin Systemd emitiendo:

    #/usr/sbin/asterisk -mqf -c/etc/asterisk/asterisk.confusión

    o mejor

    # asterisk -vvvc

    Para obtener información detallada.

    Salida de asterisco cuando se inicia directamente


  6. Reconfigurar asterisco
    Es posible en cualquier momento reconfigurar la asteración eliminando o (re) agregando cualquier característica.
    Simplemente detenga el servicio, cambie a la carpeta de origen y ejecute hacer menuselecto. Menú Asterisk Seleccione
    # SystemCTL Stop Asterisk # CD/Root/SRC/Asterisk-16.3.0/ # hacer menuselecto 

    Si ha realizado algún cambio, necesita guardar la configuración antes de salir del menú selecto del menú.
    Después es necesario volver a compilar el asterisco como se explicó anteriormente. Es mejor hacer cualquier cambio en un entorno de prueba primero.

  7. Eliminando a Asterik
    Si alguna vez necesita eliminar el asterisco del sistema, incluidos Dahdi y Libpri, aquí están los pasos:
    # SystemCTL Stop Dahdi # SystemCTL Stop Asterisk # CD/Root/SRC/Asterisk-16.3.0 # hacer desinstalar CD/root/src/libpri-1.6.0 && Haz desinstalar 
  8. Acceder a Asterisk CLI
    Este software también tiene su shell, para acceder a él, una vez que se inicia el asterisco, necesitamos escribir:
    # asterisco -r 
    Asterisco CLI

Conclusión

Hemos compilado con éxito el asterisco de las fuentes y lo comenzamos, sin embargo, no es suficiente obtener un entorno de trabajo; Por lo general, después de la instalación, agregará sus puntos finales SIP editando el archivo de configuración sorbo.confusión - o a través de la CLI mencionada, y configure cualquier extensión en el archivo extensiones.confusión. Ambos archivos están en /etc /asterisk.

Envío de formulario HTML automático utilizando wwwMechanize
Aquí hay un breve consejo sobre cómo enviar automáticamente un formulario HTML usando una línea de comandos de Linux y un script Perl. Para este ejemp...
Desarrollo web con Perl - CGI - Hello World Ejemplo
Las siguientes líneas describen un proceso más simple de comenzar con Perl y CGI en el sistema Linux en particular Debian Linux. Aunque lo siguiente.....
Usando .archivo htaccess para redirigir a www host
A veces nos gustaría instruir a Apache que redirigiera a todos los visitantes entrantes de nuestro_Sample_Domain.com a www.nuestro_sample_domain.com p...