FreeSWITCH 呼叫身份校验

FreeSWITCH 呼叫身份校验

配置auth-calls

conf/sip_profiles/internal.xml

1
 <param name="auth-calls" value="true"/>

当auth-calls = true 时,呼叫时是需要身份校验的。发起鉴权挑战后,如果授权密码错误,将会拒绝。
image.png

当auth-calls = false 时,呼叫不需要身份校验。将由ACL进行检验。如果ACL校验不通过,直接拒绝。
image.png

freeswitch acl 拦截了:

1
2
3
[DEBUG] sofia.c:10547 verifying acl "domains" for ip/port 192.168.30.23:0.
[WARNING] sofia.c:10660 IP 192.168.30.23 Rejected by acl "domains"

配置ACL

设置conf/autoload_configs/acl.conf.xml
新增一条

1
 <node type="allow" cidr="192.168.30.23/32"/>

执行reloadacl reloadxml 让acl生效
再次拨测,acl已经放通。
image.png

freeswitch acl 没有拦截日志“Rejected by acl”。

1
2
[DEBUG] sofia.c:10547 verifying acl "domains" for ip/port 192.168.30.23:0.
[DEBUG] sofia.c:7487 Channel sofia/internal/1003@172.26.150.98 entering state [received][100]

测试总结

当auth-calls=true,(需要进行用户身份校验),但ACL配置放通时,ACL的优先级要高,不会发起用户身份挑战。

freeswitch acl 日志显示“Access Granted”

1
2
[DEBUG] sofia.c:10547 verifying acl "domains" for ip/port 192.168.30.23:0.
[DEBUG] sofia.c:10576 IP 192.168.30.23 Approved by acl "domains[]". Access Granted.