FusionPBX入站路由ACL错误无法查找用户

时间:2016-03-10 05:17:09

标签: authentication sip acl freeswitch fusionpbx

我已将我的SIP提供商IP改为MY.SIP.PROV.IP,将他们的域名改为MYSIPPROVIDER.COM,并将我的电话号码改为XXXXXXXXXX ....

这是CLI日志。我能够拨出但我不能让入境航线工作......任何帮助都表示赞赏。

主要部分我不理解:

2016-03-09 22:59:50.981898 [DEBUG] sofia.c:9124 IP MY.SIP.PROV.IP Rejected by acl "domains". Falling back to Digest auth.

第二部分......

2016-03-09 22:59:50.981898 [WARNING] sofia_reg.c:2852 Can't find user [@MYSIPPROVIDER.COM] from MY.SIP.PROV.IP
You must define a domain called 'MYSIPPROVIDER.COM' in your directory and add a user with the id="" attribute
and you must configure your device to use the proper domain in it's authentication credentials.
2016-03-09 22:59:50.981898 [WARNING] sofia_reg.c:1703 SIP auth failure (INVITE) on sofia profile 'internal' for [XXXXXXXXXX@MYSIPPROVIDER.COM] from ip MY.SIP.PROV.IP

1 个答案:

答案 0 :(得分:3)

如果查看vars.xml文件(如果从FreeSWITCH软件包安装,则位于/etc/freeswitch/vars.xml中),您将看到两个相关设置..

<X-PRE-PROCESS cmd="set" data="internal_sip_port=5060"/>
<X-PRE-PROCESS cmd="set" data="external_sip_port=5080"/>

简而言之,如果SIP数据包被发送到端口5080上的FreeSWITCH盒,它将被路由到/etc/freeswitch/dialplan/public.xml文件。其中,如果您从包中安装,还包括/ etc / freeswitch / dialplan / public /中的任何.xml使用该行..

<X-PRE-PROCESS cmd="include" data="public/*.xml"/>

否则,如果您在FreeSWITCH框的端口5060上收到一个数据包,它将被视为内部&#39;呼叫。这些处理方式略有不同。如果您使用默认/示例配置,则其中一个差异是FreeSWITCH ACL或“访问控制列表”。

基本上,任何对5060的调用都将由ACL解析。您可以将其视为一种防火墙。如果它与那里的规则不匹配,FreeSWITCH会因错误而拒绝它。

2016-03-09 22:59:50.981898 [DEBUG] sofia.c:9124 IP MY.SIP.PROV.IP Rejected by acl "domains". Falling back to Digest auth.

这一部分......

2016-03-09 22:59:50.981898 [WARNING] sofia_reg.c:2852 Can't find user [@MYSIPPROVIDER.COM] from MY.SIP.PROV.IP
You must define a domain called 'MYSIPPROVIDER.COM' in your directory and     add a user with the id="" attribute
and you must configure your device to use the proper domain in it's     authentication credentials.

...正在由ACL配置的这一部分生成......

<list name="domains" default="deny">
  <node type="allow" domain="$${domain}"/>
</list>

...不要&#34;允许任何SIP数据包在&#39;域&#39; (例如SIP URI的@ mysipprovider.com部分)是“FreeSWITCH目录”中定义的用户的一部分。

简而言之,在FreeSWITCH用作“内部PBX”的情况下,ACL被用作验证内部设备的附加措施。

你有两个选择..

  1. 让mysipprovider将入站SIP数据包路由到端口5080,然后查看通过默认的/etc/freeswitch/dialplan/public/00_inbound_did.xml文件管理入站呼叫
  2. 在ACL中添加特定行以批准来自mysipprovider的调用。也许像..

      

  3. ..然后输入..

    fs_cli -x 'reloadacl'
    

    ..申请。