So installieren Sie Asterisk unter CentOS / RHEL 8/7

Sternchen ist ein Open-Source-Framework zum Erstellen von Kommunikationsanwendungen. Sie können es verwenden, um einen lokalen Computer oder Server zum Kommunikationsserver zu machen. Es wird zur Stromversorgung von IP-PBX-Systemen, VoIP-Gateways, Konferenzservern und anderen Lösungen verwendet. Es wird von allen Arten von Organisationen weltweit verwendet und ist schließlich kostenlos und Open Source.

In diesem Tutorial zeigen wir Ihnen, wie Sie installieren Sternchen auf CentOS 8/7 (Anleitung funktioniert auch weiter RHEL 8/7), aber bevor wir anfangen, müssen wir einige Vorbereitungen treffen Sternchen kann nach der Installation reibungslos laufen.

Schritt 1: Deaktivieren Sie SELinux unter CentOS

Öffnen Sie dazu SSH auf Ihrem System und verwenden Sie Ihren bevorzugten Befehlszeilentexteditor / etc / selinux / config und deaktivieren SELINUX.

# vim /etc/selinux/config

Die SELinux-Linie sollte folgendermaßen aussehen:

SELINUX=disabled
Deaktivieren Sie SELinux in CentOS
Deaktivieren Sie SELinux unter CentOS

Starten Sie nun Ihr System neu. Sobald es wieder SSH zu diesem System kommt.

Schritt 2: Installieren Sie die erforderlichen Pakete


Sternchen hat einige Anforderungen, die installiert werden müssen. Mit dem folgenden Befehl yum können Sie die erforderlichen Pakete wie gezeigt installieren.

# yum install -y epel-release dmidecode gcc-c++ ncurses-devel libxml2-devel make wget openssl-devel newt-devel kernel-devel sqlite-devel libuuid-devel gtk2-devel jansson-devel binutils-devel libedit libedit-devel
Installieren Sie Softwarepakete
Installieren Sie Softwarepakete

Bevor wir fortfahren, erstellen Sie einen neuen Benutzer mit sudo-Berechtigungen namens „Sternchen“, Wir werden diesen Benutzer zum Einrichten verwenden Sternchen auf dem System.

# adduser asterisk -c "Asterisk User"
# passwd asterisk 
# usermod -aG wheel asterisk
# su asterisk

Als nächstes installieren PJSIPist eine kostenlose Open-Source-Multimedia-Kommunikationsbibliothek, die standardbasierte Protokolle wie SIP, SDP, RTP, STUN, TURN und ICE implementiert. Es ist der Sternchen SIP Kanaltreiber, der die Klarheit der Anrufe verbessern soll.

Um die neueste Version zu erhalten, erstellen wir zunächst ein temporäres Verzeichnis, in dem das Paket aus dem Quellcode erstellt wird.

$ mkdir ~/build && cd ~/build

Jetzt geh das PJSIP-Download-Seite und holen Sie sich das Paket oder verwenden Sie den folgenden Befehl wget, um das Paket direkt in das Terminal herunterzuladen.

Beachten Sie, dass beim Schreiben dieses Artikels die neueste Version ist 2.8Dies kann sich in Zukunft ändern. Verwenden Sie daher unbedingt die neueste Version:

$ wget https://www.pjsip.org/release/2.9/pjproject-2.9.tar.bz2

Wenn der Download abgeschlossen ist, extrahieren Sie die Datei und wechseln Sie in dieses Verzeichnis.

$ tar xvjf pjproject-2.9.tar.bz2
$ cd pjproject-2.9

Der nächste Schritt besteht darin, das zu kompilierende Paket vorzubereiten. Sie können den folgenden Befehl verwenden:

$ ./configure CFLAGS="-DNDEBUG -DPJ_HAS_IPV6=1" --prefix=/usr --libdir=/usr/lib64 --enable-shared --disable-video --disable-sound --disable-opencore-amr
Konfigurieren Sie die PJSIP-Quelle
Konfigurieren Sie die PJSIP-Quelle

Sie sollten keine Fehler oder Warnungen sehen. Stellen Sie sicher, dass alle Abhängigkeiten erfüllt sind:

$ make dep
Kompilieren Sie die PJSIP-Quelle
Kompilieren Sie die PJSIP-Quelle

Und jetzt können wir die Installations- und Verknüpfungsbibliotheken vervollständigen mit:

$ make && sudo make install && sudo ldconfig
Installieren Sie die PJSIP-Quelle
Installieren Sie die PJSIP-Quelle

Stellen Sie schließlich sicher, dass alle Bibliotheken installiert und vorhanden sind:

$ ldconfig -p | grep pj

Sie sollten die folgende Ausgabe erhalten:

libpjsua2.so.2 (libc6,x86-64) => /lib64/libpjsua2.so.2
    libpjsua2.so (libc6,x86-64) => /lib64/libpjsua2.so
    libpjsua.so.2 (libc6,x86-64) => /lib64/libpjsua.so.2
    libpjsua.so (libc6,x86-64) => /lib64/libpjsua.so
    libpjsip.so.2 (libc6,x86-64) => /lib64/libpjsip.so.2
    libpjsip.so (libc6,x86-64) => /lib64/libpjsip.so
    libpjsip-ua.so.2 (libc6,x86-64) => /lib64/libpjsip-ua.so.2
    libpjsip-ua.so (libc6,x86-64) => /lib64/libpjsip-ua.so
    libpjsip-simple.so.2 (libc6,x86-64) => /lib64/libpjsip-simple.so.2
    libpjsip-simple.so (libc6,x86-64) => /lib64/libpjsip-simple.so
    libpjnath.so.2 (libc6,x86-64) => /lib64/libpjnath.so.2
    libpjnath.so (libc6,x86-64) => /lib64/libpjnath.so
    libpjmedia.so.2 (libc6,x86-64) => /lib64/libpjmedia.so.2
    libpjmedia.so (libc6,x86-64) => /lib64/libpjmedia.so
    libpjmedia-videodev.so.2 (libc6,x86-64) => /lib64/libpjmedia-videodev.so.2
    libpjmedia-videodev.so (libc6,x86-64) => /lib64/libpjmedia-videodev.so
    libpjmedia-codec.so.2 (libc6,x86-64) => /lib64/libpjmedia-codec.so.2
    libpjmedia-codec.so (libc6,x86-64) => /lib64/libpjmedia-codec.so
    libpjmedia-audiodev.so.2 (libc6,x86-64) => /lib64/libpjmedia-audiodev.so.2
    libpjmedia-audiodev.so (libc6,x86-64) => /lib64/libpjmedia-audiodev.so
    libpjlib-util.so.2 (libc6,x86-64) => /lib64/libpjlib-util.so.2
    libpjlib-util.so (libc6,x86-64) => /lib64/libpjlib-util.so
    libpj.so.2 (libc6,x86-64) => /lib64/libpj.so.2
    libpj.so (libc6,x86-64) => /lib64/libpj.so

Schritt 3: Installieren Sie Asterisk unter CentOS 8/7

Wir sind jetzt bereit, die Installation von Asterisk zu starten. Navigieren Sie zurück zu unserem ~ / bauen Verzeichnis:

$ cd ~/build

Gehe zum Asterisk-Download-Seite und holen Sie sich die neueste Version oder verwenden Sie den folgenden Befehl wget, um die Datei im Terminal herunterzuladen.

$ wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz

Durch das Schreiben dieses Tutorials ist die neueste Asterisk-Version 16. Stellen Sie sicher, dass Sie die neueste Version von Asterisk herunterladen, wenn Sie die Schritte ausführen.

Extrahieren Sie nun das Archiv und navigieren Sie zum neu erstellten Verzeichnis:

$ tar -zxvf asterisk-16-current.tar.gz
$ cd asterisk-16.5.1

Dies ist die Zeit zu erwähnen, dass Sie einige weitere Abhängigkeiten installieren müssen, wenn Sie die MP3-Unterstützung für die Musikwiedergabe aktivieren möchten, während der Client gehalten wird. Diese Schritte sind optional:

$ sudo yum install svn
$ sudo ./contrib/scripts/get_mp3_source.sh

Nach dem zweiten Schritt sollten Sie eine ähnliche Ausgabe erhalten:

A    addons/mp3
A    addons/mp3/Makefile
A    addons/mp3/README
A    addons/mp3/decode_i386.c
A    addons/mp3/dct64_i386.c
A    addons/mp3/MPGLIB_TODO
A    addons/mp3/mpg123.h
A    addons/mp3/layer3.c
A    addons/mp3/mpglib.h
A    addons/mp3/decode_ntom.c
A    addons/mp3/interface.c
A    addons/mp3/MPGLIB_README
A    addons/mp3/common.c
A    addons/mp3/huffman.h
A    addons/mp3/tabinit.c
Exported revision 202.

Führen Sie zunächst das Konfigurationsskript aus, um das Paket für die Kompilierung vorzubereiten:

$ sudo contrib/scripts/install_prereq install
$ ./configure --libdir=/usr/lib64 --with-jansson-bundled

Wenn Sie fehlende Abhängigkeiten erhalten, um sie zu installieren. In meinem Fall habe ich folgenden Fehler erhalten:

configure: error: patch is required to configure bundled pjproject

Um dies zu umgehen, führen Sie einfach Folgendes aus:

# yum install patch 

Führen Sie das Konfigurationsskript erneut aus. Wenn alles perfekt ohne Fehler gelaufen ist, sehen Sie den folgenden Screenshot.

Konfigurieren Sie die Asterisk-Quelle
Konfigurieren Sie die Asterisk-Quelle

Beginnen wir nun mit dem Erstellungsprozess:

$ make menuselect

Nach einigen Sekunden sollten Sie eine Liste der zu aktivierenden Funktionen erhalten:

Asterisk Module Build
Asterisk Module Build

Wenn Sie versuchen, die Wartemusikfunktion zu verwenden, müssen Sie die Option „format_mp3“Feature von”Add-Ons” Sektion. Speichern Sie Ihre Liste und führen Sie den folgenden Befehl aus:

$ make && sudo make install
Installieren Sie Asterisk Source
Installieren Sie Asterisk Source

Verwenden Sie den folgenden Befehl, um die Beispielkonfigurationsdateien zu installieren:

$ sudo make samples
Installieren Sie Asterisk Samples
Installieren Sie Asterisk Samples

Verwenden Sie zum Starten von Asterisk beim Booten:

$ sudo make config

Aktualisieren Sie den Besitz der folgenden Verzeichnisse und Dateien:

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

Lassen Sie uns abschließend unsere Installation testen mit:

$ sudo service asterisk start
$ sudo asterisk -rvv

Sie sollten eine Ausgabe ähnlich dieser sehen:

Asterisk 16.5.1, Copyright (C) 1999 - 2018, Digium, Inc. and others.
Created by Mark Spencer <[email protected]>
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 16.5.1 currently running on centos8-tecmint (pid = 9020)
centos8-tecmint*CLI>

Wenn Sie eine Liste der verfügbaren Befehle anzeigen möchten, geben Sie Folgendes ein:

asterisk*CLI> core show help
Asterisk-Hilfe
Asterisk-Hilfe

Geben Sie zum Beenden der Asterisk-Eingabeaufforderung einfach Folgendes ein:

asterisk*CLI> exit

Asterisk wird weiterhin im Hintergrund ausgeführt.

Fazit

Jetzt hast du ein Rennen Sternchen Server und Sie können beginnen, Telefone und Nebenstellen zu verbinden und Ihre Konfiguration an Ihre Bedürfnisse anzupassen. Für weitere Informationen, wie dies erreicht werden kann, wird empfohlen, die zu verwenden Asterisk Wiki Seite. Wenn Sie Fragen oder Kommentare haben, teilen Sie uns dies bitte im Kommentarbereich unten mit.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *