GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Asterisk unter RHEL 8 / CentOS 8 Linux

Dieser Artikel beschreibt, wie Sie die Open-Source-Kommunikationssoftware Asterisk auf RHEL 8 / CentOS 8 installieren; aufgrund der Tatsache, dass Asterisk und andere wichtige Abhängigkeiten nicht als RPM-Pakete aus den Repositories verfügbar sind, müssen sie aus den Quellen kompiliert werden.

In diesem Tutorial lernen Sie:

  • Welches sind die Voraussetzungen für die Installation von Asterisk
  • Wie man Asterisk aus Quellen kompiliert
  • So starten Sie Asterisk
  • Wie man Asterisk neu konfiguriert oder entfernt
  • Zugriff auf die Asterisk-Befehlszeilenschnittstelle

Startausgabe des Asterisk-Systemd-Dienstes auf RHEL 8 / CentOS 8

Softwareanforderungen und verwendete Konventionen

Softwareanforderungen und Linux-Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder verwendete Softwareversion
System RHEL 8 / CentOS 8
Software Asterisk, pjsip, libedit
Andere lokale oder entfernte Repositories konfiguriert; korrektes Systemdatum und Zeitzone.
Konventionen # – erfordert, dass bestimmte Linux-Befehle mit Root-Rechten ausgeführt werden, entweder direkt als Root-Benutzer oder durch Verwendung von sudo Befehl
$ – erfordert, dass bestimmte Linux-Befehle als normaler, nicht privilegierter Benutzer ausgeführt werden

Einführung

Asterisk ist eine Open-Source-PBX-Software (Private Branch Exchange) und als solche besteht ihr Hauptzweck darin, Telefonanrufe zwischen verschiedenen Systemen über traditionelle PSTN-Leitungen oder moderne VoIP-Endpunkte aufzubauen und zu steuern.
In diesem Leitfaden werden wir dafür sorgen Es wird zusammen mit gemeinsamen Komponenten in RHEL 8 / CentOS 8 installiert.

Asterisk auf RHEL 8 / CentOS 8 installieren – Schritt für Schritt.

Wir werden die letzte Version – die 16.3.0 – zum Zeitpunkt des Schreibens dieses Tutorials bereitstellen.

  1. Voraussetzungen

    Wir müssen die folgenden Pakete einschließlich systemd-devel installieren wenn wir Asterisk als Systemdienst starten wollen.

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

    Und aus Quellen entwickeln:

    # dnf -y install binutils gcc gcc-c++ kernel-devel autoconf automake libtool 
    

    Von nun an müssen wir alles aus den Quellen installieren, also tun wir es aus einem gemeinsamen Ordner

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

    Zuerst werden wir libedit kompilieren , ein Ersatz oder eine Alternative zur GNU readline-Befehlszeilenbearbeitung.

    # cd /root/src
    # wget http://thrysoee.dk/editline/libedit-20190324-3.1.tar.gz
    # tar xzvf libedit-20190324-3.1.tar.gz
    # cd libedit-20190324-3.1
    # ./configure && make && make install
    
  2. Optionale Komponenten installieren
    Die folgenden Komponenten sind optional, werden aber in einem realen Szenario sehr oft benötigt.

    DAHDI (Digium/Asterisk Hardware Device Interface):Es ist ein Framework für die Verbindung mit digitalen Telefoniekarten in Asterisk.
    Lass es uns installieren.

    # cd /root/src
    # wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
    # tar zxvf dahdi-linux-complete-current.tar.gz && cd dahdi-linux-complete-3.0.0+3.0.0
    # make all && make install && make install-config
    # cd /etc/dahdi && cp system.conf.sample system.conf
    # systemctl enable dahdi && systemctl start dahdi
    # modprobe dahdi
    # modprobe dahdi_transcode
    

    LibPRI ist eine Bibliothek, die Unterstützung für ISDN (PRI und BRI) hinzufügt und grundsätzlich benötigt wird, wenn eine ISDN-Karte installiert wird, um mit Legacy-Systemen zu kommunizieren.

    So installieren Sie es:

    # cd /root/src/
    # wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.6.0.tar.gz     
    # tar xzvf libpri-1.6.0 && cd libpri-1.6.0
    # make && make install
    
  3. Asterisk installieren
    Jetzt ist es an der Zeit, die Hauptanwendung aus den Quellen zu kompilieren – wie erwähnt.
    Dadurch wird auch die SIP-Bibliothek pjsip installiert in das System.

    # cd /root/src/
    # wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16.3.0.tar.gz
    # tar xzvf asterisk-16.3.0.tar.gz
    # wget https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.8/pjproject-2.8.tar.bz2
    # mv pjproject-2.8.tar.bz2 /tmp
    # cd asterisk-16.3.0
    # ./configure 
    # make && make install && make install-logrotate
    

    Mit make install-logrotate wir stellen sicher, dass die Anwendungsprotokolldateien rotiert werden.

  4. Asterisk konfigurieren
    In Asterisk gibt es viele Konfigurationsdateien, die wichtigste ist asterisk.conf; Um eine Standardversion von allen zu installieren, müssen wir Folgendes ausführen:

    # cd /root/src/asterisk-16.3.0/
    # make samples
    

    Da einige Module oder Funktionen weitere Konfigurationen oder Abhängigkeiten erfordern, ist es an dieser Stelle besser, sie zu deaktivieren.
    Dies ist jedoch nicht zwingend erforderlich, sie sind keine wesentlichen Komponenten, die den Start von Asterisk verhindern.

    #cd /etc/asterisk
    
    # cp modules.conf modules.conf.org
    # echo "noload => res_config_ldap.so"               >>modules.conf
    # echo "noload => res_pjsip_transport_websocket.so" >>modules.conf
    # echo "noload => cdr_sqlite3_custom.so"            >>modules.conf
    # echo "noload => cel_sqlite3_custom.so"            >>modules.conf
    # echo "noload => res_config_sqlite3.so"            >>modules.conf
    # echo "noload => cdr_pgsql.so"                     >>modules.conf
    # echo "noload => cel_pgsql.so"                     >>modules.conf
    # echo "noload => res_config_pgsql.so"              >>modules.conf
    
    sed -i.org 's/enabled = yes/enabled = no/' ari.conf 
    

    Danach ist es an der Zeit, die systemd-Dienstdateien vorzubereiten:

    # cd /root/src/asterisk-16.3.0/contrib/systemd
    # cp asterisk* /usr/lib/systemd/system
    

    Der Asterisk-Dienst sollte aus Sicherheitsgründen als normaler Benutzer ausgeführt werden, daher müssen wir eine Dienst-ID mit dem Namen asterisk hinzufügen wie in der systemd-Konfigurationsdatei angegeben.

    # useradd -m -c "asterisk user"
    
    

    Dann ändern wir einige Berechtigungen:

    chown -R asterisk:asterisk /var/log/asterisk/*
    chown  asterisk:asterisk /var/log/asterisk/.
    
  5. Das Starten von Asterisk
    SELinux verhindert das Starten von Asterisk, also versetzen wir es in den permissive mode der Einfachheit halber.

    # setenforce 0
    # sed -i.org 's/enforcing/permissive/' /etc/sysconfig/selinux
    

    Endlich können wir Asterisk starten

    # systemctl enable asterisk
    # systemctl start asterisk
    

    Sie können Asterisk auch direkt ohne systemd ausführen, indem Sie Folgendes eingeben:

    # /usr/sbin/asterisk -mqf -C /etc/asterisk/asterisk.conf

    oder besser

    # asterisk -vvvc

    um ausführliche Informationen zu erhalten.

    Asterisk-Ausgabe bei direktem Start

  6. Neukonfiguration von Asterisk
    Es ist jederzeit möglich, Astering neu zu konfigurieren, indem Sie beliebige Funktionen entfernen oder (erneut) hinzufügen.
    Stoppen Sie einfach den Dienst, wechseln Sie in den Quellordner und führen Sie make menuselect .

    Sternchenmenü auswählen

    # systemctl stop asterisk
    # cd /root/src/asterisk-16.3.0/
    # make menuselect
    

    Wenn Sie Änderungen vorgenommen haben, müssen Sie die Konfiguration speichern, bevor Sie das Menü verlassen.
    Danach muss Asterisk wie oben beschrieben erneut kompiliert werden. Es ist besser, Änderungen zuerst in einer Testumgebung vorzunehmen.

  7. Asterik entfernen
    Falls Sie jemals Asterisk vom System entfernen müssen – einschließlich Dahdi und libpri – hier sind die Schritte:

    # systemctl stop dahdi
    # systemctl stop asterisk
    # cd /root/src/asterisk-16.3.0
    # make uninstall-all
    cd /root/src/libpri-1.6.0 && make uninstall
    
  8. Zugriff auf Asterisk CLI
    Diese Software hat auch ihre Shell, um darauf zuzugreifen – sobald Asterisk gestartet ist – müssen wir Folgendes eingeben:

    # asterisk -r 

    Asterisk-CLI

Schlussfolgerung

Wir haben Asterisk erfolgreich aus den Quellen kompiliert und gestartet, aber es reicht nicht, um eine Arbeitsumgebung zu bekommen; Normalerweise fügen Sie nach der Installation Ihre SIP-Endpunkte hinzu, indem Sie die Konfigurationsdatei sip.conf bearbeiten – oder über das erwähnte CLI – und konfigurieren Sie eine beliebige Erweiterung in der Datei extensions.conf . Beide Dateien befinden sich in /etc/asterisk.


Cent OS
  1. So installieren Sie Redmine unter RHEL 8 / CentOS 8 Linux

  2. So installieren Sie Hadoop unter RHEL 8 / CentOS 8 Linux

  3. So installieren Sie Perl unter RHEL 8 / CentOS 8 Linux

  4. So installieren Sie Apache Tomcat unter Linux RHEL 8 / CentOS 8

  5. So installieren Sie den DNS-Server unter RHEL 8 / CentOS 8 Linux

So installieren Sie die bin-Datei in RHEL 8 / CentOS 8 Linux

So installieren Sie den VLC Player unter CentOS 8 / RHEL 8 Linux

So installieren Sie WordPress unter RHEL 8 / CentOS 8 Linux

So installieren Sie GIMP unter CentOS 8 / RHEL 8 Linux

So installieren Sie Asterisk auf CentOS 7

So installieren Sie Asterisk 18 auf CentOS 8