Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: Ошибка соединения по VPN

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию Ошибка соединения по VPN

    Привет.
    Помогите разобраться проблеме.
    Контроллер СПК110 исправно работал в openVPN-сервером версии 2.6.8, но не хочет работать с сервером версии 2.6.12.

    Я настроил сервер. Другие клиенты (Виндовс) к нему подключены. Связь норм.
    Среди настроек сервера есть такие:
    Код:
    ncp-ciphers AES-256-GCM:CHACHA20-POLY1305
    tls-auth /etc/openvpn/openvpn_certs/ta.key 0
    auth-nocache
    А у СПК110 я вписал:
    Код:
    cipher AES-256-GCM
    Я проверил синтаксис старого файла (для 2.6.8) и нового (для 2.6.12) и разница только в количестве строк в секциях CA и CERT.
    Синтаксис, конфиги - вроди теже....
    Только порт у меня нестандартный - №2025.
    Сам СПК110 пишет, что "Конфигурация корректная".

    СПК110 не подключается. Устройство tap не появляется среди интерфейсов (ifconfig).
    В логах сервера я вижу:


    Код:
    2025-03-10 11:39:19 Authenticate/Decrypt packet error: packet HMAC authentication failed
    2025-03-10 11:39:19 TLS Error: incoming packet authentication failed from [AF_INET]aa.bb.cc.dd:1194
    Что я делаю не так?

  2. #2
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    13,643

    По умолчанию

    Добрый день.
    Контроллер СПК110 исправно работал в openVPN-сервером версии 2.6.8, но не хочет работать с сервером версии 2.6.12.
    Какая версия OpenSSL в 2.6.12?
    Наши контроллеры поддерживают не выше 1.1.1j.

  3. #3

    По умолчанию

    Здравствуйте, Евгений.

    В новом сервере openVPN 2.6.12 и OpenSSL 3.3.3. (не работает)
    В старом сервере openVPN 2.6.8 и OpenSSL 3.1.2. (работает)

    А в СПК110 openVPN 2.5.2 и OpenSSL 1.1.1j.

    Что можно сделать?
    Можно ли обновить OpenSSL в СПК110?

    Последний раз редактировалось ВладОвен; 11.03.2025 в 11:51.

  4. #4
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    13,643

    По умолчанию

    Что можно сделать?
    Возможно, на стороне сервера путем каких-то настроек можно разрешить подключение клиентов с устаревшей OpenSSL.

    Можно ли обновить OpenSSL в СПК110?
    Силами пользователя - нет.
    Возможно, обновление OpenSSL произойдет в одной из будущих прошивок (маловероятно, что в этом году).

  5. #5

    По умолчанию

    Все же не совсем так.
    Я разобрался.

    СПК110 с openVPN 2.5.2 и OpenSSL 1.1.1j работает хорошо с сервером openVPN 2.6.12 и OpenSSL 3.3.3.

    Я думал, что из-за длины DiffieHellman. В версии openSSL 3.3.3 требуется 2048бит (1024бит уже считается устаревшим). Но дело не в этом. При длине в 2048 бит работает тоже нормально.

    Проблема в параметре на сервере:

    Код:
    tls-auth /etc/openvpn/openvpn_certs/ta.key 0
    Вот этот вот "0" на конце - это направление, которое может быть 0 или 1.
    Значение 0 указывает, что ключ используется на стороне сервера, а значение 1 — на стороне клиента.
    Он помогает различать, с какой стороны (клиентской или серверной) используется ключ для защиты соединения.
    Этот параметр важен для правильной настройки и работы функции аутентификации TLS, поскольку сервер и клиент должны знать, как правильно интерпретировать ключ.

    И это работает только тогда (!), когда мы кладем файлы ключей .pem (4 шт.) рядом с конфигурационным файлом .ovpn
    А если мы вписываем данные ключей прямо в конфигурационный файл (вроде, это называется inline), то это направление нельзя использовать. И СПК110 может принимать данные ключей только в таком формате!
    Тогда параметр на сервере должен быть таким:

    Код:
    tls-auth /etc/openvpn/openvpn_certs/ta.key
    Без задания направления.
    Т.е. проверка направления не проводится.
    Последний раз редактировалось ВладОвен; 11.03.2025 в 11:43. Причина: мелкие правки

  6. #6

    По умолчанию

    Для всех других клиентов этой ВПН-сети, которые умеют читать файлы ключей .pem, лежащие рядом с конфигурационным файлом .ovpn,
    нужно тоже отключить проверку направления.
    Было:
    Код:
    tls-auth ta.key 1
    Стало:
    Код:
    tls-auth ta.key
    Полет нормальный.
    Последний раз редактировалось ВладОвен; 11.03.2025 в 11:47.

  7. #7

  8. #8
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,606

    По умолчанию

    удивительно, сперва параноидальное желание дополнительно защитится, а потом когда что то пошло не так, переход на двунаправленный режим чтоб допустить перехват пакетов злодеем и добиться перегрузки с отказом в обслуживании. Так может просто отказаться от этой строчки на клиенте и сервере, она не обязательна
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  9. #9

    По умолчанию

    Для начала создал соединение между двух роутеров Netcraze (в минимальной конфигурации). Добился пинга от сервера к клиенту (с этим были трудности).
    Этот стенд собирал, чтобы проверить работоспособность сервера OpenVPN и уже далее рабочий файл клиентской конфигурации пытаться подгрузить в ПЛК210-4G

    Файл подгружается, он корректный. Канал с сервером открывается (проходит пинг от ПЛК210 до домашнего роутера)
    Однако не выходит достучаться до внешнего адреса ПЛК210 (определяю на странице диагностики)

    2026-01-02_04-40-22.png
    2026-01-02_04-49-16.png
    +79104444236
    С уважением,
    Лапшин Вячеслав

  10. #10
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,606

    По умолчанию

    Цитата Сообщение от krollcbas Посмотреть сообщение
    Однако не выходит достучаться до внешнего адреса ПЛК210 (определяю на странице диагностики)]
    так же можно с самого плк узнать внешний (публичный) адрес роутера командой curl ifconfig.me который раздает интернет конкретному ПЛК, это не совсем то что внешний адрес ПЛК210

    Если клиент не настроен на форвардинг, пакет не пройдёт.
    На клиенте (Linux) включите форвардинг sysctl net.ipv4.ip_forward=1
    На клиенте настройте NAT, чтобы трафик из VPN шёл через внешний интерфейс
    iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # eth0 — внешний интерфейс клиента
    iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT

    Если NAT и MASQUERADE настроен то команда iptables -t nat -L -n -v покажет статистику больше нуля в соответствующей зоне
    Последний раз редактировалось capzap; Сегодня в 13:48.
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  1. Owen OPC нет соединения
    от Leopenin в разделе OPC Серверы
    Ответов: 13
    Последнее сообщение: 04.10.2022, 11:16
  2. Ответов: 0
    Последнее сообщение: 16.07.2019, 07:27
  3. ТРМ200-Н2 нет соединения по RS-485
    от sabshyk в разделе Эксплуатация
    Ответов: 1
    Последнее сообщение: 31.05.2019, 13:02
  4. Ошибка установления соединения
    от super100 в разделе Master SCADA 3
    Ответов: 10
    Последнее сообщение: 30.10.2013, 13:14
  5. ошибка соединения
    от Дмитрий Ф в разделе ПЛК1хх
    Ответов: 1
    Последнее сообщение: 13.02.2012, 13:26

Метки этой темы

Ваши права

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