artem
04.10.2018
22238

PhonerLite. Обзор и настройка.

PhonerLite это программный телефон с поддержкой обширного количества протоколов. В рамках данной статьи мы рассмотрим его характеристики, а так же произведем его настройку для его подключения его по SIP.

PhonerLite

Основные характеристики программного телефона и краткое описание:

Внешний вид интерфейса телефона

Этот телефон предназначен для организации аудио вызовов.

Возможности:

  • SIP-агент согласно RFC3261
  • Аудиокодеки: G.711, GSM-FR, Speex. При помощи плагинов: AMR и iLBC
  • DTMF
  • ENUM
  • Преодоление NAT посредством STUN
  • Поддерживает современные методы шифрования

Преднастройка:

Настройка будет производиться на Asterisk 13.18.2 , версия centos 6.9, а в качестве web интерфейса используется FreePBX 13.0.192.19

Если вы не знаете, какая версия CentOS или Asterisk используется у вас, то это можно узнать ниже

Версия CentOS:

Нужно подключиться к АТС через ssh, в нашем случае мы будем использовать программу PuTTY. Подключитесь к IP ATC с помощью PuTTY

PuTTY

Зайдите как root пользователь

Авторизация

И выполните следующую команду cat /etc/redhat-release

Результат выполнения команды 1

Эта команда так же подходить для любого дистрибутива основанного на дистрибутиве RedHat.

Версия Asterisk:

Для того, чтоб узнать версию asterisk, достаточно ввести следующую команду asterisk –rvvv

Результат выполнения команды 2

В дистрибутиве нашей компании используется специальные сокращенные команды и вместо команды «asterisk –rvvv» можете использовать просто «a». В результате выполнения команды вы так же попадете в CLI.

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

Переходим в раздел /usr/src

Результат выполнения команды 3

Теперь нам нужно выгрузить правила в какой-то текстовый файл. В нашем примере это будет файл под названием «dd».Выгружаем наши правила с помощью следующей команды

iptables-save > dd

Выгружаем правила iptables

Перед тем как править iptables рекомендуется на всякий случай создать дамп старых правил и назвать его, к примеру, dump_21_05_2018, это позволит в случае ошибки быстро откатиться к старым правилам

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

Nano

Прописываем ip-адрес оператора

ip-адрес 1

И теперь выходим командой CTRL+C и не забываем сохранить настройки кнопкой «Y»

ip-адрес 2

Все. Файлик мы изменили и подготовили, теперь осталось его загрузить. Выполняется это следующей командой: iptables-restore < dd

ip-адрес 3

Теперь, чтоб после перезагрузки АТС не сбились настройки нужно сохранить изменённый iptables. Выполняем команду «service iptables save».

ip-адрес сохраняем изменения

И так, если вы все сделали правильно, то в списке разрешенных адресов окажется необходимый нам ip. Это можно проверить с помощью команды iptables –L -nv

ip-адрес проверяем, что все получилось

Отлично, мы добавили адрес и теперь можем приступить к непосредственной регистрации и настройки номера.

Стоит отметить, что если вы используете наш дистрибутив, то для изменения iptables лучше всего использовать наш скрипт fw_iptables.sh который в случае потери доступа к станции через 120 секунд восстанавливает настройки iptables по умолчанию.

Так же для работы корректной работы нужно чтоб на сетевом оборудовании и в iptables были открыты следующие порты:

5060 udp Порт получения телефонной сигнализации модулем chan_PJSIP

5061 tcp Порт получения защищенной телефонной сигнализации модулем chan_PJSIP

10000-20000 udp — Получение RTP потока в рамках SIP сессии (Стандартно для FreePBX distro)

В дистрибутиве который предоставляет наша компания для rtp используется следующий диапазон портов 36600-39989 . Учитывайте это, если вы используете наш дистрибутив.

Перечисленные выше порты можно изменить в рамках графического интерфейса FreePBX в модуле Sip settings

IP route (не обязательный пункт):

В подавляющем количестве случаев для успешной регистрации телефона/софтфона и прохождения звука в обе стороны достаточно внести ip адрес в iptables, но иногда, в зависимости от настроек сети, на АТС требуется дополнительно прописать маршруты.

Посмотреть действующие маршруты на АТС можно с помощью команды

# ip route

Дополнительно. Проверка маршрутов

Чтоб добавить новый маршрут нужно прописать ip-адрес оператора и шлюз

Дополнительно. Добавление нового маршрута 1

Рекомендуется сначала добавлять временные маршруты т.к в случае ошибки может нарушиться работа АТС и/или вы потеряете доступ к станции. Однако, после перезагрузки АТС или же сетевого интерфейса (команда # service network restart ) эти правила сбросятся.

Чтоб маршруты сохранялись нужно прописать адрес в файл в route-eth0 который находится по следующему пути: /etc/sysconfig/network-scripts/route-eth0 . Как и ранее открываем этот файл с помощью nano.

Дополнительно. Добавление нового маршрута 2

В следующем формате:

ADDRESS=80.246.247.97

NETMASK=255.255.255.255

GATEWAY=10.20.0.3

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

# ip route

Настройка: Установку Phone будем проводить на Microsoft Windows 7. Данный программный телефон можно скачать с официального сайта разработчика по следующей ссылке: http://www.phoner.de

Сайт разработчика

Переходим во вкладку Download

Вкладка Download

На этой вкладке можно посмотреть историю изменений программы и скачать на выбор несколько версий. К примеру, давайте скачаем портативную версию которая не требует установки.

Скачиваем портативную версию

Распаковываем архив любым удобным вам способом в любую папку

Для распаковки данного архива более чем достаточно будет использовать свободный файловый архиватор 7zip, который можно скачать бесплатно с сайта автора https://www.7-zip.org/

Открываем папку и запускаем программу

Интерфейс программы

Начинаем настройку. Нажмите на «микросхему» выделенную красным

Переход 1

Выбираем SIP

SIP

Теперь вновь нажимаем на микросхему

Переход 2

И попадаем в настройки

Пустые настройки

Для успешно регистрации достаточно указать следующие параметры:

Username: Здесь указываем ваш sip-номер, он совпадает с внутренним sip-номером пользователя.

Phone number: Аналогично первому пункту

Proxy/Registrar: IP вашей АТС

Local port: Указываем порт (если вы используете стандартный порт то тут ничего менять не нужно)

Preferred connection type: Указываем тип подключения

Displayed name: Отображаемое имя (Не обязательный пункт, но желательный)

Заполняйте по аналогии ниже и не забудьте поставить галочку в чек-боксе рядом с Register.

Полный настройки

Нажимаете ОК. Все. Если вы все сделали правильно, то статус будет «зеленым», а вы сможете совершить звонок. К примеру, на свой мобильный.

Есть проблемы с регистрацией? Тогда переходите в следующую главу.

Возможные проблемы при регистрации:

Самые распространенные проблемы, с которыми вы можете столкнуться при регистрации любого IP-телефона или софтфона — самые банальные. Чаще всего это неправильный или слишком длинный пароль.

Некоторые модели телефонов и софтфонов не поддерживают пароли длиннее 10-12 символов (К примеру, некоторые модели телефонов granstream страдают от этого), учитывайте этот момент при регистрации нового телефона. Учитывайте, что случайный пробел так же может быть воспринят системой как символ и связи с этим регистрация не пройдет

Делайте пароль не длиннее 10-12 символов. Так же по поводу символов, в большинстве случаев телефонные аппараты не поддерживают спец.символы (@#$%^~ и.т.д) и лучше их не использовать при составлении/генерации пароля.

Для дебга выполните вход в консоль asterisk.

Чтоб зайти в консоль asterisk в дистрибутиве от нашей компании достаточно выполнить команду из одного символа «a». Если вы используете обычный FreePBX Distro и его производные, то команда имеет следующий вид: # rasterisk или # asterisk -rvvvvv. Ключ -rvvvvv отвечает за уровень отображения дебага.

Пример ошибки SIP Registrations в консоли asterisk:

Обычно, при неправильно введенном пароле (или логине) всплывает следующая ошибка в консоли:

Пример ошибки 1

Так же учтите, что после 3-4 попыток регистрации с неправильным паролем IP-адрес телефона может быть внесен в список банов. Если после нескольких попыток с неправильной регистрацией в консоль ничего не падает, то следует проверить список банов. В нашем дистрибутиве, в зависимости от настроек можно проверить двумя следующими способами:

Первый способ – iptables:

iptables -L –nv (если вы так же хотите посмотреть используются ли нестандартные порты то введите #iptables -L -nv -t nat )

Список банов ip телефонов можно посмотреть в разделе Fail2ban-SIP

Второй способ – через ipset:

Если через iptables не удалось проверить список банов, то используйте следующую команду:

# ipset –L

В обоих случаях для разбана можете использовать следующую команду:

# service fail2ban restart

Вторая распространенная проблема — deny и permit указанные в asterisk. Если телефон попробует зарегистрироваться из сети, которая не включена в список разрешенных сетей, то будет примерно следующая ошибка:

Пример ошибки 2

Если телефон не регистрируется и запрос на регистрацию не падает в консоль asterisk, то следует проверить настройки firewall. К примеру, чтоб разрешить из какой-то сети подключаться по SIP (в том числе и провайдерам) в нашем дистрибутиве мы используем iptables. Предположим, что нам нужно разрешить доступ для подключения SIP-телефонов из под сети 192.168.12.0. Будем править выгрузкой правил iptables.

Подключаемся по ssh

Подключаемся по ssh к станции, вводим логин root и ваш пароль

Стартовый экран

Мы попали на стартовый «экран», с основной информацией о системе. Перед всеми манипуляциями необходимо сделать дамп правил.

Даже если вы уверены, что та или иная небольшая правка не может что-то сломать все равно сделайте дамп правил iptables с помощью которого в случае чего можно будет вернуть работоспособность системы.

Переходим в папку

Переходим в папку src с помощью команды cd /usr/src

Создаем дамп

Выгружаем правила при помощи следующей команды iptables-save > dump

Проверяем наличие дампа

Проверим, появился ли файлик с сохраненными правилами при помощи команды ls –l . Как видно на скриншоте выше – файлик успешно создан. Можем приступать к редактированию правил. Аналогичным образом выгружаем правиал еще раз, но на этот раз имя файла будет не dump, а предположим «dd».

Открываем файлик

Теперь открываем созданный файлик любым текстовым редактором. К примеру, я буду использовать nano.

Текстовый редактор nano не является стандартным в Centos и прежде чем его использовать – его нужно установить. Его можно установить, выполнив следующую команду: yum install nano

Iptables 1

Зашли, спускаемся к цепочке -A SIP -j PHONES и прописываем следующее: -A SIP -s 192.168.12.0/24 -j ACCEPT

Iptables 2

Прописали. Теперь осталось сохранить.

Iptables 3

Нажмите CTRL + X

Iptables 4

Y, а затем Enter.

#iptables-restore < dd
#service iptables save
#service iptables restart.

Проверить правила можно с помощью iptables –L –nv, которая выведет все действующие правила.

Так же бывает проблема с удаленными сотрудниками в виде подвисших NAT-сессий. Для устранения нужно либо удалить подвисшую nat-сессию, либо перезагрузить роутер, либо использовать другой протокол (если по каким-то причинам в данный момент нет возможности перезагрузить роутер или же удалить подвисшую сессию) к примеру, с udp на tcp. Так же проверьте правильность настроек NAT на телефоне и на пире, а так же протокол передачи. В обоих случаях они должны быть идентичны. Если на пире будет выставлен tcp, а телефон будет пытаться подключиться через udp, то такую попытку регистрации сервер отобьет.

Так же возможные проблемы из-за некачественного сетевого кабеля. В зависимости от ситуации телефонный аппарат может вовсе не зарегистрироваться или же зарегистрироваться, но при тестовом исходящем или входящем телефон перейдет в статус unreachable, вызов на трубку не поступит и только когда вызов завершиться он перейдет в статус ok и телефонный аппарат вновь будет доступен. В таком случае нужно проверить качество кабеля специальным тестером, или сразу заменить неисправный кабель.

Настройка файрвола на маршрутизаторах Mikrotik (ссылка на нашу статью https://voxlink.ru/kb/voip-devices-configuration/mikrotik-firewall/)

Настройка маршрутизатора Mikrotik (ссылка на нашу статью https://voxlink.ru/kb/voip-devices-configuration/mikrotik-config/)

Резервирование интернет-канала на маршрутизаторах Mikrotik (ссылка на нашу статью https://voxlink.ru/kb/voip-devices-configuration/mikrotik-rezerving/)

Настройка приоритезации VoIP-трафика на маршрутизаторах Mikrotik ( https://voxlink.ru/kb/voip-devices-configuration/mikrotik-voip-traffic-configuration/)

Правильная настройка маршрутизатора позволит избежать множества проблем с регистрацией ip-телефонов и софтфонов.

Вам может быть это интересно:

На смартфонах, основанных, на ОС андроид начиная с 4 версии есть встроенный voip-клиент по умолчанию. О настройке встроенного клиента для IP-ATC Asterisk вы можете в нашей статье «Настройка SIP-клиента для Android 4 и выше» (ссылка на наш сайт https://voxlink.ru/kb/ip-phones-configuration/iphone/nastrojka-sip-klienta-dlya-android/ )

Подписаться
Уведомить о
guest
1 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Евгений
Евгений
13.07.2021 11:55

Здравствуйте, помогите пожалуйста, если сможете, конечно. Сразу попрошу без глупых вопросов типа: «а установить программу, прежде чем звонить, пробовали?» или «А зелененький шарик горит внизу с надписью авторизован?» и прочие попытки уличить меня в дилетантстве без желания помочь, оставьте при себе пожалуйста. Я не дебил и в ПО разбираюсь, работал с разными и на разных платформах. У меня такая проблема: Вставляю номер телефона в строку, нажимаю кнопку с зеленой трубкой. Короткие гудки у всех номеров, дозвониться не могу вообще ни до кого. Причем происходит это, почему-то, только днем, или вечером, по утрам звонилка работает исправно, правда не всегда, сегодня до… Подробнее »

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

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

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


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

10 доводов в пользу Asterisk

Распространяется бесплатно.

Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.

Безопасен в использовании.

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

Надежен в эксплуатации.

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

Гибкий в настройке.

Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.

Имеет огромный функционал.

Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.

Интегрируется с любыми системами.

То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.

Позволяет телефонизировать офис за считанные часы.

В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.

Отличная масштабируемость.

Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.

Повышает управляемость бизнеса.

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

Снижает расходы на связь.

Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.