FusionPBX lan ACL

Artikelku ora gambaran lengkap produk, nanging mung refinement tipis saka publikasi apik "FusionPBX, utawa maneh-gedhe, FreeSWITCH". Iku misale jek kula sing topik ACL ing FusionPBX ora banget uga dibeberke ing. Aku bakal nyoba kanggo ngisi longkangan iki adhedhasar pengalaman dhewe karo FreeSWITCH / FusionPBX.

Dadi, kita duwe FusionPBX sing diinstal kanthi nomer internal sing kadhaptar 1010 ing domain.domain lokal lan rute sing dikonfigurasi kanggo telpon eksternal menyang kutha. Kita nggunakake ACL kanggo ngamanake sistem telephony saka telpon ora sah sing bakal njupuk adoh dhuwit kita. Sing. mung saka jaringan sing diterangake ing ACL ngidini telpon metu. Lan ing kene sampeyan butuh pangerten sing jelas babagan cara kerja ACL ing FusionPBX, fitur, logika lan titik jangkar.

Kaya penulis dihormati saka artikel ing ndhuwur, Aku uga jumangkah ing kabeh rakes related kanggo ACL.

Aku bakal miwiti karo SipProfiles.
Loro-lorone profil (Aku bakal nelpon wong-wong mau), internal lan eksternal, ana ing konteks Umum, lan iki ora sengaja. Registration saka nomer njupuk Panggonan ing profil internal, lan kita bakal mbayar manungsa waΓ© kanggo. Ing profil internal, domain ACL kaiket minangka aplikasi-inbound-acl. Iku baris iki tanggung jawab kanggo operasi ACL ing tingkat profil. Nganti saiki, iku karo profil.

Konteks

Konteks digunakake, ing antarane, ing nuntun telpon. Kabeh rute sing mlebu ana ing konteks Umum.

Rute metu (menyang kutha, menyang seluler, jarak adoh, internasional, lan liya-liyane) yaiku (kanthi standar) ing konteks jeneng domain (ayo sebut domain.local).

ACL

Saiki ayo kang menehi hasil karo ACLs. Kanthi gawan, FusionPBX sing anyar diinstal duwe loro ACL:

tumindak standar domain: nolak - sheet iki kaiket ing profil internal
lan tumindak gawan: ngidini

Ing dhaftar domain ACL, kita prescribe jaringan (uga, contone, 192.168.0.0/24), kita nggawe ijin kanggo jaringan iki, kita nggunakake reloadacl.

Sabanjure, kita ndhaptar telpon saka jaringan iki, lan kabeh katon apik lan miturut instruksi lan logis.
Kita miwiti nyoba, nelpon menyang nomer eksternal lan ... entuk donat, utawa luwih bolongan donat. Dumadakan!

Kita wiwiti njelasno log ing console utawa liwat Log Viewer FusioPBX.

Kita ndeleng tantangan kita:

switch_channel.c:1104 New Channel sofia/internal/[email protected]

Kita ndeleng ACL sing makarya:

sofia.c:10208 IP 192.168.0.150 Approved by acl "domains[]". Access Granted.

Lan luwih:

mod_dialplan_xml.c:637 Processing 1010 <1010>->98343379xxxx in context public
switch_core_state_machine.c:311 No Route, Aborting 
switch_core_state_machine.c:312 Hangup sofia/internal/[email protected] [CS_ROUTING] [NO_ROUTE_DESTINATION] 

Ora ana rute! Senajan rute kita wis sajujure kedhaftar.

Jawaban iki pancen prasaja.

Telpon wis teka. ACL ora kejawab. Lan wiwit ACL kaiket ing profil internal, lan profil iki ing konteks umum, FreeSWITCH sajujure katon ing nuntun ing konteks umum. Nanging ing konteks umum, mung nuntun mlebu, lan sistem jujur ​​marang kita sing ora ana rute kanggo kutha ana.

Paling ora ana rong cara metu saka kahanan iki.

  1. Pasang ACL iki ora kanggo profil, nanging kanggo nomer internal dhewe. Iki bisa dadi cara sing paling bener kanggo ngatasi, amarga. Iku luwih apik kanggo ikatan ACL sabisa kanggo Extension kanggo tuning luwih apik. Sing. sampeyan bisa menehi resep alamat / alamat jaringan tartamtu saka telpon sing bisa nelpon metu. Kerugian saka pilihan iki yaiku saben Extension kudu nindakake iki.
  2. Ndandani ACL supaya bisa digunakake kanthi bener ing tingkat profil. Aku milih pilihan iki, amarga iku ketoke kanggo kula luwih gampang kanggo nambah jaringan kanggo ACL sapisan saka prescribe ing saben Extension. Nanging iki khusus kanggo tugasku. Kanggo tugas liyane, sampeyan bisa uga mbutuhake logika nggawe keputusan sing beda.

Dadi. Ayo ndandani domain ACL kaya ing ngisor iki:

tumindak standar domain: ngidini

Ing dhaptar domain ACL, kita ndhaptar jaringan:

nolak 192.168.0.0/24

Aplikasi, reloadacl.
Kita nyoba: kita nelpon maneh nomer 98343379xxxx lan ... checkpoint teka ... HELLO. Kabeh mlaku.
Ayo ndeleng apa sing kedadeyan ing FreeSWITCH:
telpon diwiwiti:

switch_channel.c:1104 New Channel sofia/internal/[email protected]

ACL ora luput:

[DEBUG] sofia.c:10263 IP 192.168.0.150 Rejected by acl "domains". Falling back to Digest auth.

lan luwih:

mod_dialplan_xml.c:637 Processing 1010 <1010>->98343379xxxx in context domain.local
sofia/internal/[email protected] Regex (PASS) [Sity] destination_number(98343379xxxx) =~ /^9(8343[23]d{6})$/ break=on-false 

Routing wis liwati, lan banjur teka panyiapan sambungan, kang ngluwihi orane katrangan saka topik.

Yen kita ngganti alamat jaringan ing ACL, nanging njaluk gambar saka test pisanan, i.e. ACL bakal nglewati telpon lan nuntun bakal ngomong NO_ROUTE_DESTINATION.

Sing mbokmenawa kabeh aku wanted kanggo nambah ing ACL FusionPBX.

Mugi iku bakal migunani kanggo wong.

Source: www.habr.com

Add a comment