Kiu programo posedas ĉi tiun config.json en via OpenVPN-aranĝo?
Dosiero nomata config.json povas aparteni al GUI, al demono aŭ al eksporta formato, ne al OpenVPN. Trovu la analizilon antaŭ ol redakti aŭ anstataŭigi ŝlosilojn.
Vi trovas dosieron nomatan config.json, ĝi mencias VPN-servilon, kaj la supozo tuj sekvas: ĉi tio devas esti la OpenVPN-konekto. Ofte ĝi ne estas. JSON-dosiero kun tiu nomo povas aparteni al labortabla fasado, kiu lanĉas la klienton, al demono, kiu konservas siajn proprajn agordojn, aŭ al eksporta formato de produkto, kaj ĉiu el ili havas sian propran skemon.
La dosiernomo estas la malplej utila indico. Komencu ĉe la procezo, kiu legas la dosieron, poste kontrolu, ĉu la formato, kiun ĝi atendas, entute estas JSON, kaj nur tiam decidi, ĉu redakti la dosieron estas la subtenata maniero ŝanĝi ion.
Komencu ĉe la procezo, ne ĉe la dosiernomo
Rigardu, kio fakte funkcias. Serva unuo, lanĉa skripto aŭ aplikaĵo en la pleto nomos la binaran dosieron, kiun ĝi lanĉas, kaj ofte la agordan vojon, kiun ĝi transdonas. La dosierujo, kiu enhavas la dosieron, estas dua indico: dosierujoj de aplikaĵaj datumoj, de servaj agordoj kaj de uzantaj profiloj indikas malsamajn posedantojn.
Poste legu la dokumentaron de la produkto, kiu posedas tiun komponanton. Se la JSON apartenas al volvaĵo, ĝiaj ŝlosiloj estas la ŝlosiloj de la volvaĵo, kaj kredinde aspektanta objekto konstruita laŭ la ekzemplo de alia produkto estos malakceptita aŭ silente ignorata.
Du dosieroj kun la sama nomo en malsamaj dosierujoj estas ofta kaptilo. Unu povas esti generita stato, kiun la servo reskribas ĉe ĉiu lanĉo, kaj la alia povas esti la ŝablono, kiun homo devus redakti. Ŝanĝi la malĝustan produktas riparon, kiu daŭras ĝis la sekva restartigo.
Kio fakte estas Community OpenVPN-profilo
Community OpenVPN 2.6 legas tekstformatan bazitan sur opcioj. Profilo estas sinsekvo de direktivoj: linio de klienta reĝimo, linio de aparato, fora finpunkto, kune kun opcioj de identeco, ĉifrado kaj vojoj, kaj ĝi povas enigi atestilon kaj ŝlosilan materialon en enliniaj blokoj.
Tiun formaton analizas linio post linio la kliento mem. Transdoni al ĝi JSON-dokumenton per la opcio config ne ŝaltas JSON-analizilon; la unua linio estos malakceptita kiel nekonata direktivo. Renomi JSON-dosieron tiel, ke ĝi finiĝu per .ovpn, ankaŭ ne konvertas ĝian enhavon, kaj valida opcia dosiero ne fariĝas malvalida ĉar ĝia etendo estas nekutima.
OpenVPN Connect kaj OpenVPN 3 Linux havas siajn proprajn enportajn kaj administrajn vojojn por profiloj. Tiuj produktoj povas akcepti profilon kaj konservi ĝin en sia propra datumbazo aŭ serva stato, kio ne estas la sama afero kiel JSON-dosiero, kiu hazarde priskribas servilon.
Redakti staton, kiun posedas alia komponanto
Se la JSON estas generita, redakti ĝin estas konkurado. Funkcianta servo povas reskribi ĝin ĉe malŝalto, ĉe rekonekto aŭ ĉe la sekva agorda ŝanĝo, kaj mana redakto malaperas sen eraro. Preferu la enportan komandon de la produkto, la administran API aŭ la agordan interfacon, ĉar tiuj vojoj ĝisdatigas la internan staton, kiun la dosiero reprezentas. Dosiero, kiu revenas post restartigo, diras al vi, kiu vojo estis la daŭra.
Se vi tamen redaktas generitan dosieron, unue haltigu la servon, konservu sekurkopion kaj faru la plej malgrandan eblan ŝanĝon. Poste kontrolu, ĉu la servo reskribas la dosieron ĉe lanĉo, ĉar dosiero, kiu revenas ĉe lanĉo, signifas, ke la vera fonto de vero estas aliloke, kaj la redakto neniam daŭrus.
Pasvortoj kaj enliniaj privataj ŝlosiloj estas aparta afero. JSON povas porti kompletan ŝlosilon same facile kiel opcia dosiero, do traktu ĉiun eksporton kiel sekreton, tenu ĝin for de komunaj diskoj kaj kaŝu valorojn antaŭ ol alglui strukturon en forumdemandon.
Kontroli la ŝanĝon kaj ŝirmi la dosieron
Kontrolo ne estas “la JSON analiziĝas”. Analizo nur pruvas, ke la krampoj kongruas; ĝi diras nenion pri tio, ĉu la posedanto rekonas la ŝlosilojn. Kontrolu la propran staton de la produkto: la liston de aktivaj profiloj, la elektitan konekton kaj rekonekton, kiu fakte uzas la novajn valorojn. Profilo, kiu aperas en la listo sed neniam fariĝas la elektita, ankoraŭ ne estas la profilo uzata.
Observu la protokolon de la komponanto, kiun vi redaktis, ne nur tiun de la VPN-kliento. Volvaĵo, kiu malakceptas vian dosieron, kutime raportas tion en sia propra protokolo, kaj kliento, kiu neniam ricevis la dosieron, aspektas idente al kliento, kiu ricevis malbonajn agordojn.
Konservu kopion de la funkcianta dosiero kaj notu la version de la produkto, kontraŭ kiu vi testis. Tiuj formatoj ŝanĝiĝas inter eldonoj, kaj strukturo, kiu funkciis pasintjare, povas esti malakceptita post ĝisdatigo kun mesaĝo, kiu tute ne mencias la skemon.
Resumo de la trairo: identigu la procezon, legu ĝian dokumentaron, konfirmu, ĉu la dosiero entute estas JSON, uzu la subtenatan redaktan vojon kaj kontrolu per la propra stato de la produkto. La dosiernomo neniam respondis al iu ajn el tiuj demandoj.