Александр Мутовин
24.07.2019
372

Регистрация софтфона Bria по TLS и использованием push уведомлений.

При использовании sip софтфонов возникает проблема в поддержании регистрации аккаунта на сервере при переходе телефона в фоновый режим. Дело в том, что для экономии заряда аккумулятора телефоны завершают процессы работающие в фоновом режиме, а также при нехватке оперативной памяти. Решить данную задачу поможет использование софтфона Bria с использованием PUSH уведомлений. При использовании мы будем проводить […]

При использовании sip софтфонов возникает проблема в поддержании регистрации аккаунта на сервере при переходе телефона в фоновый режим. Дело в том, что для экономии заряда аккумулятора телефоны завершают процессы работающие в фоновом режиме, а также при нехватке оперативной памяти.

Решить данную задачу поможет использование софтфона Bria с использованием PUSH уведомлений.

Использование TLS оправдано в том случае, если связь внутрикорпоративная. Как правило основная масса операторов предоставляющих номера работают по UDP и не шифруют трафик. Так что при большом желании звонок «наружу» можно перехватить и прослушать.

При использовании мы будем проводить регистрацию по доменному имени с сертификатом от let’s encrypt.

Для начала привязываем доменное имя к нашему серверу. Для этого у регистратора доменного имени пропишем «A» запись следующего вида (в моем случае омен зарегистрирован на «jino.ru»):

Прописывание домена третьего уровня у регистратора доменного имени

Как видно из скриншота, мы выбрали тип записи «А», поддомен xbx и ip адрес сервера телефонии на который будет ссылаться домен xbx.newxx.ru

Далее для генерации бесплатных сертификатов на let’s encrypt необходимо установить утилиту «certbot». Я использую Centos7 и «certbot» входит в стандартные репозитории.

# yum install certbot –y

Далее сгенерируем сертификат следующей командой:

# certbot certonly –webroot –w /var/www/html –d pbx.newxx.ru

Генерация сертификатов

Certonly – только генерация сертификатов без установки

–webroot –w – путь к корневому каталогу домена.

Для успешной генерации сертификатов домен должен ссылаться на сервер по 80 порту. Если у вас сервер закрыт, необходимо разрешить доступ на время генерации.

Также есть второй способ генерации сертификатов и автоматической установки. Для этого необходимо установить плагин apache:

# yum install python2-certbot-apache.noarch

Далее выполнить команду

# certbot –apache  -d pbx.newxx.ru

Генерация и установка сертификата
Если использовать плагин «apache» freepbx будет доступен с установленным сертификатом по https.

Далее переходим в веб интерфейс freepbx в пункт «Admin > Sertificate Management»

Переход в менеджмент сертификатов

Далее нажимаем «New Certificate > Upload Certificate»

Загрузка сертификата

В поле «Name» вводим Произвольное имя сертификата

В «Description» вводим описание

Далее содержимое файла «privkey.pem» копируем в поле Private Key.

Файл «cert.pem» копируем в поле «Certificate».

После чего сохраняем и применяем настройки.

Также есть возможность сгенерировать сертивикаты в веб интерфейсе Freepbx. Для этого переходим в «Admin > Generate Let`s Encrypt Certificate»

Возможность генерации сертификатов из веб интерфейса.

Откроется окно,  куда необходимо ввести следующие параметры:

  1. Certificate Host Name – доменное имя хоста
  2. Owners Email  – email адрес
  3. Country – страну
  4. State/Province/Region – регион
Параметры для генерации сертификата

После чего нажать кнопку «Generate Certificate»

Далее переходим в «Settings > Asterisk SIP Settings». В этом меню выберем закладку «Chan SIP Settings»

Настройка SIP

Далее включаем следующие пункты меню:

  1. Enable TLS выбираем «yes»
  2. Certificate Manager – «Mycertificate» (в вашем случае будет ваше имя, которое вы указали при загрузке сертификата)
  3. SSL Method – «tlsv1»
Настройка TLS в Freepbx

Ниже указываем порт 5061, после чего сохраняем и применяем настройки.

Следующим шагом необходимо включить поддержку TLS на Экстеншене.

Переходим в «Application > Extensions». Выбираем экстеншн, который планируете подключить по TLS. В моем случае это номер 700. После чего в настройках этого экстеншена выбираем вкладку «Advanced».

В параметре «Transport» выбираем «TLS Only». В параметре «Enable Encryption»выбираем «Yes (SRTP only)» для шифрования голоса.

После чего сохраняем настройки.

Настройки TLS на экстеншене

Приступим к регистрации софтфона Bria.

Переходим в раздел «Аккаунт». Нажимаем плюсик, выбираем «Звонки».

Открывается поле для ввода авторотационных данных.

Заполнение данных аккаунта
  1. В поле «Аккаунт» введите произвольное имя аккаунта.
  2. «Ваше имя» вводим номер абонента
  3. «Логин» вводим логин абонента
  4. «Пароль» укажите пароль от экстеншена
  5. «Домен» укажите доменное имя и порт сервера Asterisk.

Далее в разделе «Push-служба Bria» ставим галочку напротив параметра «Включить push-уведомления» и «Эмуляция NAT»

Следующим шагом выберите пункт меню «Доп. Настройки push-уведолений». В поле «Прокси-сервер SIP» укажите адрес сервера и порт.

Прокси-сервер SIP

После чего нажмите галочку для сохранения.

Следующим шагом выберем пункт «Дополнительные»

Выбор расширенных настроек

Нас будут интересовать следующие пункты:

  1. SIP транспорт выбираем TLS
  2. Зашифровать аудио Всегда
  3. Проверка сертификата – ставим галочку
  4. Входящие – ставим галочку

После чего сохраняем настройки.

Выбор протокола

Если вы все сделали правильно, то софтфон зарегистрируется на сервере. На экране мобильного телефона вы увидите следующую картину:

Удачная регистрация софтфона

Теперь в момент, когда телефон переходит в спящий режим, регистрацию перехватывает сервер Bria.

Перехват регистрации

В таком случае, если поступит звонок, то он не сбросится, а пойдет на сервер Bria. Bria в свою очередь пошлет PUSH уведомление на телефон с просьбой «проснуться», поднять регистрацию на сервере и принять вызов.

В таком случае вы передаете все логины и пароли своих экстеншенов на сервера Bria в открытом виде. Никто гарантию безопасности не предоставляет.
 
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