Kif Tinstalla Asterisk fuq CentOS/RHEL 8/7
Asterisk huwa qafas open-source użat għall-bini ta 'applikazzjonijiet ta' komunikazzjoni. Tista 'tużaha biex iddawwar kompjuter jew server lokali għas-server tal-komunikazzjoni. Jintuża biex iħaddem sistemi IP PBX, gateways VoIP, servers tal-konferenzi, u soluzzjonijiet oħra. Jintuża minn kull tip ta 'organizzazzjonijiet madwar id-dinja u finalment, iżda mhux l-aħħar huwa b'xejn u sors miftuħ.
F'dan it-tutorja, ser nuruk kif tinstalla Asterisk fuq CentOS 8/7 (l-istruzzjonijiet jaħdmu wkoll fuq RHEL 8/7), iżda qabel ma nibdew, ikollna bżonn nagħmlu xi preparazzjonijiet sabiex Asterisk ikun jista' jaħdem bla xkiel wara l-installazzjoni. .
Pass 1: Iddiżattiva SELinux fuq CentOS
Biex tagħmel dan, SSH għas-sistema tiegħek u uża l-editur tat-test tal-linja tal-kmand favorita tiegħek, iftaħ /etc/selinux/config u tiddiżattiva SELINUX.
# vim /etc/selinux/config
Il-linja SELinux għandha tidher bħal din:
SELINUX=disabled
Issa reboot is-sistema tiegħek. Ladarba terġa 'lura SSH għal dik is-sistema.
Pass 2: Installa Pakketti Meħtieġa
Asterisk għandu pjuttost ftit rekwiżiti li jeħtieġ li jiġu installati. Tista 'tuża l-kmand yum li ġej biex tinstalla l-pakketti meħtieġa kif muri.
# 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
Qabel ma nkomplu aktar, oħloq utent ġdid bi privileġġi sudo imsejħa asterisk, se nużaw dan l-utent biex insettjaw l-asterisk fuq is-sistema.
# adduser asterisk -c "Asterisk User" # passwd asterisk # usermod -aG wheel asterisk # su asterisk
Sussegwentement, installa PJSIP, hija librerija ta' komunikazzjoni multimedjali b'xejn b'sors miftuħ li timplimenta protokolli bbażati fuq standard bħal SIP, SDP, RTP, STUN, TURN, u ICE. Huwa s-sewwieq tal-kanal Asterisk SIP li għandu jtejjeb iċ-ċarezza tas-sejħiet.
Biex tikseb l-aħħar verżjoni, l-ewwel ejja noħolqu direttorju temporanju fejn se nibnu l-pakkett mis-sors.
$ mkdir ~/build && cd ~/build
Issa mur l-kmand wget biex tniżżel il-pakkett direttament fit-terminal.
Innota li bil-kitba ta 'dan l-artikolu l-aħħar verżjoni hija 2.8, dan jista' jinbidel fil-futur, għalhekk kun żgur li tuża l-aħħar verżjoni:
$ wget https://www.pjsip.org/release/2.9/pjproject-2.9.tar.bz2
Ladarba t-tniżżil tkun kompluta, iġbed il-fajl u ibdel għal dak id-direttorju.
$ tar xvjf pjproject-2.9.tar.bz2 $ cd pjproject-2.9
Il-pass li jmiss huwa li tipprepara l-pakkett li għandu jiġi kkumpilat. Tista' tuża l-kmand li ġej:
$ ./configure CFLAGS="-DNDEBUG -DPJ_HAS_IPV6=1" --prefix=/usr --libdir=/usr/lib64 --enable-shared --disable-video --disable-sound --disable-opencore-amr
M'għandekx tara xi żbalji jew twissijiet. Żgura li d-dipendenzi kollha jiġu sodisfatti:
$ make dep
U issa nistgħu tlesti l-installazzjoni u l-link libreriji ma:
$ make && sudo make install && sudo ldconfig
Fl-aħħarnett, kun żgur li l-libreriji kollha huma installati u preżenti:
$ ldconfig -p | grep pj
Għandek tikseb l-output li ġej:
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
Pass 3: Installa Asterisk fuq CentOS 8/7
Aħna issa lesti li nibdew l-installazzjoni ta 'Asterisk. Innaviga lura għad-direttorju ~/build tagħna:
$ cd ~/build
Mur fil-kmand wget biex tniżżel il-fajl fit-terminal.
$ wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz
Permezz tal-kitba ta 'dan it-tutorja, l-aħħar verżjoni ta' Asterisk hija 16. Kun żgur li qed tniżżel l-aħħar verżjoni ta 'Asterisk, meta tkun qed issegwi l-passi.
Issa oħroġ l-arkivju u naviga fid-direttorju li għadu kif inħoloq:
$ tar -zxvf asterisk-16-current.tar.gz $ cd asterisk-16.5.1
Dan huwa ż-żmien li wieħed isemmi, li jekk inti tixtieq li tippermetti l-appoġġ mp3 biex idoqq il-mużika waqt li l-klijent ikun fuq istiva, ser ikollok bżonn tinstalla ftit dipendenzi aktar. Dawn il-passi huma fakultattivi:
$ sudo yum install svn $ sudo ./contrib/scripts/get_mp3_source.sh
Wara t-tieni pass, għandek tikseb output simili għal dawn:
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.
Ibda billi tħaddem l-iskrittura tal-konfigurazzjoni biex tipprepara l-pakkett għall-kumpilazzjoni:
$ sudo contrib/scripts/install_prereq install $ ./configure --libdir=/usr/lib64 --with-jansson-bundled
Jekk ikollok xi dipendenzi nieqsa biex tinstallahom. Fil-każ tiegħi, sibt l-iżball li ġej:
configure: error: patch is required to configure bundled pjproject
Biex tgħaddi minn dan sempliċement mexxi:
# yum install patch
U erġa' ħaddem l-iskrittura tal-konfigurazzjoni. Jekk kollox mar perfettament mingħajr żbalji, se tara l-screenshot li ġej.
Issa, ejja nibdew il-proċess tal-bini:
$ make menuselect
Wara ftit sekondi, għandek tikseb lista ta 'karatteristiċi biex tippermetti:
Jekk tipprova tuża l-karatteristika tal-mużika fuq l-istiva, ikollok bżonn li tattiva l-karatteristika \format_mp3 mit-taqsima \Add-ons. Issejvja l-lista tiegħek u mexxi l-kmand li ġej:
$ make && sudo make install
Biex tinstalla l-fajls tal-konfigurazzjoni tal-kampjun, uża l-kmand hawn taħt:
$ sudo make samples
Biex tibda Asterisk fuq il-but, uża:
$ sudo make config
Aġġorna s-sjieda tad-direttorji u l-fajls li ġejjin:
$ sudo chown asterisk. /var/run/asterisk $ sudo chown asterisk. -R /etc/asterisk $ sudo chown asterisk. -R /var/{lib,log,spool}/asterisk
Fl-aħħarnett, ejja nittestjaw l-installazzjoni tagħna bi:
$ sudo service asterisk start $ sudo asterisk -rvv
Għandek tara output simili għal dan:
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>
Jekk trid tara lista ta' kmandi disponibbli ittajpja:
asterisk*CLI> core show help
Biex toħroġ mill-pront Asterisk, sempliċement ittajpja:
asterisk*CLI> exit
Asterisk xorta se jkun qed jaħdem fl-isfond.
Issa għandek server Asterisk għaddej u tista 'tibda tgħaqqad it-telefowns u l-estensjonijiet u taġġusta l-konfigurazzjoni tiegħek skont il-bżonnijiet tiegħek. Għal aktar dettalji dwar kif jinkiseb dan, huwa rakkomandat li tuża l-paġna Asterisk Wiki. Jekk għandek xi mistoqsijiet jew kummenti, jekk jogħġbok għarrafna fit-taqsima tal-kummenti hawn taħt.