Asterisk-i CentOS/RHEL 8/7-de nädip gurmaly
“Asterisk” aragatnaşyk programmalaryny gurmak üçin ulanylýan açyk çeşme çarçuwasydyr. Computerli kompýuter ýa-da serweri aragatnaşyk serwerine öwürmek üçin ulanyp bilersiňiz. IP PBX ulgamlaryny, VoIP şlýuzalaryny, konferensiýa serwerlerini we beýleki çözgütleri güýçlendirmek üçin ulanylýar. Dünýädäki ähli guramalar tarapyndan ulanylýar we ahyrsoňy mugt we açyk çeşme.
Bu gollanmada, Asterisk-i CentOS 8/7-de nädip gurmalydygyny görkezmekçi (görkezmeler RHEL 8/7-de hem işleýär), ýöne başlamazdan ozal, Asterisk gurlandan soň oňat işlemegi üçin käbir taýýarlyk görmeli bolarys. .
1-nji ädim: CentOS-da SELinux-y öçüriň
Munuň üçin ulgamyňyza SSH we halaýan buýruk setiriniň tekst redaktoryny ulanyp,/etc/selinux/config açyň we SELINUX-y öçüriň.
# vim /etc/selinux/config
SELinux setiri şeýle bolmaly:
SELINUX=disabled
Indi ulgamyňyzy täzeden açyň. SSH ýene-de şol ulgama gaýdyp gelýär.
2-nji ädim: Gerekli paketleri guruň
“Asterisk” -iň gurulmaly birnäçe talaplary bar. Görkezilişi ýaly zerur paketleri gurmak üçin aşakdaky yum buýrugyny ulanyp bilersiňiz.
# 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
Has dowam etmezden ozal, “ýyldyz ýyldyzy” diýlip atlandyrylýan sudo aýratynlyklary bolan täze ulanyjy dörediň, bu ulanyjyny ulgamda ýyldyz belgisini gurmak üçin ulanarys.
# adduser asterisk -c "Asterisk User" # passwd asterisk # usermod -aG wheel asterisk # su asterisk
Ondan soň, PJSIP guruň, SIP, SDP, RTP, STUN, TURN we ICE ýaly standart esasly protokollary ýerine ýetirýän mugt açyk çeşme multimediýa aragatnaşyk kitaphanasy. Çagyryşlaryň aýdyňlygyny ýokarlandyrmaly “Asterisk SIP” kanalynyň sürüjisi.
Iň soňky wersiýasyny almak üçin ilki bilen bukjany çeşmeden gurjak wagtlaýyn katalog döredeliň.
$ mkdir ~/build && cd ~/build
Indi bukjany göni terminalda göçürip almak üçin wget buýrugyna geçiň.
Bu makalanyň ýazylmagy bilen iň soňky wersiýanyň 2,8 bolandygyny ýatdan çykarmaň, geljekde bu üýtgäp biler, şeýlelik bilen iň soňky wersiýany ulanmagy unutmaň:
$ wget https://www.pjsip.org/release/2.9/pjproject-2.9.tar.bz2
Göçürip alanyňyzdan soň faýly çykaryň we şol kataloga üýtgediň.
$ tar xvjf pjproject-2.9.tar.bz2 $ cd pjproject-2.9
Indiki ädim, bukjany düzmeli. Aşakdaky buýrugy ulanyp bilersiňiz:
$ ./configure CFLAGS="-DNDEBUG -DPJ_HAS_IPV6=1" --prefix=/usr --libdir=/usr/lib64 --enable-shared --disable-video --disable-sound --disable-opencore-amr
Hiç hili ýalňyşlygy ýa-da duýduryşy görmeli däl. Dependhli baglylyklaryň ýerine ýetirilendigine göz ýetiriň:
$ make dep
Indi bolsa gurnamagy tamamlap, kitaphanalary baglanyşdyryp bileris:
$ make && sudo make install && sudo ldconfig
Ahyrynda, ähli kitaphanalaryň gurnalandygyna we barlygyna göz ýetiriň:
$ ldconfig -p | grep pj
Aşakdaky çykyşy almaly:
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-nji ädim: Asterisk-i CentOS 8/7-de guruň
Indi “Asterisk” -i gurnamaga başlamaga taýýar. ~/Gurmak katalogymyza gaýdyp bar:
$ cd ~/build
Faýly terminalda göçürip almak üçin wget buýrugyna geçiň.
$ wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz
Bu gollanmanyň ýazylmagy bilen, iň soňky Asterisk wersiýasy 16-dyr. Stepsdimleri ýerine ýetireniňizde Asterisk-iň iň soňky wersiýasyny göçürip alýandygyňyza göz ýetiriň.
Indi arhiwi çykaryň we täze döredilen kataloga geçiň:
$ tar -zxvf asterisk-16-current.tar.gz $ cd asterisk-16.5.1
Bu, bellemeli wagt, müşderi garaşýan mahaly aýdym-saz çalmak üçin mp3 goldawyny işletmek isleseňiz, ýene birnäçe garaşlylygy gurmaly bolarsyňyz. Bu ädimler islege bagly:
$ sudo yum install svn $ sudo ./contrib/scripts/get_mp3_source.sh
Ikinji ädimden soň, şuňa meňzeş çykyşlary almaly:
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.
Bukjany düzmek üçin taýýarlamak üçin konfigurasiýa skriptini işledip başlaň:
$ sudo contrib/scripts/install_prereq install $ ./configure --libdir=/usr/lib64 --with-jansson-bundled
Olary gurmak üçin haýsydyr bir garaşlylygy alsaňyz. Meniň ýagdaýymda, aşakdaky ýalňyşlygy aldym:
configure: error: patch is required to configure bundled pjproject
Muny aýlamak üçin ýönekeý ylga:
# yum install patch
Sazlama skriptini täzeden işlediň. Allhli ýalňyşlyklar bolmazdan ajaýyp giden bolsa, aşakdaky skrinshoty görersiňiz.
Indi, gurluşyk işine başlalyň:
$ make menuselect
Birnäçe sekuntdan soň, işletmek üçin aýratynlyklaryň sanawyny almaly:
Aýdym-saz aýratynlygynda saz ulanjak bolsaňyz,\Goşmaçalar bölüminden\format_mp3 aýratynlygyny açmaly bolarsyňyz. Sanawyňyzy ýazdyryň we aşakdaky buýrugy işlediň:
$ make && sudo make install
Mysal konfigurasiýa faýllaryny gurmak üçin aşakdaky buýrugy ulanyň:
$ sudo make samples
“Asterisk” -i açmak üçin başlaň:
$ sudo make config
Aşakdaky kataloglaryň we faýllaryň eýeçiligini täzeläň:
$ sudo chown asterisk. /var/run/asterisk $ sudo chown asterisk. -R /etc/asterisk $ sudo chown asterisk. -R /var/{lib,log,spool}/asterisk
Ahyrynda, gurnamagy synap göreliň:
$ sudo service asterisk start $ sudo asterisk -rvv
Şuňa meňzeş çykyşy görmeli:
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>
Bar bolan buýruklaryň sanawyny görmek isleseňiz:
asterisk*CLI> core show help
“Asterisk” haýyşyndan çykmak üçin ýönekeý ýazyň:
asterisk*CLI> exit
“Asterisk” henizem fonda işleýär.
Indi işleýän “Asterisk” serweriňiz bar we telefonlary we giňeltmeleri birikdirip başlap, islegleriňize görä konfigurasiýaňyzy sazlap bilersiňiz. Muňa nädip ýetip boljakdygy barada has giňişleýin maglumat üçin “Asterisk Wiki” sahypasyny ulanmak maslahat berilýär. Soraglaryňyz ýa-da teswirleriňiz bar bolsa, aşakdaky teswir bölüminde bize habar bermegiňizi haýyş edýäris.