Weboldal keresés

Az Asterisk telepítése a CentOS/RHEL 8/7 rendszeren


Az Asterisk egy nyílt forráskódú keretrendszer, amelyet kommunikációs alkalmazások készítésére használnak. Segítségével egy helyi számítógépet vagy szervert kommunikációs kiszolgálóvá alakíthat. IP alközponti rendszerek, VoIP átjárók, konferenciaszerverek és egyéb megoldások táplálására szolgál. Mindenféle szervezet használja világszerte, és végül, de nem utolsósorban, ingyenes és nyílt forráskódú.

Ebben az oktatóanyagban bemutatjuk, hogyan telepítheti az Asterisk programot CentOS 8/7 rendszeren (az utasítások az RHEL 8/7 rendszeren is működnek) , de mielőtt elkezdenénk, meg kell tennünk néhány előkészületet, hogy a telepítés után az Asterisk zökkenőmentesen működhessen.

1. lépés: Tiltsa le a SELinuxot a CentOS rendszeren

Ehhez lépjen SSH-val a rendszerére, és a kedvenc parancssori szövegszerkesztőjével nyissa meg az /etc/selinux/config elemet, és tiltsa le a SELINUX lehetőséget.

vim /etc/selinux/config

A SELinux sornak így kell kinéznie:

SELINUX=disabled

Most indítsa újra a rendszert. Ha egyszer visszatér az SSH a rendszerbe.

2. lépés: Telepítse a szükséges csomagokat

A Asterisknek jó néhány telepítendő követelménye van. A következő yum paranccsal telepítheti a szükséges csomagokat az ábra szerint.

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

Mielőtt tovább folytatnánk, hozzon létre egy új felhasználót sudo jogosultságokkal „csillag” néven. Ezt a felhasználót fogjuk használni a csillag beállításához a rendszeren.

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

Ezután telepítse a PJSIP-et, egy ingyenes nyílt forráskódú multimédiás kommunikációs könyvtárat, amely olyan szabványos protokollokat valósít meg, mint a SIP, SDP, RTP, STUN, TURN és ICE. Az Asterisk SIP csatorna-illesztőprogram javítja a hívások tisztaságát.

A legújabb verzió beszerzéséhez először hozzunk létre egy ideiglenes könyvtárat, ahol a csomagot a forrásból építjük fel.

mkdir ~/build && cd ~/build

Most lépjen a PJSIP letöltési oldalára, és fogja meg a csomagot, vagy használja a következő wget parancsot a csomag letöltéséhez közvetlenül a terminálon.

Vegye figyelembe, hogy a cikk írásakor a legújabb verzió a 2.8, ez a jövőben változhat, ezért mindenképpen a legújabb verziót használja:

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

A letöltés befejezése után bontsa ki a fájlt, és lépjen át a könyvtárba.

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

A következő lépés az összeállítandó csomag előkészítése. A következő parancsot használhatja:

./configure CFLAGS="-DNDEBUG -DPJ_HAS_IPV6=1" --prefix=/usr --libdir=/usr/lib64 --enable-shared --disable-video --disable-sound --disable-opencore-amr

Nem láthat semmilyen hibát vagy figyelmeztetést. Győződjön meg arról, hogy az összes függőség teljesül:

make dep

És most befejezhetjük a könyvtárak telepítését és összekapcsolását a következőkkel:

make && sudo make install && sudo ldconfig

Végül győződjön meg arról, hogy az összes könyvtár telepítve van és jelen van:

ldconfig -p | grep pj

A következő kimenetet kell kapnia:

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

3. lépés: Telepítse az Asterisket a CentOS 8/7 rendszeren

Most már készen állunk az Asterisk telepítésének kezdeményezésére. Lépjen vissza a ~/build könyvtárunkba:

cd ~/build

Nyissa meg az Asterisk letöltési oldalát, és töltse le a legújabb verziót, vagy használja a következő wget parancsot a fájl letöltéséhez a terminálon.

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

Az oktatóanyag megírásakor a legújabb Asterisk verzió a 16. Győződjön meg arról, hogy az Asterisk legújabb verzióját tölti le, amikor követi a lépéseket.

Most bontsa ki az archívumot, és keresse meg az újonnan létrehozott könyvtárat:

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

Itt az ideje megemlíteni, hogy ha engedélyezni szeretné az mp3 támogatást a zenelejátszáshoz, miközben a kliens tartásban van, akkor telepítenie kell néhány további függőséget. Ezek a lépések nem kötelezőek:

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

A második lépés után a következőhöz hasonló kimenetet kell kapnia:

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.

Kezdje a configure script futtatásával, hogy előkészítse a csomagot a fordításhoz:

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

Ha bármilyen hiányzó függőséget kap a telepítéshez. Az én esetemben a következő hibaüzenetet kaptam:

configure: error: patch is required to configure bundled pjproject

Ennek megkerüléséhez egyszerűen futtassa:

yum install patch 

És futtassa újra a konfigurációs szkriptet. Ha minden hibátlanul ment, hiba nélkül, a következő képernyőképet fogja látni.

Most kezdjük az építési folyamatot:

make menuselect

Néhány másodperc elteltével meg kell kapnia az engedélyezhető funkciók listáját:

Ha megpróbálja használni a zene tartás funkciót, engedélyeznie kell a „format_mp3 ” funkciót a „Bővítmények” szakaszban. Mentse el a listát, és futtassa a következő parancsot:

make && sudo make install

A minta konfigurációs fájlok telepítéséhez használja az alábbi parancsot:

sudo make samples

Az Asterisk rendszerindításkor történő elindításához használja:

sudo make config

Frissítse a következő könyvtárak és fájlok tulajdonjogát:

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

Végül teszteljük a telepítésünket:

sudo service asterisk start
sudo asterisk -rvv

Ehhez hasonló kimenetet kell látnia:

Asterisk 16.5.1, Copyright (C) 1999 - 2018, Digium, Inc. and others.
Created by Mark Spencer <[email >
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>

Ha látni szeretné az elérhető parancsok listáját, írja be:

asterisk*CLI> core show help

Az Asterisk promptból való kilépéshez egyszerűen írja be:

asterisk*CLI> exit

Az Asterisk továbbra is futni fog a háttérben.

Következtetés

Most már van egy futó Asterisk szervere, és megkezdheti a telefonok és a bővítmények csatlakoztatását, valamint az igényeinek megfelelően módosíthatja a konfigurációt. Ennek eléréséhez további részletekért javasoljuk az Asterisk Wiki oldal használatát. Ha bármilyen kérdése vagy észrevétele van, kérjük, ossza meg velünk az alábbi megjegyzés rovatban.