Вопрос или проблема
Ситуация
- Я использую устройство OpenVpn Server Access, не бесплатную версию CE; я не знаю, отличаются ли они в конфигурации или в поведении.
- Текущая версия устройства: 2.1.9
- Версия сервера: 2.5.2
- Статус лицензии: 2 устройства
- Все следующие конфигурации выполнены с использованием официального веб-интерфейса администратора
- ОС Ubuntu 18.04: Linux realtebo.example.com 4.4.0-134-generic #160-Ubuntu SMP Wed Aug 15 14:58:00 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Задействованные конфигурации
- Несколько сеансов на пользователя ВКЛ
- Прослушивание на eth0: 192.168.1.225
- Порты: tcp/1194, udp/1194
- Уровень ОСИ: 3 (маршрутизация/NAT)
- Директивы конфигурации сервера содержат только
duplicate-cn
- Директивы конфигурации сервера содержат только
duplicate-cn
- Я сохранил и подтвердил распространение конфигураций на работающий сервер
- Я уже пытался перезапустить службу, а также перезагрузить сервер; ничего не меняется
Проблема
- Установлено официальное приложение OpenVpn как на iPad, так и на телефоне Android
- Скачан клиентский сертификат.
-
Я открыл файл .ovpn и вижу
# Дополнительная пользовательская конфигурация duplicate-cn
-
Я подключаюсь к VPN, используя iPad
- Я подключаюсь к VPN, используя телефон Android
- iPad отключается от VPN
-
iPad явно сообщает мне
Клиент был остановлен сервером: отключен из-за нового подключения тем же пользователем.
Журналы
Обратите внимание на строки, начинающиеся с OVPN 5 OUT
[-] OVPN 4 OUT: '192.168.1.1:55322 TLS: Начальный пакет от [AF_INET]192.168.1.1:55322, sid=ef370909 6ae63962'
[-] OVPN 4 OUT: '192.168.1.1:55322 УБЕДИТЕЛЬНО: глубина=1, /CN=OpenVPN CA'
[-] OVPN 4 OUT: '192.168.1.1:55322 УБЕДИТЕЛЬНО: nsCertType=CLIENT'
[-] OVPN 4 OUT: '192.168.1.1:55322 УБЕДИТЕЛЬНО: глубина=0, /CN=realtebo'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_GUI_VER=net.openvpn.connect.ios_3.0.0-712'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_VER=3.2'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_PLAT=ios'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_NCP=2'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_TCPNL=1'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_PROTO=2'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_LZO=1'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_LZO_SWAP=1'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_LZ4=1'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_LZ4v2=1'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_COMP_STUB=1'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_COMP_STUBv2=1'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_HWADDR=D3E089DB-77B9-4A5B-95AA-2081A4EB5366'
[-] OVPN 4 OUT: '192.168.1.1:55322 информация о пэре: IV_BS64DL=1'
[-] OVPN 4 OUT: '192.168.1.1:55322 Управляющий канал: TLSv1.2, шифр TLSv1/SSLv3 ECDHE-RSA-AES256-GCM-SHA384, 2048 бит RSA'
[-] OVPN 4 OUT: '192.168.1.1:55322 [realtebo] Подключение к пэру инициировано с [AF_INET]192.168.1.1:55322'
[-] OVPN 5 OUT: 'УПРАВЛЕНИЕ: CMD \'client-kill 1 "HALT, отключен из-за нового подключения тем же пользователем"\''
[-] OVPN 5 OUT: 'Отложенный выход через 5 секунд'
[-] OVPN 5 OUT: "ОТПРАВЛЕНО УПРАВЛЕНИЕ [realtebo_AUTOLOGIN]: 'HALT, отключен из-за нового подключения тем же пользователем' (статус=1)"
OMIClientAuth,0,] УСПЕШНАЯ АУТЕНТИФИКАЦИЯ {'статус': 0, 'причина': 'локальная аутентификация удалась', 'список_серий': [], 'пользователь': u'realtebo',
'пропертя': {u'prop_autologin': u'true', u'pvt_password_digest': '[засекречено]', u'тип': u'user_compile',
u'пропертя': u'true'}, 'общее_имя': u'realtebo', 'серийный': '4'} cli=u'ios'/u'3.2'
[-] OVPN 4 OUT: "УПРАВЛЕНИЕ: CMD 'client-auth 2 0'"
[-] OVPN 4 OUT: 'realtebo/192.168.1.1:55322 ИНФОРМАЦИЯ ИЗ ИСПОЛЬЗОВАНИЯ: параметры сжатия изменены'
[-] OVPN 4 OUT: 'realtebo/192.168.1.1:55322 МУЛЬТИ: Узнать: 172.27.232.3 -> realtebo/192.168.1.1:55322'
[-] OVPN 4 OUT: 'realtebo/192.168.1.1:55322 МУЛЬТИ: основной виртуальный IP для realtebo/192.168.1.1:55322: 172.27.232.3'
[-] OVPN 4 OUT: "realtebo/192.168.1.1:55322 ОТПРАВЛЕНО УПРАВЛЕНИЕ [realtebo]: 'PUSH_REPLY,explicit-exit-notify,topology subnet,route-delay 5 30,
dhcp-pre-release,dhcp-renew,dhcp-release,route-metric 101,ping 12,ping-restart 50,auth-tokenSESS_ID,comp-lzo yes,redirect-private
def1,redirect-private bypass-dhcp,redirect-private autolocal,route-gateway 172.27.232.1,route 192.168.1.0 255.255.255.0,
route 172.27.224.0 255.255.240.0,dhcp-option DNS 192.168.1.228,dhcp-option ADAPTER_DOMAIN_SUFFIX homenet.telecomitalia.it,
register-dns,block-ipv6,ifconfig 172.27.232.3 255.255.254.0,peer-id 0,cipher AES-256-GCM' (статус=1)"
[-] OVPN 4 OUT: "realtebo/192.168.1.1:55322 Канал данных: использование согласованного шифра 'AES-256-GCM'"
[-] OVPN 4 OUT: "realtebo/192.168.1.1:55322 Исходящий канал данных: шифр 'AES-256-GCM' инициализирован с 256-битным ключом"
[-] OVPN 4 OUT: "realtebo/192.168.1.1:55322 Входящий канал данных: шифр 'AES-256-GCM' инициализирован с 256-битным ключом"
[-] OVPN 5 OUT: 'realtebo_AUTOLOGIN/192.168.1.1:39835 SIGTERM[soft,delayed-exit] получен, экземпляр клиента завершает работу'
Сноски
- Пользователь стандартный, _не является администратором_
- Я уже пытался отозвать сертификат, удалить пользователя, воссоздать, переустановить сертификат на обоих устройствах; ничего не меняется
- Как отметили в комментарии, я не использую статические IP
- Сервер OpenVpn работает на самой последней доступной версии, 2.5.2
- Эта проблема, похоже, была исправлена с версии 1.7.1
- при подключении 2 устройств с одним пользователем не работает, подключение 2 устройств с разными именами пользователей работает
Похожие вопросы и почему они не помогли
- проблема openvpn избежать одновременного доступа: у меня уже есть опция
duplicate-cn
в конфигурации
Это просто невозможно. Создайте второй файл .openvpn для другого устройства с другим сертификатом – поскольку вы используете свой собственный сервер OpenVPN, это не добавит вам никаких затрат.
Вы говорите, что открыли файл .ovpn и видите строку конфигурации duplicate-cn, но файл .ovpn является конфигурацией клиентской стороны. Просто чтобы прояснить, вы поместили строку duplicate-cn в файл server.conf и перезапустили службу?
Можно исправить, используя опцию duplicate-cn
.
Ответ или решение
Решение проблемы с подключением нескольких клиентов с одним пользователем в OpenVPN
Введение
В данной статье мы рассмотрим проблемы, с которыми вы столкнулись при использовании OpenVPN Access Server, особенно касающиеся подключения нескольких устройств под одним пользователем. Мы проанализируем вашу конфигурацию, логи и предложим возможные решения.
Ситуация
На сервере OpenVPN версии 2.5.2, работающем на Ubuntu 18.04, вы пытаетесь подключить два устройства (iPad и Android) под одной учетной записью пользователя. Несмотря на то, что вы включили опцию duplicate-cn
, устройство на iPad отключается с ошибкой, сообщающей о том, что соединение закрыто из-за нового подключения тем же пользователем.
Конфигурация
Параметры вашего сервера следующие:
- Опция "Множественные сессии для пользователя": Включена (ON)
- Опция
duplicate-cn
: Указана в конфигурации сервера - Сертификаты: Вы создали клиента для каждого устройства, но оба используют одну и ту же учетную запись.
Анализ проблемы
-
Опция
duplicate-cn
:
Опцияduplicate-cn
, как вы правильно заметили, позволяет нескольким клиентам с одинаковым Common Name (CN) подключаться к серверу одновременно. Однако важно убедиться, что эта опция действительно включена в конфигурации сервера, а не только в файлах конфигурации клиентов. Убедитесь, что вы внесли строкуduplicate-cn
в файл конфигурации сервера (server.conf
) и перезапустили службу OpenVPN. -
Логи подключения:
Логи, которые вы предоставили, показывают, что сервер явно отключает iPad после успешного подключения Android устройства. Это указывает на то, что сервер не распознает два подключения от одного пользователя из-за какой-то конфигурационной проблемы. Логи также показывают использование протоколов и параметров, которые соответствуют нормальным условиям. -
Лицензия и ограничения:
У вас лицензия на 2 устройства, что не должно быть проблемой, но важно помнить, что лицензия может также вводить ограничения на количество одновременных подключений под одним пользователем. Эти позиции могут варьироваться в зависимости от ваших конкретных условий лицензирования и версии OpenVPN Access Server. -
Сторонние факторы:
Иногда другие факторы, такие как настройки NAT или межсетевых экранов, могут мешать. Убедитесь, что все сетевые правила, которые могли бы ограничивать соединения, настроены правильно.
Решение проблемы
-
Перепроверка конфигурации сервера:
- Убедитесь, что строка
duplicate-cn
находится в правильном конфигурационном файле сервера. - Перезапустите сервер, как только вы подтвердите наличие изменений.
- Убедитесь, что строка
-
Проверка аутентификации:
- Проверьте, не используются ли одинаковые клиентские сертификаты для обоих устройств. Если вы используете один сертификат на нескольких устройствах, это может вызвать конфликты. Создайте отдельные сертификаты для каждого устройства.
-
Обновление ПО:
- Убедитесь, что ваша версия OpenVPN Access Server обновлена до последней, чтобы избежать известных ошибок, например, упомянутой вами проблемы в версиях ниже 1.7.1.
-
Связь с поддержкой:
- Если проблема сохраняется, рассмотрите возможность обращения в службу поддержки OpenVPN, так как они могут предоставить более глубокое понимание конфигурации вашего конкретного сервера и его текущих ограничений.
Заключение
Настройка OpenVPN для работы с несколькими клиентами с одним пользователем может быть сложной задачей, но с правильными шагами, проверкой конфигурации и устранением потенциальных конфликтов, вы сможете решить эту проблему. Убедитесь, что все изменения правильно применены и что вы используете соответствующие клиентские сертификаты для каждого устройства.