FusionPBX او ACL

زما مقاله د محصول بشپړ توضیح نه ده، مګر یوازې د ښې خپرونې یو څه اصالح کول "FusionPBX، یا بیا عالي، FreeSWITCH". ماته داسې ښکاري چې په FusionPBX کې د ACL موضوع په دې کې خورا ښه نه ده افشا شوې. زه به هڅه وکړم چې دا تشه د FreeSWITCH/FusionPBX سره زما د خپلې تجربې پراساس ډک کړم.

او په دې توګه، موږ په domain.local ډومین کې د راجستر شوي داخلي شمیرې 1010 سره FusionPBX نصب کړی او ښار ته د بهرنیو تلیفونونو لپاره ترتیب شوی لاره لرو. موږ د خپل تلیفوني سیسټم د غیر مجاز تلیفونونو څخه خوندي کولو لپاره ACL کاروو چې زموږ پیسې اخلي. هغوی. یوازې د هغو شبکو څخه چې په ACL کې بیان شوي د وتلو تلیفونونو ته اجازه ورکوي. او دلته تاسو په بشپړ ډول روښانه پوهیدو ته اړتیا لرئ چې څنګه ACL په FusionPBX کې کار کوي، د هغې ځانګړتیاوې، منطق او د دې لنگر نقطه.

د پورتنۍ مقالې د درناوي لیکوال په څیر، ما هم د ACL اړوند ټولو ریکونو باندې ګام پورته کړ.

زه به یې پیل کړم SipProfiles.
دواړه پروفایلونه (زه به دوی ته ووایم)، دواړه داخلي او بهرني، په عامه شرایطو کې دي، او دا ناڅاپي ندي. د شمیرو ثبت کول په داخلي پروفایل کې ترسره کیږي، او موږ به ورته پام وکړو. په داخلي پروفایل کې، ډومینونه ACL د Apply-inbound-acl په توګه پابند دي. دا دا کرښه ده چې د پروفایل په کچه د ACL عملیاتو مسؤلیت لري. تر اوسه پورې، دا د پروفایلونو سره دی.

مقالې

د نورو شیانو په مینځ کې ، د کال روټینګ کې شرایط کارول کیږي. ټولې راتلوونکې لارې په عامه شرایطو پورې تړلې دي.

بهر ته تلونکي (ښار ته ، سیلولر ته ، اوږد واټن ، نړیوال او کوم بل) لارې (په ډیفالټ) د ډومین نوم په شرایطو کې دي (راځئ چې ورته domain.local ووایو).

ACL

اوس راځئ چې د ACLs سره معامله وکړو. په ډیفالټ کې، یو تازه نصب شوی FusionPBX دوه ACLs لري:

د ډومین ډیفالټ عمل: انکار - دا پاڼه داخلي پروفایل پورې تړلې ده
lan default action: اجازه

د ډومینونو ACL لیست کې، موږ شبکه وړاندیز کوو (ښه، د بیلګې په توګه، 192.168.0.0/24)، موږ د دې شبکې لپاره د اجازې اجازه ورکوو، موږ د ریلوډاکیل کاروو.

بیا، موږ د دې شبکې څخه تلیفون راجستر کوو، او هرڅه سم ښکاري او د لارښوونو سره سم او منطقي.
موږ ازموینه پیل کوو، بهرنۍ شمیرې ته زنګ وهو او ... موږ ډونټ ترلاسه کوو، یا د ډونټ سوراخ. ناڅاپه!

موږ په کنسول کې یا د لاګ لیدونکي FusioPBX له لارې د لاګ تحلیل پیل کوو.

موږ خپله ننګونه ګورو:

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

موږ ACL ګورو چې کار کوي:

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

او نور:

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] 

لاره نشته! که څه هم لاره موږ په صادقانه توګه ثبت کړې.

ځواب واقعیا ساده دی.

زنګ راغی. ACL یې له لاسه ورکړ. او له هغه ځایه چې ACL په داخلي پروفایل کې تړلی دی، او دا پروفایل په عامه شرایطو کې دی، FreeSWITCH په صادقانه توګه په عامه شرایطو کې روټینګ ته ګوري. مګر په عامه شرایطو کې، یوازې د راتګ لارې، او سیسټم په صادقانه توګه موږ ته وایي چې ښار ته هیڅ لارې شتون نلري.

د دې حالت څخه لږ تر لږه دوه لارې شتون لري.

  1. دا ACL نه پروفایل سره ضمیمه کړئ ، مګر پخپله داخلي شمیره کې. دا ممکن د حل کولو ترټولو سمه لاره وي، ځکه. دا غوره ده چې ACL څومره چې ممکنه وي د ښه ټینګ کولو لپاره تمدید ته نږدې کړئ. هغوی. تاسو کولی شئ د تلیفون ځانګړی پته / د شبکې پته ولیکئ چې له هغې څخه دا کولی شي بهر ته تللې اړیکه ونیسي. د دې اختیار زیان دا دی چې هر توسیع باید دا وکړي.
  2. ACL سم کړئ ترڅو دا د پروفایل په کچه سم کار وکړي. ما دا اختیار غوره کړ، ځکه چې دا ماته اسانه ښکاري چې د شبکې ACL ته یو ځل اضافه کول په هر توسیع کې د وړاندیز کولو په پرتله. مګر دا په ځانګړې توګه زما د دندې لپاره دی. د نورو دندو لپاره، تاسو ممکن د پریکړې کولو مختلف منطق ته اړتیا ولرئ.

نو. راځئ چې د ACL ډومینونه په لاندې ډول تنظیم کړو:

د ډومین ډیفالټ عمل: اجازه ورکړئ

د ډومینونو ACL لیست کې، موږ شبکه راجستر کوو:

رد کول 192.168.0.0/24

درخواست وکړئ، reloadacl.
موږ ازموینه کوو: موږ بیا 98343379xxxx شمیره ډایل کوو او ... پوسته راځي ... سلام. هر څه کار کوي.
راځئ وګورو چې په FreeSWITCH کې څه پیښ شوي:
تلیفون پیل کیږي:

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

ACL له لاسه ورنکړ:

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

او نور:

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 

روټینګ تیر شوی، او بیا د پیوستون تاسیس راځي، کوم چې د موضوع له ساحې څخه بهر دی.

که موږ په ACL کې د شبکې پته بدله کړو، مګر د لومړي ازموینې څخه انځور واخلئ، i.e. ACL به زنګ پریږدي او روټینګ به NO_ROUTE_DESTINATION ووایي.

دا شاید ټول هغه څه دي چې ما غوښتل په ACL FusionPBX کې اضافه کړم.

زه امید لرم چې دا به د یو چا لپاره ګټور وي.

سرچینه: www.habr.com

Add a comment