artem
17.04.2013
6674

Меню администратора или запуск системных команд линукса из под астериска

И так, создадим наше меню администратора и назначим ему номер 665 и добавим в целях безопасности авторизационный пароль 333 а для выполнения системных команд линукса через астериск будем использовать System ()

[from-internal-custom]
exten ≥ 665,1,Goto (admin-menu,s,1)
[admin-menu]
exten ≥ s,n,Authenticate (333)
exten ≥ s,n,WaitExten ()
exten ≥ 1,1,System (/usr/local/sbin/amportal restart)
exten ≥ 1,n,Hangup ()
exten ≥ 2,1,System (/etc/init.d/network restart)
exten ≥ 2,n,Hangup ()
exten ≥ 3,1,System (sudo /etc/init.d/openvpn start)
exten ≥ 3,n,Hangup ()
exten ≥ 4,1,System (sudo /etc/init.d/openvpn stop)
exten ≥ 4,n,Hangup ()

По нажатию кнопки 1 произойдет перезапуск астериска и всех его служб
По нажатию кнопки 2 произойдет рестарт сетевого интерфейса
По нажатию кнопки 3 мы включаем службу openvpn
По нажатию кнопки 4 мы выключаем службу openvpn

Казалось бы, нам остается лишь выполнить в консоли астериска dialplan reload (справочник основных команд можно посмотреть тут) и все должно заработать, но… Все бы работало если астериск был запущен с правами root.
Для того что бы заставить астериск выполнять некоторые рутовые команды, нам нужно подправить фай /etc/sudoers в котором мы либо полностью разрешаем астериску выполнять все рутовые команды (не рекомендуется) или же разрешаем выполнение лишь некоторых.
Находим следующие строчки и добавляем пользователя asterisk которому назначаем выполнение определенных команд без ввода пароля.

Будьте очень осторожны при редактировании файла sudoers. Ошибка или не правильная настройка могут привести к бреши в безопасности.

## Allow root to run any commands anywhere
root   ALL= (ALL)      ALL
asterisk        ALL= NOPASSWD:/etc/init.d/openvpn, NOPASSWD:/usr/sbin/amportal, NOPASSWD:/etc/init.d/network

Собственно все, теперь вы можете запускать любые системные команды через астериск.

 
avatar
  Подписаться  
Уведомление о

Остались вопросы?

Я - Першин Артём, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование

ближайшие курсы

ближайшие Вебинары

ONLINE

Why Choose HUGE?

Unlimited pre-designed elements

Each and every design element is designed for retina ready display on all kind of devices

User friendly interface and design

Each and every design element is designed for retina ready display on all kind of devices

100% editable layered PSD files

Each and every design element is designed for retina ready display on all kind of devices

Created using shape layers

Each and every design element is designed for retina ready display on all kind of devices