今天调试 发现 注册的分机 的 `Auth-User` 居然是 `unknown` !!!
怎么回事?
仔细对比检查 发现, internal profile 指定了 `apply-register-acl` 的参数 ,值为 `domain`,
而默认配置是注释掉这个 参数的, 在看 acl::domain 里 allow 内网 ip了,
然后验证, 果然是这个参数的锅.
即
internal profile 指定了 `apply-register-acl` 的,
指定的 acl 如果允许 了 某个 IP, 则这个IP 上的分机注册是不要验证密码的 !!! 即不验证 鉴权用户名 !
无需密码就可以注册拨打了!
so: 最好不要 配置 这个参数, 删掉或注释掉好了
apply-inbound-acl
Allow users to make calls from a particular cidr without authenticating
允许用户在未经身份验证的情况下从特定的cidr拨打(即指定acl->allow时不需要验证密码就可以拨打<与注册无关>)
如果acl->deny,则拒绝此拨打
如果不配置,则不验证
Usage:
<list name> is set in acl.conf.xml and defines the subnet that will be processed by the ACL bearing this name. The default name is "domains".
apply-register-acl
Allow users to register from a particular cidr without authenticating.
允许用户从一个特定的cidr注册而无需验证密码。(即acl->allow时不需要验证密码既可注册上)
如果acl->deny,会直接拒绝注册,不管密码了
而如果 配置此参数, 则允许所有的来源(IP)注册,并要验证密码
apply-proxy-acl
Use the IP specified in X-AUTH-IP header sent from proxy for apply-inbound-acl Note: You'll need to configure your proxy to add this header.
代理方面的
apply-candidate-acl
ICE candidates for RTP transport are checked against this list. It defaults to wan.auto if unset, which excludes the LAN.
ICE候选IP方面的
auth-calls
Can be set to true/false forcing users to authenticate or no on the profile. Only allow users from a specific cidr to register/make calls. Note: Currently auth-calls does not work with registrations/invites through a proxy. You'll need to do this inside your xml_curl directory scripts or on your proxy.
可以设置为true/false,强制用户在配置文件上进行身份验证或不进行身份验证。 仅允许来自特定cidr的用户注册/拨打电话。 注意:目前通过代理注册/拨打 auth-calls 不起作用。 您需要在xml_curl目录脚本或代理中执行此操作。
Directory settings:
Used with in conjunction with apply-inbound-acl and apply-register-acl.
Used in conjunction with auth-calls.
(参考:)
如果配置使用acl , 则在acl->true时 不验证密码. 如下图