Инструменты пользователя

Инструменты сайта


acl.conf

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
acl.conf [2016/07/06 13:34] kovacl.conf [2016/07/06 13:38] (текущий) kov
Строка 18: Строка 18:
 <code>exten = > _X.,1,Hangup</code> <code>exten = > _X.,1,Hangup</code>
  
 +При такой настройке все попытки звонков, не прошедшие нормальную авторизацию, будут моментально завершаться.
 +Контексты каналов
 +Каждый тип канала имеет как контексты по-умолчанию, так и явно указанные для разных групп линий или пользователей. Следует помнить простое правило: если контекст в настройке линий или пира не указан, звонок попадет в тот контект, который указан в опции context секции general. Хорошей практикой является использования шаблонов, например:
  
 +<code>
 +[user]  (!)
 +type=friend
 +host=dynamic
 +context=users
 +nat=yes
 +qualify=yes
 +callgroup=1
 +pickupgroup=1
 +dtmfmode=rfc2833
 +
 +[709]  (user)
 +secret=as09TYInbd873K
 +mailbox=709
 +callerid=  «User» <709>
 +
 +[710]  (user)
 +secret=udFls34Dssd2
 +mailbox=710
 +callerid=  «User» <710>
 +</code>
 +
 +В приведённом примере, если забыть указать наследование шаблона (user), пир создан не будет. Таким образом, можно избежать необходимости указывать контекст в каждом пире.
 +Разделение входящих и выходящих контекстов
 +Не следует определять в одном контексте как правила для входящих, так и для исходящих звонков. Типичный пример некорректной настройки – это использование одного контекста для исходящих звонков пользоваталей, внутренних звонков и звонков, поступающих по городским линиям. Например:
 +
 +<code>
 +[default]
 +exten = > _7XX,1,Dial  (SIP/${EXTEN}) //внутренние звонки
 +exten = > _9XXX.,1,Dial  (SIP/g1/${EXTEN:1}) //внешние
 +// входящие по линии FXO
 +exten = > s,1,Answer
 +exten = > s,n,Background  (hello-please-enter-number-you-wish-to-call)
 +exten = > s,n,WaitExten  (5)
 +exten = > s,n,Queue  (support|t)
 +</code>
 +
 +В приведённом примере по причине использования одного контекста звонящий по FXO линиям из города могут донабрать не только локального пользователя, но также использовать другие свободные линии в своих целях, например, для звонков в другой регион. Все что для этого надо сделать – набрать 9-ку и номер назначения. Правильным будет следующих план набора:
 +
 +<code>
 +[users]
 +include = > local-users
 +include = > numberplan
 +
 +[local-users] //внутренние
 +exten = > _7XX,1,Dial  (SIP/${EXTEN})
 +
 +[numberplan] //внешние
 +exten = > _9XXX.,1,Dial  (Zap/g1/${EXTEN:1})
 +
 +[fxo-in] //входящие FXO
 +include = > local-users
 +exten = > s,1,Answer
 +exten = > s,n,Background  (hello-please-enter-number-you-wish-to-call)
 +exten = > s,n,WaitExten  (5)
 +exten = > s,n,Queue  (support|t)
 +</code>
 +
 +Все SIP пользователи должны иметь контекст users, в котором при помощи директивы include включаются правила внутрениих и внешних звонков. В настройках линий (dahdi.conf) следует указать контекст fxo-in, в котром включается контекст local-users. Таким образом, из IVR компании можно будет связаться только с внутренними пользователями, что чаще всего и требуется.
 +
 +Права пользователей
 +
 +Запуск Asterisk из-под не — root пользователя. По умолчанию Asterisk запускается из-под root, что может быть небезопасно. Для изменения пользователя раскомментируйте строки в файле /etc/init.d/asterisk.
 +
 +<code>
 +AST_USER=  «asterisk»
 +AST_GROUP=  «asterisk»
 +</code>
 +
 +Создайте группу и пользователя asterisk.
 +
 +<code>
 +/usr/sbin/groupadd asterisk 
 +/usr/sbin/useradd -d /var/lib/asterisk -g asterisk asterisk 
 +</code>
 +
 +Измените права на использование следующих файлов:
 +
 +<code>
 +chown --recursive asterisk:asterisk /var/lib/asterisk
 +chown --recursive asterisk:asterisk /var/log/asterisk
 +chown --recursive asterisk:asterisk /var/run/asterisk
 +chown --recursive asterisk:asterisk /var/spool/asterisk
 +chown --recursive asterisk:asterisk /usr/lib/asterisk
 +## Если Вы мспользуете Zaptel
 +chown --recursive asterisk:asterisk /dev/zap
 +## Если Вы используете DAHDI
 +chown --recursive asterisk:asterisk /dev/dahdi
 +#----------------------------------------------------
 +chmod --recursive u=rwX,g=rX,o= /var/lib/asterisk
 +chmod --recursive u=rwX,g=rX,o= /var/log/asterisk
 +chmod --recursive u=rwX,g=rX,o= /var/run/asterisk
 +chmod --recursive u=rwX,g=rX,o= /var/spool/asterisk
 +chmod --recursive u=rwX,g=rX,o= /usr/lib/asterisk
 +## Если Вы мспользуете Zaptel
 +chmod --recursive u=rwX,g=rX,o= /dev/zap
 +## Если Вы используете DAHDI
 +chmod --recursive u=rwX,g=rX,o= /dev/dahdi
 +#----------------------------------------------------
 +chown --recursive root:asterisk /etc/asterisk
 +chmod --recursive u=rwX,g=rX,o= /etc/asterisk 
 +/etc/init.d/asterisk restart
 +</code>
 +
 +
 +[[http://voxlink.ru/kb/asterisk-configuration/some-security-aspects/|Ссылка на оригинал]]
acl.conf.1467801270.txt.gz · Последнее изменение: 2016/07/06 13:34 — kov