Asterisk 11 名前付きACL

Asterisk 11からは名前付きACL(Named Access Control List)が使えます。

acl.conf

ACLはacl.confに定義します。例えば以下のように記述します。

[template_deny_all](!)
deny=0.0.0.0/0.0.0.0

[my_sip_local](template_deny_all)
permit=192.168.111.0/255.255.255.0

sip.confなどと同じようにテンプレートが使えます。この例ではdeny_allするテンプレートをtemplate_deny_allでまず定義してあります。
次に"my_sip_local"という名前で許可するIPアドレスを記述しています。
内容はCLIから"acl show 名前"で確認することができます。

*CLI> acl show my_sip_local

ACL: my_sip_local
---------------------------------------------
  0:  deny - 0.0.0.0/0.0.0.0
  1: allow - 192.168.111.0/255.255.255.0

sip.confなど

sip.confなどACLを使いたい箇所では名前で指定します。例えばこんな感じで定義します。

[201]
type=friend
defaultuser=201
secret=pass
canreinvite=no
host=dynamic
dtmfmode=rfc2833
callgroup=1
pickupgroup=1
mailbox=201
acl=my_sip_local

適用可能な箇所

現在のところ、Manager、SIP、IAX2でACLが使用可能なようです。