Телефон без нарікань підключається до VPN маршрутизатора, а ноутбук із профілем із тієї ж сторінки завантаження отримує тайм-аут. Із сертифікатами між цими двома спробами нічого не змінилося, бо ноутбук так і не дійшов до моменту, де сертифікати мають значення. Маршрутизатор публікує окремі слухачі для TUN і TAP, і робочий профіль має вибрати той, що належить його власному типу пристрою.

Вирішити, за якою з трьох можливих несправностей гнатися, — це вся робота тут: порт, тип пристрою чи узгодження шифру каналу даних.

Три речі, які мають збігатися

Тип пристрою, рядок інтерфейсу профілю і порт слухача утворюють один вибір, а не три. Профіль, який оголошує dev tun і націлений на слухач TAP, не може завершити сеанс, і зворотне так само зазнає невдачі. Для своєї моделі й прошивки читайте порт на власній сторінці VPN маршрутизатора, а не в посібнику, бо номери змінюються між збірками. Запишіть модель і версію прошивки поряд із цим номером, щоб наступна людина могла перевірити.

Звіти з місць згадують пару на кшталт 12973 для TUN і 12974 для TAP на одній прошивці та інший номер на іншій. Читайте їх як доказ того, що збірки різняться, а не як константи для копіювання. Далі профілю потрібне ім'я хоста, доречне для відстані: динамічне DNS-ім'я маршрутизатора, а не адреса WAN, яка зміниться.

Після виправлення порту й рядка інтерфейсу профіль виглядає як звичайна конфігурація клієнта з одним рядком remote і одним рядком dev. Якщо вони не збігаються, жодна кількість повторів не дає сеансу.

Читайте журнал у тому порядку, у якому він друкується

Клієнт OpenVPN повідомляє про події в тому порядку, у якому вони відбуваються, тож останній рядок перед тишею вказує шар для перевірки. Коли запуск закінчується на TLS Error: TLS key negotiation failed або просто чекає першої відповіді й здається, порівняння сертифікатів так і не відбулося. Це вказує на доступність, на слухач або на порт, за яким нічого немає. Ніщо з цього не виправляється заміною файлу CA.

Запуск, який доходить до VERIFY OK і потім зазнає невдачі, перебуває зовсім в іншому місці, зі своїми причинами. Розділення цих двох результатів до торкання файлів запобігає класичному обхідному шляху через пакети сертифікатів, про які ніколи не питали. Коли рукостискання завершено, але тунель не піднімається, дивіться на узгодження шифру, а не на доступність.

Додайте список шифрів, якого очікує сучасний клієнт

Недавні клієнти OpenVPN відмовляються від старих значень за замовчуванням, які прошивка побутових пристроїв ще пропонує, а симптом — збій узгодження одразу після успішного рукостискання. Виправлення — один рядок профілю, що називає те, що клієнт прийме: задайте data-ciphers у порядку AES-256-GCM, AES-128-GCM, CHACHA20-POLY1305 і AES-128-CBC. Будь-який алгоритм, який маршрутизатор не реалізує, просто ніколи не вибирається, тож довший список коштує лише трохи довшого узгодження.

Перелік шифрів не вчить маршрутизатор того, чого в нього немає. Якщо узгодження й далі не вдається, перевірте, чи на сторінці маршрутизатора є власне налаштування шифру і чи містить воно принаймні один запис, який клієнт приймає. Два списки без спільного елемента дають точно такий самий збій, як неправильний порт, тому обидва кінці варті погляду.

Імпортуйте один раз замість ручного редагування копій

Імпорт виправленого файлу в NetworkManager позбавляє теки, повної трохи різних профілів: nmcli connection import type openvpn file client.ovpn, потім підніміть його за назвою. Тримайте імпортований профіль єдиною копією, яку ви редагуєте, і видаляйте дублікати, що накопичуються від повторних завантажень.

Потім перевірте з-за меж LAN. Підключення з тієї ж мережі доводить дуже мало, бо трафік може взагалі не проходити через тунель. Переконайтеся, що запит справді виходить через маршрутизатор, а не лише що клієнт показує підключений стан.

Вирішіть, що робити з попередженнями

Прошивка побутових пристроїв зазвичай створює власний центр сертифікації, і клієнти скаржаться на перевірку так, що прошивка не може це придушити. Оцініть, чи важлива ця скарга для того, що ви захищаєте, замість того щоб вважати кожне попередження фатальним, і не вимикайте перевірку глобально, щоб заглушити одне повідомлення. Попередження, яке ви оцінили, — задокументований ризик; вимкнене налаштування перевірки — ні.

Коли прошивка не дає підтримуваного способу виправити справді важливе попередження, ця прогалина говорить на користь розміщення VPN в іншому місці. Вибір між полагодженням профілю, прийняттям попередження і перенесенням кінцевої точки — рішення про те, наскільки ви довіряєте цьому сертифікату. Ухваліть його свідомо і запишіть, який варіант обрали, замість того щоб клацати діалоги, доки значок не стане зеленим.

Схожі статті