Как стать автором
Обновить
0
Snom Technology GmbH
Snom. German Engineered. First in VoIP.

Включение и настройка VPN на телефонах Snom

Время на прочтение10 мин
Количество просмотров1.4K

Продолжим тему безопасности и в этот раз рассмотрим использование функционала VPN в телефонных аппаратах Snom. Устройства Snom поддерживают протокол openVPN и именно о его настройке и использовании пойдет речь в дальнейшем.

Начнем с установки патча VPN на телефон

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

Чтобы установить данный патч, выполните одну из следующих процедур:

Установка вручную

  1. Проверьте текущую версию ПО.

  2. Откройте Центр обновления ПО и выберите установленную у вас сейчас версию.

  3. На странице с версией ПО пролистните вниз до «VPN Feature Updates».

4. Скопируйте ссылку для скачивания, соответствующую вашей модели телефона.

5. Зайдите в веб-интерфейс и выберите «Обновление ПО» в меню слева.

6. Вставьте ссылку в поле «Обновление программного обеспечения вручную» и нажмите «Загрузить».

Телефон перезагрузится и установит патч. После этого вы сможете использовать функцию VPN.

Автоматическая установка через SRAPS

Также можно установить патч VPN автоматически через SRAPS. Работу со SRAPS мы описывали в статье чуть ранее, для установки патча VPN, выберите соответствующий параметр при привязке телефона или в процессе его настройки.

Проверим, что патч успешно установлен.

После установки патча, проверим, появился ли нужный нам функционал в настройках аппарата:

  1. Параметр VPN должен отображаться в веб-интерфейсе телефона в разделе « Дополнительно» → «QOS / Безопасность» . Если установка патча VPN прошла успешно, параметр VPN отобразиться в подразделе «Безопасность» (по умолчанию функция отображается как выключенная, поскольку мы еще не произвели ее настройку)

  2. Также вы можете проверить включение данной функции через экранное меню телефона. Откройте меню « Настройки », нажав кнопку телефона со значком шестеренки, затем перейдите к разделу « Информация » и выберите « Информация о системе ».
    Вы должны увидеть строку VPN (по умолчанию функция отображается как выключенная, поскольку мы еще не произвели ее настройку)

  3. После установки патча VPN, телефон добавит HTTP-заголовок X-snom-vpn: available к запросам Autoprovision. Обращая внимание на этот заголовок, вы можете различать устройства с включенным VPN и устройства, не поддерживающие VPN.

Патч VPN для более старых версий

Если на вашем телефоне установлена ​​версия 8.x, вы можете найти инструкции для включения VPN здесь 

Создание архива конфигурации VPN для телефона в Linux

Создание файла конфигурации клиента / телефона

Функционал VPN теперь включен на телефонном аппарате, однако требует настройки и сертификатов для подключения к серверу. Создание сертификатов производится на VPN-сервере. Мы не будем отдельно рассматривать его в этой статье, полагая, что вы или ваш системный администратор, работая с VPN-сервером, умеют создавать клиентские сертификаты. Рассмотрим создание архива с файлами для загрузки в телефонный аппарат. Для начала создадим каталог, где мы соберем необходимые файлы, назовем его client-config:

# mkdir /etc/openvpn/client-config

Файл конфигурации для телефона должен называться vpn.cnf :

# touch /etc/openvpn/client-config/vpn.cnf

Отредактируем этот файл в своем текстовом редакторе:

# vim /etc/openvpn/client-config/vpn.cnf

Вставьте следующее содержимое в файл, но не забудьте установить значение IP-адреса или полного доменного имени вашего сервера, заменив <Server-IP/-name>:

client
dev tun
proto udp
remote <Server-IP/-name> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca /openvpn/ca.crt
cert /openvpn/client.crt
key /openvpn/client.key
remote-cert-tls server
ping 10
ping-restart 60

В неактуальных версиях ПО (8.x) параметры ping и ping-restart могут вызывать проблемы . Если ваше VPN-соединение не работает в на данных версиях, удалите эти параметры и повторите попытку.

Конфигурация телефона требует обязательного наименования, которое не следует изменять :

  • Все пути к файлам в вашем файле конфигурации должны быть заменены на /openvpn/filename

  • Файл конфигурации должен называться vpn.cnf.

Помимо файла настроек для телефона вам понадобятся следующие файлы:

Имя файла

Назначение

Использование

ca.crt

Корневой CA-сертификат

На стороне сервера и на каждом VPN-клиенте

000413A30591.crt

Сертификат для телефона с указанным MAC-адресом

Для телефона с MAC-адресом 000413A30591

000413A30591.key

Ключ для телефона с указанным MAC-адресом

Создадим архив с файлами конфигурации для телефона

Создайте временный каталог для хранения необходимых файлов:

# mkdir /etc/openvpn/client-config/tmp

Соберите файлы в архив:

# cp /etc/openvpn/client-config/vpn.cnf /etc/openvpn/client-config/tmp/    #конфигурационный файл
# cp /etc/openvpn/easy-rsa/keys/000413A30591.crt /etc/openvpn/client-config/tmp/client.crt  #клиентский сертифика
# cp /etc/openvpn/easy-rsa/keys/000413A30591.key /etc/openvpn/client-config/tmp/client.key  #клиентский приватный ключ
# cp /etc/openvpn/easy-rsa/keys/ca.crt /etc/openvpn/client-config/tmp/ca.crt     #CA сертификат
# cd /etc/openvpn/client-config/tmp/
# chown -Rf root:root *   
# chmod -R 700 *          
# tar cvpf vpnclient-000413A30591.tar *   #создание архива
# rm client.*     #удаление не нужных в дальнейшем клинтского сертификата и приватного ключа

Результатом действий будет архив vpnclient-000413A30591.tar в каталоге /etc/openvpn/client-config/tmp/. В дальнейшем этот архив мы и будем загружать в наш телефон.

Создание архива конфигурации VPN для телефона в Windows

Создадим файл конфигурации телефона vpn.cnf с помощью командной строки:

notepad C:\Program Files\OpenVPN\easy-rsa\keys\vpn.cnf

Система спросит вас, хотите ли вы создать новый файл, подтвердите создание файла. Скопируйте и вставьте следующее содержимое в файл, но не забудьте установить значение удаленного для IP-адреса или полного доменного имени вашего сервера, заменив <Server-IP / -name>:

client
dev tun
proto udp
remote <Server-IP/-name> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca /openvpn/ca.crt
cert /openvpn/client.crt
key /openvpn/client.key
remote-cert-tls server
ping 10
ping-restart 60

В неактуальных версиях ПО (8.x) параметры ping и ping-restart могут вызывать проблемы . Если ваше VPN-соединение не работает на данных версиях, удалите эти параметры и повторите попытку.

Конфигурация телефона требует обязательного наименования, которое не следует изменять :

  • Все пути к файлам в вашем файле конфигурации должны быть заменены на /openvpn/filename

  • Файл конфигурации должен называться vpn.cnf.

Сохраните файл vpn.cnf

Помимо файла настроек для телефона вам понадобятся следующие файлы:

Имя файла

Назначение

Использование

ca.crt

Корневой CA-сертификат

На стороне сервера и на каждом VPN-клиенте

000413A30591.crt

Сертификат для телефона с указанным MAC-адресом

Для телефона с MAC-адресом 000413A30591

000413A30591.key

Ключ для телефона с указанным MAC-адресом

Перейдите в проводнике к C:\Program Files\OpenVPN\easy-rsa\keys\. Внутри этой папки создайте новую папку с именем 000413A30591.

Скопируйте следующие файлы из C:\Program Files\OpenVPN\easy-rsa\keys\ в папку 000413A30591:

ca.crt

000413A30591.crt

000413A30591.key

vpn.cnf

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

Переименуйте 000413A30591.crt в client.crt

Переименуйте 000413A30591.key в client.key

Теперь ваша папка 000413A30591 должна выглядеть так:

В командной строке перейдите в новый созданный каталог, набрав:

C:\Program Files\OpenVPN\easy-rsa\keys\000413A30591

Теперь создайте архив tarball, набрав:

tar cvpf C:\vpnclient-000413A30591.tar *

Вы должны увидеть следующее:

C:\Program Files\OpenVPN\easy-rsa\keys\000413A30591> tar cvpf C:\ vpnclient-000413A30591.tar *

client.crt

client.key

ca.crt

vpn.cnf

Теперь вы сможете найти архивный файл vpnclient-000413A30591.tar в каталоге C:\. В дальнейшем данный архив мы и будем загружать в наш телефон.

Структура архива конфигурации

При создании tar-архива для телефонов Snom очень важно сохранить файловую структуру и имена в том виде, который отображен в примерах выше.

Ниже показано содержимое tar-файла, созданного в этом примере, vpnclient-000413A30591.tar. Обратите внимание, что здесь нет папок и каталогов, файлы должны быть помещены в корень архива:

ca.crt

client.crt

client.key

vpn.cnf

Вы можете скачать этот пример файла здесь: vpnclient-000413A30591.tar

Настройка параметров VPN со стороны телефона Snom

Для загрузки архива на телефонный аппарат, данный архив необходимо разместить на http/https сервере и получить ссылку на файл вида http://<Server-IP/ name>/vpnclient-000413A30591.tar. После этого можно приступать к непосредственной настройке аппарата. Также убедитесь, что на телефоне установлены верные время и дата, это необходимо для проверки сертификатов.

В разделе Расширенные → QOS/Безопасность найдите параметр VPN - включите параметр VPN. Будет доступен параметр tarball конфигурации Unzipped VPN:

Вставьте ссылку на архив с настройками, размещенный на HTTP(S)-сервере, например http://<Server-IP/ name>/vpnclient-000413A30591.tar с конфигурацией openVPN.

Прокрутите вниз и нажмите Применить

Если в телефоне отображаются некоторые настройки, которые еще не сохранены постоянно, нажмите «Сохранить». Если этот текст не появляется, вы можете пропустить этот шаг.

Нажмите Перезагрузить в верхней части страницы.

После перезагрузки телефон покажет уведомление об активности VPN и отобразит значок VPN на панели задач телефона.

Подключение еще одного телефона к VPN

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

Создайте сертификат для телефона на вашем VPN-сервере

Повторите шаг Создание архива конфигурации VPN для телефона (вы можете пропустить ту часть, где вы создаете vpn.cnf, потому что он уже был создан и обычно одинаков для всех клиентов)

Разместите архив конфигурации VPN на HTTP-сервер

Повторите шаг Настройка параметров VPN со стороны телефона Snom

Загрузка обновленных настроек VPN

Параметр The Unzipped VPN config tarball предназначен для предоставления только один раз: каждый раз, когда этот параметр настраивается, телефон загружает архив, а затем настройка очищается.

Если вы хотите изменить конфигурацию VPN телефона, вам необходимо снова настроить URL-адрес архива, чтобы телефон загрузился и применил новую конфигурацию.

Дополнительные настройки

Аутентификация с именем пользователя / паролем

В некоторых случаях для VPN-сервера в дополнение к сертификату требуется имя пользователя и пароль. Их настройка производится следующим образом:

Добавьте auth-user-pass в ваш vpn.cnf, вот так (не меняйте путь):

auth-user-pass /openvpn/pass.txt

Создайте файл pass.txt со следующим содержимым, заменив текстовое имя пользователя и пароль на ваше фактическое имя пользователя и пароль.

имя пользователя

пароль

При создании архива конфигурации (см. Шаг Создание архива конфигурации VPN для телефона) также включите в архив файл pass.txt.

Убедитесь, что файл pass.txt находится по тому же пути в архиве, что и другие файлы конфигурации.

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

Все шаги, описанные в инструкции, пройдены, но телефон отклоняет сертификат сервера. На что стоит обратить внимание?

Убедитесь, что на телефоне установлены верные дата и время. Попробуйте настроить NTP-сервер, к которому телефон может подключиться в своей собственной сети (не через VPN). Если на телефоне указана неправильная дата, сервер может считать, что все сертификаты недействительны (пока).

Как просмотреть журналы OpenVPN

Вы можете настроить телефон на отправку всех журналов VPN на «сервер Netcat». Сделать это:

Установите и запустите netcat на хосте, доступном для телефона командой:

netcat -l -p 5000

Установите IP-адрес этого хоста в разделе Дополнительные → Qos / Безопасность → Netcat Server:

После того, как вы примените это и перезагрузите телефон, вы увидите журналы VPN телефона на хосте, на котором запущен netcat. Если вы не добавили настраиваемый уровень детализации в vpn.cnf, вы должны увидеть следующее (при успешном подключении):

Tue Oct 20 11:58:19 2020 OpenVPN 2.4.7 arm-buildroot-linux-gnueabi [SSL (OpenSSL)] [LZO] [EPOLL] [MH/PKTINFO] [AEAD] built on Jul 5 2019
Tue Oct 20 11:58:19 2020 library versions: OpenSSL 1.0.2s 28 May 2019, LZO 2.10
Tue Oct 20 11:58:19 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]192.168.137.102:1194
Tue Oct 20 11:58:19 2020 UDP link local: (not bound)
Tue Oct 20 11:58:19 2020 UDP link remote: [AF_INET]192.168.137.102:1194
Tue Oct 20 11:58:19 2020 [openvpntest.snom.de] Peer Connection Initiated with [AF_INET]192.168.137.102:1194
Tue Oct 20 11:58:21 2020 TUN/TAP device tun0 opened
Tue Oct 20 11:58:21 2020 /sbin/ip link set dev tun0 up mtu 1500
Tue Oct 20 11:58:21 2020 /sbin/ip addr add dev tun0 local 10.8.0.6 peer 10.8.0.5
Tue Oct 20 11:58:21 2020 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Tue Oct 20 11:58:21 2020 Initialization Sequence Completed

Как узнать IP-адрес телефона в VPN?

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

Вариант 1: из SIP-логов

Настройте тестовую учетную запись SIP на телефоне, указав в качестве IP сервера регистрации адрес в сети VPN. Сам адрес не важен, он просто должен быть маршрутизирован внутри сети VPN. Укажите только параметры Учетной записи и сервера регистрации для этой учетной записи:

Затем нажмите SIP Trace, вы увидите сообщения регистрации телефона на сервере. Вы увидите IP-адрес, с которого они были отправлены:

Sent to Udp:10.8.0.1:5060 from Udp:10.8.0.6 :55786 at Oct 19 23:54:43.886 (717 bytes): REGISTER sip:10.8.0.1 SIP/2.0 Via: SIP/2.0/UDP 10.8.0.6:55786;branch=z9hG4bK-2yig1rmxrpir;rport From: <sip:100@10.8.0.1>;tag=r06il7bz6r To: <sip:100@10.8.0.1> .....

Если в вашей сети VPN правильно настроена маршрутизация, вы увидите в данном сообщении IP-адрес телефона (в этом примере это 10.8.0.6).

Вариант 2: из логов netcat

Из журналов netcat (см. Выше «Как просмотреть журналы OpenVPN»). Если вы не добавили настраиваемый уровень подробности в vpn.cnf, в начале подключения в журналах netcat также будет отображаться IP-адрес, который получает телефон.

Tue Oct 20 11:58:19 2020 OpenVPN 2.4.7 arm-buildroot-linux-gnueabi [SSL (OpenSSL)] [LZO] [EPOLL] [MH/PKTINFO] [AEAD] built on Jul 5 2019
Tue Oct 20 11:58:19 2020 library versions: OpenSSL 1.0.2s 28 May 2019, LZO 2.10
Tue Oct 20 11:58:19 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]192.168.137.102:1194
Tue Oct 20 11:58:19 2020 UDP link local: (not bound)
Tue Oct 20 11:58:19 2020 UDP link remote: [AF_INET]192.168.137.102:1194
Tue Oct 20 11:58:19 2020 [openvpntest.snom.de] Peer Connection Initiated with [AF_INET]192.168.137.102:1194
Tue Oct 20 11:58:21 2020 TUN/TAP device tun0 opened
Tue Oct 20 11:58:21 2020 /sbin/ip link set dev tun0 up mtu 1500
Tue Oct 20 11:58:21 2020 /sbin/ip addr add dev tun0 local 10.8.0.6 peer 10.8.0.5         <-------- this means that our local address in the VPN is 10.8.0.6
Tue Oct 20 11:58:21 2020 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Tue Oct 20 11:58:21 2020 Initialization Sequence Completed

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

Теги:
Хабы:
0
Комментарии0

Публикации

Изменить настройки темы

Информация

Сайт
www.snom.com
Дата регистрации
Дата основания
1997
Численность
Неизвестно
Местоположение
Германия
Представитель
Andrey Skolota

Истории