Подключение телефона Grandstream 1615 по OpenVPN
В данной статье мы рассмотрим как подключить IP телефон Grandstream 1615 на прямую к АТС asterisk на CentOS 6.9 с помощью OpenVPN.
На данном аппарате ввели поддержку OpenVPN клиента с версии прошивки 1.0.3.40. Поэтому обязательно обновляемся, если версия не соответствует.
Что бы обновить версию прошивки, перейдем в меню «Maintenance -> Upgrade and Provisioning»
Далее нам нужен раздел «Config» где в поле «Config Server Path» надо указать адрес с которого будем обновлять прошивку. Я брал с офф сайта: firmware.grandstream.com
Применяем настройки «Save and Apply» и перезагружаемся
После перезагрузки мы увидим изменившуюся версию в верхней части интерфейса (в некоторых браузерах возможно придется обновить страницу с очисткой кэша – Ctrl+F5):
На данных аппаратах сталкивался с ситуацией когда прошивка обновилась, но мы этого не замечаем из-за того, что браузер закэшировал страницу. Для этого просто обновите с помощью Ctrl+F5Далее нам нужен будет сам OpenVPN сервер. Если он у вас уже настроен, эту часть вы можете пропустить.
Итак. Для начала подключим репозиторий:
yum -y install epel-release
Установим пакет OpenVPN:
yum -y install openvpn
Создаем директорию, где будут находиться ключи:
mkdir /etc/openvpn/keys
Перейдем в саму директорию и скачаем последнюю версию с GitHub
cd /etc/openvpn/keys
wget https://github.com/OpenVPN/easy-rsa/archive/master.zip
Для распаковки zip архива может поднадобитmся unzip. Установим его и продолжим:
yum -y install unzip zip
unzip master.zip
cd /etc/openvpn/keys/easy-rsa-master/easyrsa3
Создадим структуру публичных ключей:
mv vars.example vars
./easyrsa init-pki
Создаем центр СА.
Вас попросит создать пароль, который в дальнейшем будет использоваться для генерации клиентских сертификатов. Поэтому обязательно запишите и сохраните его себе отдельно.
./easyrsa build-ca
В результате получаем 2 файла, ключи и сертификат:
/etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/private/ca.key
/etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/ca.crt
Файл ca.crt в дальнейшем мы будем использовать вместе с клиентским сертификатом и ключом.
Продолжим. Создаем ключ сервера, в процессе можно просто нажать enter:
./easyrsa gen-req server nopass
Создаем сертификат сервера. Подтверждаем прописав yes и вводим пароль, который назначали ранее:
./easyrsa sign-req server server
Сгенерируем ключ Диффи-Хелмана, который может понадобится в дальнейшем для усиливания безопастности:
./easyrsa gen-dh
Ключ будет находиться по пути /etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/dh.pem
Далее скопируем созданные ключи в папку /etc/openvpn/server:
mkdir /etc/openvpn/server
cp pki/ca.crt /etc/openvpn/server/ca.crt
cp pki/dh.pem /etc/openvpn/server/dh.pem
cp pki/issued/server.crt /etc/openvpn/server/server.crt
cp pki/private/server.key /etc/openvpn/server/server.key
Приступим к созданию клиентского сертификата и ключа (процесс аналогичен созданию сертификата сервера):
./easyrsa gen-req client nopass
./easyrsa sign-req client client
На выходе получим 2 файла:
/etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/issued/client.crt
/etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/private/client.key
Приступим к настройке конфигурационного файла сервера OpenVPN. Создадим следующий файл:
nano /etc/openvpn/server.conf
Следующего содержания:
port 1194 # Указываем порт по которому будет работать наш VPN
proto tcp # протокол. Можно заранее учесть, что для работы некоторых устройств tcp будет более универсален (например mikrotik, который не поддерживает udp openvpn)
dev tun1 # Номер интерфеса, если других нет, можно поставить просто tun
local 192.168.1.2 # адрес главного интерфейса, через который можно выйти в инет
ca /etc/openvpn/server/ca.crt
cert /etc/openvpn/server/server.crt
key /etc/openvpn/server/server.key
dh /etc/openvpn/server/dh.pem
server 10.20.30.0 255.255.255.0 # подсеть для туннеля, может быть любой
route 10.20.30.0 255.255.255.0 # указываем подсеть, к которой будем обращаться через vpn
push «route 10.20.30.0 255.255.255.0» # передаем маршрут клиентам
keepalive 10 360
comp-lzo
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
verb 3
cipher AES-256-CBC
tun-mtu 1500
Создадим директорию где будут храниться логи, по тому пути, который указывали в конфигурационном файле:
mkdir /var/log/openvpn
touch /var/log/openvpn/openvpn.log
touch /var/log/openvpn/openvpn-status.log
Перезагружаемся:
service openvpn restart
Проверяем наличие нового интерфейса командой ifconfig:
Пропишем в iptables правило для того, что бы клиенты могли подключаться по порту 1194:
iptables -A INPUT -p tcp —dport 1194 -j ACCEPT
Сохраняем:
service iptables save
Добавим службу openvpn в автозапуск:
chkconfig openvpn on
Так же не стоит забывать, что на роутере, если таковой имеется, следует открыть порт 1194 в сторону АТС
Вернемся к нашему телефону.
Нам понадобятся 3 файла, что мы создавали ранее
/etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/ca.crt
/etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/issued/client.crt
/etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/private/client.key
Сохраняем себе эти 3 файла client.crt, client.key, ca.crt туда, где телефон с веб интерфейса сможет их подхватить.
На веб интерфейсе переходим в:
Заполняем поля по примеру:
В поле «OpenVPN® Server Address» указываем внешний IP адрес АТС
В поля «OpenVPN® CA», «OpenVPN® Certificate» и «OpenVPN® Client Key» загрузаем соответствующие файлы.
Обязательно включаем парметр OpenVPN Enable
Нажимаем «Save and Apply» и перезагружаемся
После перезагрузки заходим:
При успешном подключении мы должны увидеть в поле «OpenVPN® IP» информацию о полученном IP.
Так же процесс подключения можем наблюдать на АТС с помощью команды:
tailf /var/log/openvpn/openvpn.log
Бывают случаи, когда телефон не может подключиться по OpenVPN из-за не верно выставленного времени на аппарате. Проверьте настройки NTP сервера.
Остается подключить саму линию
В поле «SIP Server» указываем адрес OpenVPN сервера
Сохраняемся «Save and Apply»
На этом настройка телефона окончена. В случае невозможности подключения проверьте поле «Permit» в настройках экстеншена на АТС.
Остались вопросы?
Я - Виталий Шелест, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.
категории
- DECT
- Linux
- Вспомогательный софт при работе с Asterisk
- Интеграция с CRM и другими системами
- Интеграция с другими АТС
- Использование Elastix
- Использование FreePBX
- Книга
- Мониторинг и траблшутинг
- Настройка Asterisk
- Настройка IP-телефонов
- Настройка VoIP-оборудования
- Новости и Статьи
- Подключение операторов связи
- Разработка под Asterisk
- Установка Asterisk
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 сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.
сколько телефонов из доп филиала, под одним шлюзом которые, можно так подключить к головному удаленному серверу?