ЛР 3.6 - интеграция с LDAP
Подготовка доменного контроллера
- Импортируйте образ win-2016-dc.ova, включите ВМ и задайте ей статический ip-адрес.
- Создайте четырех любых пользователей домена, укажите им телефонные номера 101, 102, 201, 202.
- Создайте техническую учетную запись asterisk с паролем specialist.
Настройка Asterisk
- На машине ast13 установите пакет для работы с LDAP:
apt install ldap-utils
- В /etc/hosts добавьте запись о доменном контроллере:
10.5.Y.Z win-dc.lab.lan win-dc
- Проверьте работоспособность запросив информацию из LDAP-каталога:
ldapsearch -x -H ldap://win-dc.lab.lan -D 'LAB\asterisk' -w specialist -b 'cn=users,dc=lab,dc=lan' -LLL "(|(telephonenumber=101))" displayname
- Создайте скрипт, который будет получать у win-dc имена сотрудников на основе номера телефона:
nano /root/getname.sh
#!/bin/bash
ldapsearch -x -H ldap://win-dc.lab.lan -D 'LAB\asterisk' -w specialist -b 'cn=users,dc=lab,dc=lan' -LLL "(|(telephonenumber=$1))" displayname | grep display | cut -d ':' -f 2 | sed 's/.//'
- Сделайте скрипт исполняемым и проверьте результат его работы:
chmod +x /root/getname.sh
bash /root/getname.sh 101
- Отредактируйте обработчик вызовов внутренних номеров:
exten => _1XX,1,Wait(2)
exten => _1XX,n,Set(CALLERID(name)=${SHELL(/bin/bash /root/getname.sh ${CALLERID(num)})})
exten => _1XX,n,Playback(beep)
exten => _1XX,n,Dial(SIP/${EXTEN},5)
exten => _1XX,n,Festival(Абонент ${EXTEN} не хочет разговаривать!)
exten => _1XX,n,Wait(2)
exten => _1XX,n,Hangup()
- Проверьте, что при звонке отображается имя вызывающего абонента, полученное от доменного контроллера.