Коя програма притежава този config.json в настройката ви на OpenVPN?
Файл с име config.json може да принадлежи на графичен интерфейс, на демон или на формат за експорт, а не на OpenVPN. Открийте парсера, преди да редактирате или заменяте ключове.
Намирате файл с име config.json, в него се споменава VPN сървър и веднага следва предположението: това трябва да е връзката OpenVPN. Често не е. JSON файл с това име може да принадлежи на настолен интерфейс, който стартира клиента, на демон, който съхранява собствените си настройки, или на формат за експорт на продукт, и всеки от тях има собствена схема.
Името на файла е най-малко полезното указание. Започнете от процеса, който чете файла, след това проверете дали форматът, който очаква, изобщо е JSON, и само след това решете дали редактирането на файла е поддържаният начин да промените нещо.
Започнете от процеса, не от името на файла
Вижте какво реално работи. Единица на услуга, скрипт за стартиране или приложение в системния трей ще посочат изпълнимия файл, който стартират, и често пътя на конфигурацията, който подават. Директорията, в която се намира файлът, е второ указание: директориите с данни на приложенията, директориите с конфигурация на услуги и директориите с потребителски профили подсказват различни собственици.
След това прочетете документацията на продукта, който притежава този компонент. Ако JSON принадлежи на обвивка, ключовете му са ключове на обвивката и обект, който изглежда правдоподобно, но е изграден по пример на друг продукт, ще бъде отхвърлен или тихо игнориран.
Два файла с едно и също име в различни директории са често срещан капан. Единият може да е генерирано състояние, което услугата презаписва при всяко стартиране, а другият — шаблонът, който човек трябва да редактира. Промяната на грешния дава поправка, която оцелява до следващото рестартиране.
Какво всъщност представлява профил на Community OpenVPN
Community OpenVPN 2.6 чете текстов формат, базиран на опции. Профилът е последователност от директиви: ред за режим на клиента, ред за устройство, отдалечена крайна точка, плюс опции за идентичност, шифър и маршрути, и може да вгражда материал за сертификат и ключ във вградени блокове.
Този формат се анализира ред по ред от самия клиент. Подаването на JSON документ през опцията config не включва JSON парсер; първият ред ще бъде отхвърлен като непозната директива. Преименуването на JSON файл да завършва на .ovpn също не преобразува съдържанието му и валиден файл с опции не става невалиден, защото разширението му е необичайно.
OpenVPN Connect и OpenVPN 3 Linux имат собствени пътища за импорт и управление на профили. Тези продукти могат да приемат профил и да го съхранят в собствената си база данни или състояние на услугата, което не е същото като JSON файл, който случайно описва сървър.
Редактиране на състояние, което друг компонент притежава
Ако JSON е генериран, редактирането му е надпревара. Работеща услуга може да го запише обратно при изключване, при повторно свързване или при следващата промяна на настройки, и ръчната промяна изчезва без грешка. Предпочитайте командата за импорт на продукта, API за управление или интерфейса за настройки, защото тези пътища обновяват вътрешното състояние, което файлът представлява. Файл, който се връща след рестартиране, ви казва кой път е бил трайният.
Ако все пак редактирате генериран файл, първо спрете услугата, направете резервно копие и направете възможно най-малката промяна. След това проверете дали услугата презаписва файла при стартиране, защото файл, който се връща при старт, означава, че истинският източник е другаде и промяната никога нямаше да се запази.
Паролите и вградените частни ключове са отделна грижа. JSON може да носи пълен ключ точно толкова лесно, колкото файл с опции, затова третирайте всеки експорт като тайна, дръжте го далеч от споделени дискове и заличавайте стойностите, преди да поставите структура във въпрос във форум.
Проверка на промяната и защита на файла
Проверката не е “JSON се анализира”. Анализът доказва само, че скобите съвпадат; той не казва нищо за това дали собственикът разпознава ключовете. Проверете собственото състояние на продукта: списъка с активни профили, избраната връзка и повторно свързване, което действително използва новите стойности. Профил, който се появява в списъка, но никога не става избран, все още не е профилът в употреба.
Следете журнала на компонента, който редактирахте, не само журнала на VPN клиента. Обвивка, която отхвърля файла ви, обикновено го съобщава в собствения си журнал, а клиент, който никога не е получил файла, изглежда идентично на клиент, получил лоши настройки.
Пазете копие на работещия файл и записвайте версията на продукта, срещу която сте тествали. Тези формати се променят между изданията и структура, работила миналата година, може да бъде отхвърлена след надграждане със съобщение, което изобщо не споменава схемата.
Обобщение на прегледа: идентифицирайте процеса, прочетете документацията му, потвърдете дали файлът изобщо е JSON, използвайте поддържания път за редактиране и проверете чрез собственото състояние на продукта. Името на файла никога не отговори на нито един от тези въпроси.