Тунель піднімається, журнал показує шифр, і огляд профілю триває. Потім до партнера приходить оновлення, і той самий профіль падає з повідомленням про відсутність спільного шифру, що змушує людей шукати директиву, яку треба видалити. Корисно розуміти, що data-ciphers описує переговори, а не налаштування. Одна сторона пропонує список, друга обирає з нього, і результатом є єдиний алгоритм, який підтримують обидві. Читання цього обміну пояснює більшість таких збоїв, перш ніж ви зміните рядок.

Два канали, дві конфігурації

Одна OpenVPN сесія має канал керування й канал даних. Канал керування виконує рукостискання TLS, яке автентифікує партнерів і узгоджує ключі. Канал даних шифрує пакети, що несуть ваш трафік.

data-ciphers налаштовує другий. Канал керування має власні параметри, а перевірки ідентичності профілю — третя, окрема справа. Зміна одного не виправляє іншого, тому профіль може виглядати правильним і все ж зазнавати збою на певному етапі.

Тримайте ці три в окремих шухлядах, коли читаєте файл конфігурації.

Прочитайте переговори з журналу

Журнал клієнта називає обидва результати, коли з'єднання успішне. Один рядок повідомляє про канал керування та його деталі TLS, а інший — про вибраний шифр каналу даних.

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

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

Як вибір відбувається насправді

Сервер штовхає свій список data-ciphers клієнту під час рукостискання, а клієнт вибирає перший запис у цьому списку, який підтримує і він. Тому порядок належить конфігурації сервера, а не клієнта.

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

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

Список не є рейтингом сили в абстрактному сенсі. Це набір кандидатів, і вибраний — перший взаємно підтримуваний запис у порядку сервера. Тому два списки, які виглядають по-різному, можуть узгодити один і той самий шифр. Тому ж два списки, які виглядають однаково, можуть зазнати збою.

Старіші партнери потребують навмисного запасного варіанта

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

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

Узгодьте обидва боки замість того, щоб редагувати не пов'язані назви алгоритмів. Якщо оновлення сервера видалило старий параметр, виправлення належить до плану версій, а не до метушні на клієнті.

Збережіть перевірку недоторканою

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

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

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

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

Схожі статті