Cum se configurează smartphone-uri și PC-uri. Portal de informare
  • Acasă
  • Fier
  • Asterisc ceea ce ai nevoie pentru a începe. Asterisk: instalare și instrucțiuni

Asterisc ceea ce ai nevoie pentru a începe. Asterisk: instalare și instrucțiuni

Acest articol este o notă în cazul în care trebuie să-mi amintesc cum să configurez Asterisc pentru a primi și trimite apeluri. Această notă ar trebui să fie suficientă pentru a configura o stație de birou pe ip pbx Asterisc. Până acum nu aveam un concept puternic și nu aveam experiență cum să se instaleze Asterisc pentru lucru fără utilizare FreePbx, adică folosind doar fișierele de configurare și consola. Și acum doar învăț asta. Pe Internet, toate setările se reduc la rezolvarea unei probleme sau alta, dar nu am văzut un articol capabil să ofere măcar o bază pentru setări minime stații IP. Poate nu am căutat bine.

Deci, am compilat și instalat asterisk în folderul /etc/asterisk cu o mulțime de fișiere de configurare. Ce urmează?

1. Capacitatea abonaților interni de a efectua apeluri între ei

2. Configurarea liniilor externe pentru ca stația să primească serviciul de accesare a numerelor de oraș și de distanță lungă și de primire a apelurilor

3. Configurarea posibilității de a efectua apeluri către abonați la numere de oraș și de distanță lungă. Și primiți apeluri din oraș.

Iată trei sarcini principale care trebuie rezolvate în mod natural, schema poate fi diferită. Adică, abonații pot fi uniți în grupuri, pot exista mai mulți operatori externi de telecomunicații, apel primit poate fi trimis la un autoinformator, la o coadă sau poate ambele. Schema de servicii poate varia și deveni mai complexă, dar primele trei condiții vor fi îndeplinite în orice caz.

Prin urmare, primul lucru pe care îl facem este să creăm abonați interni (peer) în fișierul sip.conf

Abonatul A va avea următoarele setări:

Disallow=toate
permit=ulaw
permit=alaw
tip=prieten
nume de utilizator=101
secret=parolă
califica=da
context=101
callerid=101
gazdă=dinamic
apel-limită=1
canreinvite=da
cont cod=101
amaflags=facturare
deny=0.0.0.0/0
permis=192.168.0.66

Unde:
disallow=all , interziceți utilizarea tuturor codecurilor, cu excepția G.711
permit=ulaw
permit=alaw

tip=prieten, acest parametru poate lua trei valori:

- egal, acest tip este folosit pentru a efectua apeluri de intrare și de ieșire. Pentru apelurile primite, numele de utilizator și parola nu vor fi verificate niciodată, ci doar adresa IP și numărul portului sursei apelului.

- utilizator o intrare care poate efectua numai apeluri primite

- prieten o intrare care este atât un peer, cât și un utilizator
nume de utilizator=101
secret=parolă
Autentificare și respectiv parolă

Trimiteți periodic un mesaj SIP de tip Opțiuni pentru a verifica monitorizarea disponibilității dispozitivului pentru înregistrare, util atunci când lucrați prin NAT pentru a salva valori în tabelul de traducere

Nume context, cu reguli de rutare

ID apelant numarul nostru

gazdă=dinamic
ip gazdă de la care va avea loc înregistrarea

apel-limită=1
(contor de apeluri)
Limitați apelurile simultane, aici puteți seta numărul de canale

canreinvite=da
(media directă)

Acest parametru este responsabil pentru procedură RE-Invita, dacă nu, atunci toate apelurile vor fi efectuate Asterisc, dacă da, fluxul RTP va fi trimis între două dispozitive ocolind Asterisc

cont cod=101
amaflags=facturare

Înregistrarea CDR pentru câmpul cod de cont va avea valoarea 101
Valoarea câmpului de semnalizare AMA pentru apelurile efectuate de la acest utilizator SIP

deny=0.0.0.0/0
permis=192.168.0.66
ACL ip, căruia îi vom permite înregistrarea

De asemeneaPentruabonatB:

Disallow=toate
permit=ulaw
permit=alaw
tip=prieten
nume de utilizator=102
secret=parolă
califica=da
context=102
callerid=102
gazdă=dinamic
apel-limită=1
canreinvite=da
cont cod=102
amaflags=facturare
deny=0.0.0.0/0
permis=192.168.0.67

Mai multe opțiuni în sărbătoare care pot fi utile:

transport=tcp,udp
Pot lucra nu numai folosind udp, ci necesită setarea tcpenable=yes în general
rtptimeout=180
rtpholdtimeout=420

Util pentru clienții SIP care nu se blochează când sunt închise sau deconectate. ÎN în acest caz, Sesiunea RTP se va putea reseta prin timeout, rtpholdtimeout - dacă apelul este în așteptare

nat=force_rport,comedia

Dacă dispozitivul se află în spatele NAT, atunci reparăm lucrul prin rport, trimitem pachetele RTP înapoi la adresa IP și portul de la care au fost primite, ignorând informațiile din SDP

defaultexpiry=60
Timpul de expirare a înregistrării în secunde pentru înregistrările de intrare și de ieșire

dtmfmode=rfc2833

Cum vom lucra cu semnalele DTMF

1. Deci, sarcina unu, configurarea rutei între clienții sip 101 și 102, în cea mai simplă versiune poate fi rezolvată cu o singură linie în fișierul sip.conf și include configurații


exten => _XXX,1,Dial(SIP/$(EXTEN),20,T)

Este convenabil să utilizați sip.conf astfel:

Include => in_out_peer_local

Acum abonatul 101 va putea comunica cu abonatul 102 și invers, 102 va putea suna 101

2. Pentru a crea condiții în care abonații interni vor putea accesa liniile externe, vom conecta stația la operatorul de telecomunicații folosind același sip

Adică vom crea un portbagaj
tip=peer
gazdă=XX.XXX.XXX.XX
port=5060
fromdomain=ip-ul stației noastre
nat=nu
disallow=toate
permit=ulaw
permit=alaw
permit=gsm
canreinvite=nu
;allow=g722
trustpid=da
sendrpid=da
dtmfmode=rfc2833
califica=da
nesigur=invită,port
deny=0.0.0.0/0.0.0.0
permis=XX.XXX.XXX.XX/255.255.255.255
context=oferiți

Setările portbagajului sunt foarte asemănătoare cu setările de la egal la egal, în principiu, acesta este un peer, opțiuni importante
fromdomain – setați fromdomain în pachetul sip, astfel încât să puteți înțelege unde să returnați pachetele sip la stația noastră
trustpid=da
sendrpid=da

A avea sau nu încredere în ceea ce se primește Telecomanda-Parte-ID

nesigur=invită,port

Nu solicităm autentificarea mesajelor INVITE primite, nu verificăm numărul portului doar pentru conformitatea cu adresa IP

3. Este doar o chestiune de lucruri mici, de îndată ce trunchiul este activat, trebuie să înregistrați rutarea de ieșire pentru a efectua apeluri către abonații A și B
Standardul de facto pare să spună că întotdeauna se stabilește mai întâi comunicarea de ieșire

Crearea unui context pentru efectuarea apelurilor efectuate

Pentru apelurile efectuate către oraș


exten => _XXXXXX,1, Dial(SIP/ provider /$(EXTEN))
exten => _XXXXXX,n,Hangup

Pentru apeluri efectuate către destinații la distanță lungă


exten => _8.,1,Dial(SIP/ provider /$(EXTEN))
exten => _8.,n,Hangup

După ce conexiunea de ieșire funcționează, configuram conexiunea de intrare

Într-un caz simplu fără autoinformator, grupuri și cozi, va arăta așa


exten => 2466754,1, Dial(SIP/$(EXTEN))
exten => 2466754,n,Hangup

Orice statie poate fi configurata in acelasi mod conform principiilor discutate mai sus.

Asterisk, a cărui instalare va fi discutată în acest material, este un software pentru organizarea așa-numitului birou centrala telefonica sau IP-PBX (Private Branch eXchange, PBX). Reunește toate telefoanele din birou într-o singură rețea de informații, pe baza căreia funcționează diverse servicii comunicare vocală. Asterisk rulează pe Linux, BSD, OS X și Windows folosind un emulator.

Asterisk poate transporta vocea peste patru protocoale VoIP diferite și poate interfața cu aproape toate dispozitivele telefonice standard (inclusiv telefoanele mobile) folosind echipamente relativ ieftine. Instrumente Asterisk diverse posibilitati mesageria vocală(mesaj vocal), inclusiv agendă telefonică, conferințe, răspuns vocal interactiv și cozi de apeluri.

În acest material ne vom uita la procesul de instalare a Asterisk pe sistemul de operare Linux, în special pe distribuții populare CentOS și Debian, precum și proceduri de bază pentru configurarea unui server de mesagerie vocală.

Instalarea serverului Asterisk de la sursă

În primul rând, să ne uităm la algoritmul de instalare pentru un server de telefonie IP, care este disponibil pe absolut orice distribuție Linux, și anume asamblarea și instalarea de software din codul sursă. Această metodă vă permite să instalați Asterisk de la zero.

Înainte de a instala un server de telefonie IP în sistem, trebuie îndeplinite o serie de condiții. Asterisk trebuie să fie instalat pe un sistem care rulează o versiune de kernel de cel puțin 2.6, iar sistemul trebuie să aibă fișiere de antet pentru ca programul să fie compilat cu succes. Asterisk este scris în C, așa că pentru a construi, compilatorul gcc trebuie să fie instalat pe sistem cu biblioteci însoțitoare, cum ar fi termcap și openssl. Crearea suplimentelor Asterisk necesită, de asemenea, biblioteci preinstalate și clientul mysql, precum și fișierele de antet corespunzătoare.

Când sistemul este pregătit pentru instalare, va trebui să mergeți la secțiunea Descărcare de pe site-ul oficial și să descărcați următoarele arhive de pe acesta:

  1. asterisc.
  2. asterisc-sunete.
  3. asterisc-suplimente.
  4. zaptel.
  5. libpri.

Fișierele trebuie copiate pe un server care va îndeplini funcțiile unui PBX de birou. Puneți-le într-un folder /usr/src/.

După aceea, rulați Accesați directorul cu arhivele și despachetați fiecare dintre ele cu comanda:

tar-xzf<имя_архива>tar.gz

Arhivele vor fi despachetate în foldere cu nume care se potrivesc cu numele arhivelor. Accesați fiecare folder secvenţial cu comanda:

CD<имя_папки>

Și rulați următoarele comenzi în fiecare folder.

1. Pregătirea pentru asamblare:

2. Asamblare:

3. Instalare:

Dacă comenzile de mai sus se completează cu succes, veți construi și instala Asterisk pe serverul dvs.

Procedura de instalare de la sursă este aceeași pentru toate distribuțiile Linux, dar nu toată lumea este familiarizată cu aceasta. De regulă, majoritatea utilizatorilor preferă metodele de instalare oferite de o anumită distribuție.

În acest sens, vom lua în considerare procedurile de instalare pentru Asterisk pe două platforme populare pentru crearea PBX-urilor de birou: CentOS și Debian GNU/Linux.

Instalarea Asterisk pe CentOS

În scopul acestui exemplu, vom instala Asterisk 13. Vom instala Asterisk pe CentOS 7.

Se presupune că instalarea va fi efectuată în modul consolă text ca superutilizator (rădăcină).

Mai întâi trebuie să instalați toate cerințele necesare. Asigurați-vă că toate pachetele enumerate mai jos sunt prezente pe sistemul dumneavoastră. Sunt destul de multe:

Ca rezultat, sistemul va conține toate dependențele necesare pentru a construi cu succes serverul Telefonie cu asterisc.

Următorul pas ar trebui să fie dezactivarea SELinux. Sistemul de securitate Linux îmbunătățit cu securitate din CentOS este activat implicit și de foarte multe ori interferează cu funcționarea normală a Asterisk. Prin urmare, pentru configurarea și funcționarea cu succes a serverului, acesta trebuie dezactivat.

Să verificăm starea activității sistemului SELinux cu următoarea comandă:

Dacă sistemul raportează că SELinux este activat, vom efectua procedura de dezactivare. Pentru a face acest lucru, trebuie să faceți modificări fișierului de configurare din folder /etc/selinux, prin stabilirea steagului corespunzător.

sed -i "s/\(^SELINUX=\).*/\SELINUX=DEZACTIVAT/" config

timedatectl set-timezone<имя_зоны>(de exemplu, America/Los_Angeles)

Pentru a verifica dacă fusul orar a fost setat, puteți utiliza următoarea comandă:

starea timedatectl

Apoi va trebui să reporniți sistemul pentru ca modificările să intre în vigoare. Pentru a face acest lucru, utilizați comanda de repornire.

Acum să trecem la instalarea Asterisk.

De fapt, instalarea Asterisk pe CentOS se reduce la același ansamblu de la sursă pe care l-am întâlnit în secțiunea anterioară. Aici ne vom uita la procesul de asamblare, ținând cont de caracteristicile unui anumit distribuție Linux, și anume CentOS 7.

Mai întâi, să descarcăm și să instalăm propriul server de telefonie IP.

Descărcați arhiva cu Asterisk 13 din secțiunea Descărcări de pe site-ul oficial al produsului și Să-l salvăm în folderul /usr/src. Să despachetăm arhiva cu comanda:

tar zxvf<имя_архива>

Să mergem la folderul cu arhiva dezambalată și să executăm comenzile de mai jos.

./configure --libdir=/usr/lib64 --with-pjproject-bundled

Această secvență de comenzi va pregăti sursele pentru asamblare.

make menuselect.makeopts

După setarea opțiunilor de compilare, efectuați următoarea secvență de acțiuni:

1. Creați un separat cont utilizator pentru serverul de telefonie IP.

adduser asterisk -s /sbin/nologin -c „Utilizator Asterisk”

2. Construiți și instalați serverul.

make && make install

3. Setați drepturile de acces Asterisk pentru utilizatorul nou creat.

chown -R asterisc. /var/lib/asterisc

Ca rezultat, serverul de bază Asterisk va fi construit și instalat.

Pe lângă Asterisk în sine, îl puteți instala pe CentOS într-un mod similar completări utile la server. Citiți mai jos despre asta.

FreePBX

FreePBX este o interfață web grafică cu funcții complete, concepută pentru configurarea și gestionarea unui PBX de birou. Instalarea Asterisk cu FreePBX se realizează în următoarea secvență.

Să începem baza de date:

systemctl start mariadb

Descărcați codul sursă FreePBX din GitHub în folderul /usr/src:

git clone -b release/13.0 https://github.com/FreePBX/framework.git freepbx

./start_asterisk start

Și o serie de comenzi pentru configurarea FreePBX:

DAHDI

DAHDI este un driver care permite lui Asterisk să interacționeze cu diverse echipamente telefonice. Este responsabil pentru funcționarea plăcilor de interfață de telefonie instalate direct în serverul care rulează Asterisk. Procedura de instalare pentru DAHDI este descrisă mai jos.

Descărcați arhiva cu driverul în directorul /usr/src, despachetați-o și accesați folderul dezarhivat. Rulați comenzile din el:

PJSIP

PJSIP este o bibliotecă scrisă în C care este responsabilă cu suportarea diferitelor protocoale de telefonie IP. Din versiunea Asterisk 13.8 inclusiv, biblioteca PJSIP poate fi instalată separat. Cu toate acestea, dacă Asterisk este compilat cu steag --cu-pjproject-bundled(ceea ce am făcut în secțiunea anterioară), biblioteca PJSIP va fi instalată direct când serverul este compilat.

Pentru a instala PJSIP separat, este necesară următoarea procedură.

Descărcați arhiva cu driverul de pe pjsip.org în directorul /usr/src, despachetați-o și accesați folderul dezarhivat. Rulați comenzile din el:

Proceduri post-instalare

Odată ce instalarea Asterisk este finalizată, trebuie să efectuați o serie de pași: acțiuni suplimentare. Aceste proceduri sunt obligatorii.

1. Configurați protecția pentru serverul bazei de date:

mysql_secure_installation

Pentru a finaliza procedura, pur și simplu răspundeți Y la toate întrebările.

2. Modificați setările serverului web:

3. Deschideți accesul la serviciile și porturile necesare pentru ca Asterisk să funcționeze:

firewall-cmd --permanent --zone=public --add-service=(http,https) --add-port=5060-5061/tcp --add-port=5060-5061/udp --add-port= 10000-20000/udp

4. Configurați încărcarea automată a bazei de date:

systemctl enable mariadb

5. Configurați serverul web să se încarce la pornirea sistemului:

systemctl enable httpd

6. Configurați pornirea automată FreePBX când sistemul pornește:

nano /etc/systemd/system/freepbx.service

systemctl activa freepbx

7. Configurați o conexiune la baza de date prin ODBC. Dacă este instalat un modul învechit cdr_mysql.so, Acest articol este opțional, dar totuși recomandat:

nano /etc/odbc.ini

Pentru a testa conectivitatea ODBC, utilizați următoarea comandă:

isql -v asteriskcdrdb

8. Reporniți sistemul pentru a aplica modificările făcute:

Instalarea Asterisk 13 pe Debian

ÎN această secțiune Ne vom uita la procedura de instalare pe o altă platformă populară - Debian. Vestea bună pentru utilizatori este că este relativ simplu, deși include și construirea de la sursă. De exemplu, vom instala Asterisk pe Debian 8.

Instalarea se realizează ca superutilizator (rădăcină). Deschideți un terminal, obțineți drepturile corespunzătoare, după care puteți continua cu instalarea.

Mai întâi, descărcați Asterisk 13 de pe site-ul oficial și extrageți arhiva descărcată. Accesați folderul cu sursele dezambalate.

Acum să instalăm dependențele necesare. Cel mai important - compilatorul gcc - este deja disponibil în Debian. Deci, să le descarcăm pe cele rămase:

După ce toate dependențele sunt descărcate și instalate, rulați următoarea comandă în folderul cu arhiva extrasă Asterisk:

Comanda ar trebui să se finalizeze fără erori. Dacă acest lucru duce la un mesaj că unele dependențe lipsesc, instalați-le.

Înainte de a compila Asterisk, este posibil să activați sau să dezactivați module individuale:

Va fi deschis aplicație de consolă cu o listă de module. Deplasând tastele în jos și în sus prin listă, le puteți activa și dezactiva. Unele module suplimentare necesită instalarea dependențelor. Acest lucru se poate face folosind apt-get.

Acum să începem compilarea Asterisk. Introduceți comenzile familiare în consolă:

1. Creați coduri sursă:

2. Instalare în directoarele de sistem:

Când compilarea se termină fără erori, trebuie să rulați comanda:

Aceasta completează instalarea. Asterisk a fost instalat cu succes pe serverul dvs. Următoarea comandă va afișa consola de management Asterisk:

asterisc -vvvvvvgc

Configurarea Asterisk

Acum să ne uităm la procedurile de bază pentru configurarea serverului de telefonie Asterisk. Ele sunt fundamental aceleași pentru toate distribuțiile Linux.

Mai întâi trebuie să adăugați următorul text la fișier sip.conf:

Acest lucru va crea cinci conturi care pot fi utilizate de orice client SIP (Cisco SIP Phone, xlite, ATA și altele asemenea). Toți utilizatorii vor fi înregistrați în Asterisk. Dacă această configurație nu funcționează, încercați să îl opriți firewall până la finalizarea instalării software-ului.

Creați primul dvs. plan de apelare

Planul de numere (dialplan) oferă o descriere oficială a proceselor de procesare a apelurilor telefonice. Dialplan-ul spune sistemului în detaliu ce trebuie să facă cu apelurile primite și efectuate. De exemplu, Asterisk le poate redirecționa, le poate răspunde cu un răspuns automat și așa mai departe.

Deschideți fișierul extensie.confîntr-un folder /etc/asteriscși adăugați linia la el:

exten => _XXXX,1, Dial(SIP/$(EXTEN))

Acum totul este configurat Clienți SIP va putea primi și trimite apeluri. Datorită ușurinței configurării dialplanului, Asterisk este una dintre cele mai prietenoase platforme de telefonie IP. Nu sunt necesare prea multe abilități pentru a configura un PBX de birou.

Crearea primului trunchi SIP

Asterisk poate efectua apeluri efectuate și primite. Pentru apelurile efectuate, solicităm unui furnizor să redirecționeze apelurile către sistemul nostru, precum și o adresă IP publică.

Pentru a face acest lucru, trebuie să configurați un canal trunk SIP comunicare virtualăîntre echipamentele clientului şi operator de telefonie. Dacă serverul nostru cu Asterisk va acționa ca echipament al clientului, configurarea unui trunchi vă va permite să conectați la acesta orice număr de numere de telefon din oraș folosind protocolul SIP

Pentru a crea un trunchi, adăugați următorul cod în fișier sip.conf:

După aceasta va trebui să intri extensie.conf inca o linie:

exten => _XXXXXXX.,1, Dial(SIP/trunk1/$(EXTEN))

Acest lucru vă va permite să stabiliți o conexiune cu furnizorul dvs. pentru a efectua apeluri de ieșire.

Concluzie

Configurarea unui PBX de birou cu drepturi depline bazat pe Asterisk, a cărui instalare a fost discutată în acest articol, include mult mai multe proceduri decât cele descrise mai sus. Informații detaliate despre serverul de telefonie și capacitățile acestuia sunt prezentate în documentația oficială Asterisk.

23.02.2012 15:56

Un articol care permite programatorilor începători să efectueze configurarea de bază a asteriscului

Asterisk este unul dintre cele mai comune servere de telefonie IP, împreună cu sisteme precum Switchwox și 3CX. Acest sistem a câștigat o mare popularitate odată cu răspândirea Internetului de înaltă calitate în țara noastră, precum și cu mulți furnizori de telefonie care oferă numere de telefonîn format SIP sau așa-numitele numere SIP. Una dintre astfel de companii este Datagroup, care s-a impus ca unul dintre liderii pe piața serviciilor de comunicații. Cu numerele SIP care devin mai ieftine, este logic să folosiți modern sisteme telefonice Telefonie IP în locul vechiului mini-PBX analogic. Acest lucru se datorează largii funcţionalitate centre de apeluri bazate pe Asterisk. În același timp, costul echipamentului și al instalării Asterisk este practic același ca în costurile bănești.

Instalarea asterisk se face prin descărcarea și apoi compilarea codului sursă distribuit gratuit dezvoltat de Digium. sursele asterisc există numai pentru compatibilitatea cu Unix sisteme de operare, dintre care cele mai comune sunt Linux și FreeBSD. Instalarea asterisc pe Windows este posibilă numai prin implementarea unei mașini virtuale. Puteți descărca cele mai recente versiuni de asterisk de la următorul link. În acest moment sunt în curs de dezvoltare 4 versiuni ale acestui server. Versiunile asterisk 1.4 și asterisk 1.6 au cea mai mare stabilitate dintre toate modulele. Pe de altă parte, în ceea ce privește funcționalitatea, versiunea asterisk 1.8 se compară favorabil, care are suport pentru multe module și funcții noi, inclusiv suport pentru protocolul SRTP, lucru cu IPv6 și performanță îmbunătățită atunci când lucrează cu SIP și ISDN.

Acest articol va discuta despre instalarea asterisk v 1.6.22 pe Linux Fedora Core.

Pentru a începe instalarea, descărcați sursele asterisc. Pentru a face acest lucru, executați comenzile în consola serverului:

# wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.2.22.tar.gz

# tar -xzvf asterisc-1.6.2.22.tar.gz

Înainte de a compila sursele, să instalăm toate modulele și utilitățile însoțitoare necesare:

# yum instalează gcc

# yum instalează gcc-c++

# yum install make

# yum install libxml2-devel

# yum install ncurses-devel

După toate utilitati suplimentare instalat, instalăm asteriscul în sine:

# cd asterisc-1.6.2.22

După instalarea cu succes, în directorul /etc/asterisk veți găsi asterisc"a fișiere de configurare. Asterisk este configurat prin editarea fișierelor de configurare care au o structură și operatori foarte specifici. Baza configurației la configurarea asterisk este sip.conf și fișierele extensions.conf După ce ați studiat și editat aceste fișiere, puteți asigura funcționarea corectă a serverului.

Fișierul sip.conf include setările tuturor dispozitivelor SIP înregistrate pe server, care interacționează ulterior între ele prin conectarea a două sau mai multe canale SIP, inițiind astfel o conexiune telefonică - adică un apel.

Exemplu de fișier sip.conf:

Calificare=da
nat=nu

Defaulttexty=3600
disallow=toate
permit=alaw
permit=ulaw
fromuser=044XXXXXXX
gazdă=80.91.169.2
nesigur=invită,port
secret=xxxxxxxxxxxx
tip=peer
nume de utilizator=044XXXXXXX
context=incoming
limba=ro
califica=da
dtmfmode=auto

Tip=prieten
gazdă=dinamic
nesigur=invită,port
username=fxo
secret=xxxxxxxx
context=incoming
califica=da
nat=nu
canreinvite=nu
allowtransfer=nu
dtmfmode=auto
disallow=toate
permit=alaw
permit=ulaw

Tip=prieten
regexten=101
secret=xxxxxxxxxxxxx
context=intern
gazdă=dinamic
callerid="101"
disallow=toate
permit=alaw
permit=ulaw
limba=ro
grup de apeluri=1
grup de preluare=1
califica=da
canreinvite=da
apel-limită=4
nat=nu

ÎN în acest exemplu Este prezentată cea mai simplă listă de dispozitive SIP. Este ușor de observat că configurația conține blocuri cuprinse între paranteze drepte. Aceste blocuri sunt cele care descriu configurația oricăror dispozitive (peer) la configurarea Asterisk. Să parcurgem pe scurt blocurile și cei mai de bază parametri.

Blocul este necesar. Include setări și opțiuni care se aplică în mod implicit tuturor blocurilor. Cu alte cuvinte, dacă nu este specificat un parametru la descrierea unui dispozitiv, atunci Asterisk îl citește din acest bloc.

Următoarele trei blocuri descriu în mod direct dispozitivele SIP. Pentru claritate, toate cele trei dispozitive au scopuri diferite. Blocul descrie parametrii pentru numărul de sip al companiei Datagroup, blocul descrie parametrii pentru conectarea la un gateway VOIP, iar blocul descrie parametrii unui dispozitiv sip intern obișnuit, care poate fi utilizat de un telefon IP software sau hardware. .

Să trecem peste principalii parametri ai dispozitivelor SIP. Parametrul de context determină ce algoritm de acțiune să se aplice unui anumit dispozitiv. Callerid definește numărul și numele de peer, care vor fi afișate atunci când se efectuează un apel de ieșire de la acesta. Opțiunile de interdicție și de autorizare determină ce codecuri să folosească pentru comunicare. Opțiunea secretă este parola pentru înregistrarea acestui peer. Este recomandabil să faceți parolele suficient de complexe pentru a evita piratarea de către cei nedoritori.

Fișierul extensions.conf descrie interacțiunile dintre contexte și canale de comunicare, dintre care pot fi un număr mare. De fapt, acest fișier este principalul la configurarea asteriscului.

Exemplu de fișier extensions.conf:

Exten => _XXX,1,Dial(SIP/$(EXTEN),120,tT)
exten => _XXX,n,Hangup

Exten => _X.,1,Dial(SIP/datagroup/$(EXTEN),120,tT)
exten => _X.,n,Hangup

Exten => _X.,1,Dial(SIP/101,60,tT)
exten => _X.,2,Hangup

Exten => h,1,Hangup

În acest exemplu cel mai simplu, avem doi algoritmi de acțiuni (context) - intern și incoming. Să ne reamintim că legarea la contexte se realizează la crearea de peer-uri în fișierul sip.conf și ulterior este atribuită în extensions.conf atunci când se încearcă inițierea comunicării cu un peer.

Să descriem cele două contexte mai detaliat. Doar după numele lor devine clar că sunt utilizați pentru algoritmi pentru abonații interni și apelurile primite. Un exemplu generalizat, care poate fi exprimat în următoarea linie, vă va ajuta să înțelegeți designul acestui fișier:

Exten => _XXX,n,Comandă(Opțiuni)

Aceste opțiuni sunt descifrate după cum urmează:

Exten => _XXX - un prefix de serviciu cu care intră aproape toate liniile acest dosar. Descrie reprezentarea contextului de intrare. Cu alte cuvinte, dacă acest context a fost contactat de peer number 101, atunci algoritmul pentru acesta ar trebui să înceapă cu construcția exten => 101. Prefixul acceptă expresii regulate si poate fi indicat in general. De exemplu, exten => _XXX indică faptul că sub acest algoritm sunt incluși toți colegii formați din trei cifre.

N - numărul de linie al algoritmului. În orice codul programului există o succesiune de instrucţiuni care sunt executate pe rând. În același mod, există o astfel de secvență în setările asteriscului. Singura diferență este că comenzile executate prin asterisc sunt numerotate. Este obligatoriu să indicați primul rând în mod explicit. După cum probabil ați observat, toate contextele încep cu rândurile:

Exten => _XXX,1,…..
exten => _X.,1,…..
exten => h,1,……

Dar liniile suplimentare pot fi numerotate implicit, adică astfel:

Exten => _XXX,n,…..
exten => _X.,n,…..
exten => h,n,……

Când numărul de linie este implicit specificat, asterisc le execută secvenţial de sus în jos, ca şi cu orice alt cod.

Comandă - comandă executată prin asterisc. Comenzi de bază nu atât de mult. Pentru setări de bază Este suficient să cunoaștem sintaxa comenzii Dial, cu ajutorul căreia ne vom uita la opțiunile rămase.

De exemplu:
exten => _X.,1,Dial(SIP/101,60,tT) - asteriscul va forma extensia 101 și va încerca să ajungă la abonat în 60 de secunde cu posibilitatea de a intercepta apelul de la colegii care apelează și primesc (opțiuni tT)
exten => _X.,1,Dial(SIP/datagroup/$(EXTEN),120,tT) asteriscul va forma numărul care este transmis în variabila $(EXTEN) folosind grupul de date peer-ul specificat anterior în sip.conf

Primul exemplu a fost folosit în contextul de intrare. Aceasta înseamnă că toate apelurile primite care vin în acest context sunt redirecționate către abonatul intern care răspunde la aceste apeluri. Al doilea exemplu, la rândul său, arată cum se efectuează un apel de ieșire prin trecerea numărului format în variabila de serviciu $(EXTEN).

Exemple de fișiere pot fi copiate direct din acest articol și lipite în sip.conf și extensions.conf și editate unele opțiuni (autentificare, nume de peer, parole etc.). După configurarea asteriscului, pornim serverul cu o comandă simplă:

Mai multe acțiuni pot fi efectuate din linia de comandă asterisc, care este lansată cu comanda:

# asterisc -rvvvvd

Odată ajuns în consolă, puteți verifica funcționarea serverului dvs. Va afișa toate acțiunile pe care le efectuează.

P.S. Dacă nu ați putut configura serverul sau aveți nevoie de o configurație mai complexă, vă vom ajuta cu plăcere să configurați asterisk. Contactele noastre.


După instalarea sistemului.
În cele din urmă, într-un fel sau altul, am avut instalate Asterisk și FreePBX.

Voi descrie situația puțin mai detaliat pentru a compara dacă schema noastră de lucru este potrivită pentru dvs. Noi internet mic furnizor, avem nevoie de o înregistrare a conversațiilor, cozile de apeluri către telefon fix și telefoane mobile, un meniu vocal care vorbește despre promoții cu posibilitatea de a alege la ce departament să mergi și posibilitatea de a pune rapid în fața tuturor acestora un mesaj despre accidente pe anumite străzi ale orașului pentru ca oamenii să nu depună suprasolicitare suport tehnic, de preferință gratuit . Pentru a nu cumpăra gateway-uri scumpe, am decis să schimbăm numerele de telefon ale orașului și să cumpărăm câteva numere + o duzină de canale de la un furnizor de telefonie IP. Cineva va spune că nu este de încredere etc. Spune-mi doar, ce diferență are un furnizor de internet pe telefoane fixe dacă întregul său internet a căzut? Dar este ieftin. Conexiunea ne-a costat doar 38 USD, fiecare număr de telefon 2 USD și linie 1,2 USD pe lună. După care am primit setările chiar și fără autorizare și un cont a fost legat la adresa noastră IP. Aș dori imediat să stipulez cum va fi structurat acest articol, pentru a nu-l supraîncărca cu tone de capturi de ecran, voi descrie crearea fiecărui element o dată (ceea ce vă sfătuiesc să faceți, deoarece vor fi necesare pentru experimentele dumneavoastră ulterioare) , și apoi voi scrie diagrama a ceea ce se referă la ce în schema noastră de lucru. Cu siguranță diagrama ta va fi diferită, dar vei putea înțelege sensul. Voi descrie doar acele elemente care au fost necesare direct în timpul instalării.

Acum este momentul să porniți portbagajul:

Pentru claritate, voi scrie în engleză pentru că... Interfața este tradusă în bucăți și destul de misterios. Accesați Conectivitate> Trunk-uri> Adăugați trunk SIP.

În colțul din dreapta va fi o listă cu trunchiuri pe care le-ați creat deja. După ce am deschis unul nou, am completat aleatoriu numele - Trunk Name, numindu-l Vega (Vegatelecom este furnizorul nostru). ID apelant de ieșire prin introducerea numărului în formatul 380652ХХХХХХ așa cum este emis de operatorul nostru, acesta este numărul de la care se vor efectua apelurile de ieșire, dacă nu l-ați setat, nu a fost posibil să apelați folosind acest trunk, spunea tot liniile erau ocupate. În Setări de ieșire, am completat un alt câmp Trunk Name și am introdus setările date de furnizor:

gazdă=93.178.205.29
tip=peer
disallow=toate
permit=alaw&ulaw&g729
nat=nu
canreinvite=nonat
nesigur=invită
dtmfmode=rfc2833

În partea de jos am făcut clic pe butonul Trimite modificări și am primit trunchiul creat.

Acum trebuie să alegem unde vom primi apelurile. Accesați Aplicații > Extensie > Dispozitiv SIP generic > Trimiteți

Sunt trei puncte importante setarea dată:

  1. Configurați o adresă IP statică pentru server
  2. Configurați DNS
  3. Configurați fusul orar
Să trecem la configurarea IP-ului. Pentru a face acest lucru, accesați fila AdminAdministrator de sistemSetări de rețea


Aici configuram urmatoarele optiuni:

  • Interfață de rețea - interfata de retea, adică o anumită placă de rețea (NIC)
  • Atribuire IP- selectați Static pentru a configura o adresă IP statică
  • IP static- introduceți adresa IP a serverului
  • Mască de rețea- masca de retea
  • Poarta de acces- gateway implicit
  • Porniți automat- pornește când serverul pornește


Să setăm notificări pentru serverul nostru Asterisk în cazul unor erori, cum ar fi mici spațiu pe disc sau defecțiune a matricei RAID:


Configuram urmatoarele optiuni:

  • De la Adresă- adresa e-mail, pe care ATS-ul o va indica ca adresa expeditorului la generarea unei scrisori
  • Notificări de stocare- e-mail pentru notificări despre problemele de stocare a datelor (eșec RAID sau spațiu redus pe disc)
  • IP notificări de detectare a intruziunilor- e-mail pentru notificări despre intruziuni sau încercări de piratare a serverului

Configurare securitate

Asterisk are un sistem de detectare a intruziunilor încorporat – Fail2Ban. Pentru a configura sistemul, accesați fila AdminAdministrator de sistemDetectarea intruziunilor


Sistemul este flexibil și uneori reacționează atunci când nu este necesar :) Prin urmare, vă sfătuim să intrați în Lista albă o listă de adrese IP necesare, cum ar fi proxy-uri IP SIP, adrese de gateway, de exemplu FXS. Uneori se întâmplă ca adresa IP a gateway-ului FXS la care sunt conectate toate telefoanele analogice de birou să fie interzisă.

  • Stare- vă recomandăm să monitorizați întotdeauna starea lui Fail2Ban, astfel încât starea să fie funcţionare
  • Detectarea intruziunilor- V în acest moment puteți opri și reporni serviciul.
  • Ora interzicerii- timpul în secunde în care adresa IP va fi în stare de blocare
  • Max Reîncercați- numărul de încercări de conectare la PBX pe care utilizatorul le poate face în timpul Find Time.
  • Găsiți timp- timpul în care dispune utilizatorul Max Reîncercațiîncearcă să se conecteze la sistem.
  • E-mail:- adresa de e-mail la care vor fi trimise notificări despre adăugarea unei noi adrese IP la interdicție.
  • Lista albă- o listă de adrese IP pre-introduse care sunt de încredere de către administrator.

Configurarea numerelor de extensie

Pentru a configura aparate telefoniceși creați numere interne, accesați fila AplicațiiExtensii. Am descris procesul de creare a numerelor interne (Extensie) în articolul de la linkul de mai jos:

Configurarea unui trunchi SIP

Conectarea la ISP-ul dvs. este cel mai important pas în configurarea serverului dvs. IP - PBX Asterisk. Setările furnizorului sunt cele care vor permite utilizatorilor noștri să efectueze și să primească apeluri primite. Pentru a configura un trunchi SIP, accesați fila ConectivitateTrunchiuri. Procesul de creare a unui trunchi SIP este descris în detaliu în articolul de la linkul de mai jos:

Configurarea rutei

După ce am configurat numerele interne și trunchiurile SIP pentru a se conecta la furnizor, trebuie să configuram rutarea apelurilor. Ca parte a acestei instalări, vom învăța serverul nostru Asterisk cum să gestioneze apelurile primite și ieșite. b>Conectivitate → Rute de intrare/ieșire. Am descris acest proces în detaliu în articolul de la linkul de mai jos:

Deoarece Asterisk nostru va fi instalat într-o companie mică, intenționăm să facem un meniu vocal în care vom ajuta utilizatorii să contacteze rapid persoana potrivită. Configurarea unui meniu vocal (IVR) este reglementată în modulul IVR, a cărui consolă de configurare se află în fila AplicațiiIVR. Puteți găsi setările la linkul de mai jos::

Ți-a fost util acest articol?

Te rog spune-mi de ce?

Ne pare rău că articolul nu v-a fost util: (Vă rugăm, dacă nu este dificil, indicați de ce? Vă vom fi foarte recunoscători pentru un răspuns detaliat. Vă mulțumim că ne ajutați să devenim mai buni!

Interfața grafică a administratorului IP - PBX Asterisk - FreePBX, are un număr mare de opțiuni de configurare, opțiuni de rutare, conexiune diverse echipamente, începând de la telefoane și terminând cu gateway-uri. În acest articol vom descrie configurația de bază a celei de-a treisprezecea versiuni a FreePBX imediat după.

Video pas cu pas

Conectarea la FreePBX

Pentru a vă conecta la GUI FreePBX, trebuie să introduceți adresa IP Asterisk pe care ați specificat-o în timpul fazei de instalare. Dacă ați uitat ce adresă IP ați specificată, conectați monitorul și tastatura la server, apoi introduceți informațiile pentru utilizatorul root, după cum se arată mai jos:



Când vă conectați, vi se va da adresa IP a serverului dvs. Dacă versiunea dvs. de distribuție este diferită și nu vedeți aceeași ieșire, rulați următoarea comandă:

# ifconfig

Ieșirea comenzii vă va permite să vedeți toate interfețele disponibile și adresele IP ale acestora.

Activare și parola de administrator

După ce v-ați conectat la FreePBX 13 printr-un browser de internet, vi se va solicita imediat să creați un cont de administrator, specificând numele de utilizator, parola și adresa de e-mail a administratorului de sistem. După creație de succes, selectați elementul de pe pagina principală Administrare FreePBXși specificați parametrii creați:



Imediat după conectare, accesați fila AdminAdministrator de sistemși apăsați butonul Activare




După aceasta, urmați instrucțiunile instalatorului. Va trebui să furnizați adresa de e-mail, parola, numărul de telefon și locația serverului.


Setări SIP

Modul Setări SIP Aceasta este o vizualizare grafică a setărilor din fișierul /etc/asterisk/sip_nat.conf. Aici, folosind interfața grafică, puteți configura cei mai importanți parametri precum setări NAT, adresa IP externă și setările de codec. Pentru a accesa setări, faceți clic pe fila Setări, și apoi Setări Asterisk Sip.



Permite apeluri SIP de intrare anonime
Această opțiune vă permite să permiteți sau să blocați apelurile primite de la numere necunoscute. Vă sfătuim să interziceți acest tip apeluri, deoarece posibila permitere a apelurilor anonime ar putea deveni o lacună pentru atacatori.

Rețele locale
Introduceți adresele de subrețea locale (situate în rețeaua dvs.) în care Asterisk va avea încredere. De exemplu, 192.168.2.0/255.255.255.0

Intervalele RTP
Specificați intervalul de porturi RTP. Vă recomandăm să lăsați totul ca implicit.

RTP strict
Când se stabilește un flux RTP între două dispozitive, adresele sursă și destinație sunt atribuite. Când această opțiune este activată, toate pachetele care provin de la o altă adresă IP vor fi aruncate. Vă recomandăm să nu dezactivați această opțiune.

Codec-uri
Bifați caseta de lângă codecurile necesare.

Poziția codecurilor indică prioritatea acestora. De exemplu, în captura de ecran de mai jos, se acordă prioritate g.711 u-law, apoi g.711 a-law, gsm și așa mai departe. Puteți citi mai multe despre telefoane în articolele noastre anterioare.

Configurarea NAT în FreePBX

În majoritatea cazurilor, dacă un administrator detectează o problemă de audibilitate unidirecțională sau că apelurile sunt întrerupte după câteva secunde de conversație, problema este în NAT. Iată ce trebuie să faceți pentru a scăpa de această problemă: în setările modulului Setări Asterisk SIP, accesați fila Setări Chan SIPși rețineți următoarele:

NAT- da
Configurare IP- IP static
Ignorați IP extern- introduceți adresa IP externă

Reinvită Comportament- Nu
Asigurați-vă că indicați în Setări locale Rețele în fila anterioară subrețeaua dvs. locală. În plus, redirecționați portul 5060 și intervalul de porturi din parametrul de pe router Intervalele RTP, implicit este 10000-20000


Setări parametrii rețelei FreePBX

Există trei puncte importante în acest cadru:

  1. Configurați o adresă IP statică pentru server
  2. Configurați DNS
  3. Configurați fusul orar
Să trecem la configurarea IP-ului. Pentru a face acest lucru, accesați fila AdminAdministrator de sistemSetări de rețea

Aici configuram urmatoarele optiuni:

  • Interfață de rețea- interfață de rețea, adică o specifică placa de retea(NIC)
  • Atribuire IP- selectați Static pentru a configura o adresă IP statică
  • IP static- introduceți adresa IP a serverului
  • Mască de rețea- masca de retea
  • Poarta de acces- gateway implicit
  • Porniți automat- pornește când serverul pornește



Să setăm notificări pentru serverul nostru Asterisk în cazul unor defecțiuni, cum ar fi spațiu redus pe disc sau defecțiune a matricei RAID:



Configuram urmatoarele optiuni:

  • De la Adresă- adresa de email pe care PBX-ul o va indica ca adresa expeditorului la generarea scrisorii
  • Notificări de stocare- e-mail pentru notificări despre problemele de stocare a datelor (eșec RAID sau spațiu redus pe disc)
  • IP notificări de detectare a intruziunilor- e-mail pentru notificări despre intruziuni sau încercări de piratare a serverului

Configurare securitate

Asterisk are un sistem de detectare a intruziunilor încorporat – Fail2Ban. Pentru a configura sistemul, accesați fila AdminAdministrator de sistemDetectarea intruziunilor



Sistemul este flexibil și uneori reacționează atunci când nu este necesar :) Prin urmare, vă sfătuim să intrați în Lista albă o listă de adrese IP necesare, cum ar fi proxy-uri IP SIP, adrese de gateway, de exemplu FXS. Uneori se întâmplă ca adresa IP a gateway-ului FXS la care sunt conectate toate telefoanele analogice de birou să fie interzisă.

  • Stare- vă recomandăm să monitorizați întotdeauna starea lui Fail2Ban, astfel încât starea să fie funcţionare
  • Detectarea intruziunilor- în acest moment puteți opri și reporni serviciul.
  • Ora interzicerii- timpul în secunde în care adresa IP va fi în stare de blocare
  • Max Reîncercați- numărul de încercări de conectare la PBX pe care utilizatorul le poate face în timpul Find Time.
  • Găsiți timp- timpul în care dispune utilizatorul Max Reîncercațiîncearcă să se conecteze la sistem.
  • E-mail:- adresa de e-mail la care vor fi trimise notificări despre adăugarea unei noi adrese IP la interdicție.
  • Lista albă- o listă de adrese IP pre-introduse care sunt de încredere de către administrator.

Configurarea numerelor de extensie

Pentru a configura telefoane și a crea numere interne, accesați fila AplicațiiExtensii. Am descris procesul de creare a numerelor interne (Extensie) în articolul de la linkul de mai jos:

Configurarea unui trunchi SIP

Conectarea la furnizorul dvs. este cel mai important pas în configurarea serverului dvs. IP - Asterisk PBX. Setările furnizorului sunt cele care vor permite utilizatorilor noștri să efectueze și să primească apeluri primite. Pentru a configura un trunchi SIP, accesați fila ConectivitateTrunchiuri. Procesul de creare a unui trunchi SIP este descris în detaliu în articolul de la linkul de mai jos:

Configurarea rutei

După ce am configurat numerele interne și trunchiurile SIP pentru a se conecta la furnizor, trebuie să configuram rutarea apelurilor. Ca parte a acestei instalări, vom învăța serverul nostru Asterisk cum să gestioneze apelurile primite și ieșite. Conectivitate Ne pare rău că articolul nu v-a fost util: (Vă rugăm, dacă nu este dificil, indicați de ce? Vă vom fi foarte recunoscători pentru un răspuns detaliat. Vă mulțumim că ne ajutați să devenim mai buni!

23.02.2012 15:56

Un articol care permite programatorilor începători să efectueze configurarea de bază a asteriscului

Asterisk este unul dintre cele mai comune servere de telefonie IP, împreună cu sisteme precum Switchwox și 3CX. Acest sistem a câștigat o mare popularitate odată cu răspândirea Internetului de înaltă calitate în țara noastră, precum și cu mulți furnizori de telefonie care furnizează numere de telefon în format SIP sau așa-numitele numere SIP. Una dintre astfel de companii este Datagroup, care s-a impus ca unul dintre liderii pe piața serviciilor de comunicații. Odată cu reducerea costului numerelor SIP, este logic să folosiți sisteme moderne de telefonie IP în locul vechiului mini-PBX analogic. Acest lucru se datorează funcționalității largi a centrelor de apeluri bazate pe Asterisk. În același timp, costul echipamentului și al instalării Asterisk este practic același ca în costurile bănești.

Instalarea asterisk se face prin descărcarea și apoi compilarea codului sursă distribuit gratuit dezvoltat de Digium. Sursele Asterisk există doar pentru sistemele de operare compatibile cu Unix, dintre care cele mai comune sunt Linux și FreeBSD. Instalarea asteriscului sub Windows este posibilă numai prin implementarea unei mașini virtuale. Descărcați ultimele versiuni asteriscul poate fi găsit la următorul link. În acest moment sunt în curs de dezvoltare 4 versiuni ale acestui server. Versiunile asterisk 1.4 și asterisk 1.6 au cea mai mare stabilitate dintre toate modulele. Pe de altă parte, în ceea ce privește funcționalitatea, versiunea asterisk 1.8 se compară favorabil, care are suport pentru multe module și funcții noi, inclusiv suport pentru protocolul SRTP, lucru cu IPv6 și performanță îmbunătățită atunci când lucrează cu SIP și ISDN.

Acest articol va discuta despre instalarea asterisk v 1.6.22 pe Linux Fedora Core.

Pentru a începe instalarea, descărcați sursele asterisc. Pentru a face acest lucru, executați comenzile în consola serverului:

# wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.2.22.tar.gz

# tar -xzvf asterisc-1.6.2.22.tar.gz

Înainte de a compila sursele, să instalăm toate modulele și utilitățile însoțitoare necesare:

# yum instalează gcc

# yum instalează gcc-c++

# yum install make

# yum install libxml2-devel

# yum install ncurses-devel

După ce sunt instalate toate utilitățile suplimentare, instalăm asteriscul în sine:

# cd asterisc-1.6.2.22

După instalarea cu succes, în directorul /etc/asterisk veți găsi asterisc"a fișiere de configurare. Asterisk este configurat prin editarea fișierelor de configurare care au o structură și operatori foarte specifici. Baza configurației la configurarea asterisk este sip.conf și fișierele extensions.conf După ce ați studiat și editat aceste fișiere, puteți asigura funcționarea corectă a serverului.

Fișierul sip.conf include setările tuturor dispozitivelor SIP înregistrate pe server, care interacționează ulterior între ele prin conectarea a două sau mai multe canale SIP, inițiind astfel o conexiune telefonică - adică un apel.

Exemplu de fișier sip.conf:


califica=da
nat=nu


defaultexpiry=3600
disallow=toate
permit=alaw
permit=ulaw
fromuser=044XXXXXXX
gazdă=80.91.169.2
nesigur=invită,port
secret=xxxxxxxxxxxx
tip=peer
nume de utilizator=044XXXXXXX
context=incoming
limba=ro
califica=da
dtmfmode=auto


tip=prieten
gazdă=dinamic
nesigur=invită,port
username=fxo
secret=xxxxxxxx
context=incoming
califica=da
nat=nu
canreinvite=nu
allowtransfer=nu
dtmfmode=auto
disallow=toate
permit=alaw
permit=ulaw


tip=prieten
regexten=101
secret=xxxxxxxxxxxxx
context=intern
gazdă=dinamic
callerid="101"<101>
disallow=toate
permit=alaw
permit=ulaw
limba=ro
grup de apeluri=1
grup de preluare=1
califica=da
canreinvite=da
apel-limită=4
nat=nu

Acest exemplu arată o listă simplă de dispozitive SIP. Este ușor de observat că configurația conține blocuri cuprinse între paranteze drepte. Aceste blocuri sunt cele care descriu configurația oricăror dispozitive (peer) la configurarea Asterisk. Să parcurgem pe scurt blocurile și cei mai de bază parametri.

Blocul este necesar. Include setări și opțiuni care se aplică în mod implicit tuturor blocurilor. Cu alte cuvinte, dacă nu este specificat un parametru la descrierea unui dispozitiv, atunci Asterisk îl citește din acest bloc.

Următoarele trei blocuri descriu în mod direct dispozitivele SIP. Pentru claritate, toate cele trei dispozitive au scopuri diferite. Blocul descrie parametrii pentru numărul de sip al companiei Datagroup, blocul descrie parametrii pentru conectarea la un gateway VOIP, iar blocul descrie parametrii unui dispozitiv sip intern obișnuit care poate fi utilizat de un telefon IP software sau hardware.

Să trecem peste principalii parametri ai dispozitivelor SIP. Parametrul de context determină ce algoritm de acțiune să se aplice unui anumit dispozitiv. Callerid definește numărul și numele de peer, care vor fi afișate atunci când se efectuează un apel de ieșire de la acesta. Opțiunile de interdicție și de autorizare determină ce codecuri să folosească pentru comunicare. Opțiunea secretă este parola pentru înregistrarea acestui peer. Este recomandabil să faceți parolele suficient de complexe pentru a evita piratarea de către cei nedoritori.

Fișierul extensions.conf descrie interacțiunile dintre contexte și canale de comunicare, dintre care pot fi un număr mare. De fapt, acest fișier este principalul la configurarea asteriscului.

Exemplu de fișier extensions.conf:


exten => _XXX,1,Dial(SIP/$(EXTEN),120,tT)
exten => _XXX,n,Hangup

Exten => _X.,1,Dial(SIP/datagroup/$(EXTEN),120,tT)
exten => _X.,n,Hangup


exten => _X.,1,Dial(SIP/101,60,tT)
exten => _X.,2,Hangup

Exten => h,1,Hangup

În acest exemplu cel mai simplu, avem doi algoritmi de acțiuni (context) - intern și incoming. Să ne reamintim că legarea la contexte se realizează la crearea de peer-uri în fișierul sip.conf și ulterior este atribuită în extensions.conf atunci când se încearcă inițierea comunicării cu un peer.

Să descriem cele două contexte mai detaliat. Doar după numele lor devine clar că sunt utilizați pentru algoritmi pentru abonații interni și apelurile primite. Un exemplu generalizat, care poate fi exprimat în următoarea linie, vă va ajuta să înțelegeți designul acestui fișier:

Exten => _XXX,n,Comandă(Opțiuni)

Aceste opțiuni sunt descifrate după cum urmează:

Exten => _XXX este un prefix de serviciu cu care încep aproape toate liniile din acest fișier. Descrie reprezentarea contextului de intrare. Cu alte cuvinte, dacă acest context a fost contactat de peer number 101, atunci algoritmul pentru acesta ar trebui să înceapă cu construcția exten => 101. Prefixul acceptă expresii regulate și poate fi specificat într-un mod general. De exemplu, exten => _XXX indică faptul că acest algoritm include toți colegii care constau din trei cifre.

N - numărul de linie al algoritmului. În orice cod de program există o secvență de instrucțiuni care sunt executate pe rând. În același mod, există o astfel de secvență în setările asteriscului. Singura diferență este că comenzile executate prin asterisc sunt numerotate. Este obligatoriu să indicați primul rând în mod explicit. După cum probabil ați observat, toate contextele încep cu rândurile:

Exten => _XXX,1,…..
exten => _X.,1,…..
exten => h,1,……

Dar liniile suplimentare pot fi numerotate implicit, adică astfel:

Exten => _XXX,n,…..
exten => _X.,n,…..
exten => h,n,……

Când numărul de linie este implicit specificat, asterisc le execută secvenţial de sus în jos, ca şi cu orice alt cod.

Comandă - comandă executată prin asterisc. Nu există atât de multe comenzi de bază. Pentru configurarea de bază, este suficient să cunoaștem sintaxa comenzii Dial, folosindu-ne de exemplu opțiunile rămase.

De exemplu:
exten => _X.,1,Dial(SIP/101,60,tT) - asteriscul va forma extensia 101 și va încerca să ajungă la abonat în 60 de secunde cu posibilitatea de a intercepta apelul de la colegii care apelează și primesc (opțiuni tT)
exten => _X.,1,Dial(SIP/datagroup/$(EXTEN),120,tT) asteriscul va forma numărul care este transmis în variabila $(EXTEN) folosind grupul de date peer-ul specificat anterior în sip.conf

Primul exemplu a fost folosit în contextul de intrare. Aceasta înseamnă că toate apelurile primite care vin în acest context sunt redirecționate către abonatul intern care răspunde la aceste apeluri. Al doilea exemplu, la rândul său, arată cum se efectuează un apel de ieșire prin trecerea numărului format în variabila de serviciu $(EXTEN).

Exemple de fișiere pot fi copiate direct din acest articol și lipite în sip.conf și extensions.conf și editate unele opțiuni (autentificare, nume de peer, parole etc.). După configurarea asteriscului, pornim serverul cu o comandă simplă:

Mai multe acțiuni pot fi efectuate din linia de comandă asterisc, care este lansată cu comanda:

# asterisc -rvvvvd

Odată ajuns în consolă, puteți verifica funcționarea serverului dvs. Va afișa toate acțiunile pe care le efectuează.

P.S. Dacă nu ați putut configura serverul sau aveți nevoie de o configurație mai complexă, vă vom ajuta cu plăcere să configurați asterisk. Contactele noastre.


Cele mai bune articole pe această temă