Stari profil .ovpn ne deluje na Ubuntu 24.04: katere vrstice izbrisati
Ubuntu 24.04 prinaša OpenVPN 2.6, profil, izvožen za 2.4, pa se ustavi na odstranjenih možnostih. Izbrišite keysize in ncp-disable, nato popravite ns-cert-type.
Profil se prenese, uvozi in nato ustavi v vrstici 12 datoteke s sporočilom Unrecognized option, ki navaja keysize. Na računu se ni nič spremenilo, strežnik pa še vedno sprejema druge odjemalce. Spremenil se je odjemalec sam: Ubuntu 24.04 namesti OpenVPN 2.6, medtem ko je bil izvoz napisan za 2.4. Popravilo je kratko zaporedje brisanj, vrstni red pa je pomemben, ker vsaka zastarela možnost prekine razčlenjevanje, preden se naslednja sploh prebere.
Preberite vrstico napake, preden se dotaknete datoteke
OpenVPN navede datoteko in vrstico, kjer se je razčlenjevanje ustavilo, zato lahko na en zagon popravite le eno težavo. Zaženite profil iz terminala in ne iz namiznega apleta, ker aplet običajno pogoltne stderr, številka vrstice pa je edini zanesljiv pokazatelj, ki ga dobite: sudo openvpn --config /etc/openvpn/client/provider.ovpn. Popravite to vrstico, zaženite znova in pričakujte, da bo naslednja napaka navedla drugo možnost.
Napaka razčlenjevanja se vedno pojavi pred kakršnim koli rokovanjem TLS, zato je sporočilo, ki omenja potrdilo, že prestopilo fazo skladnje. Ta razlika vam prepreči urejanje datoteke, ki ne uspe le pri preverjanju pristnosti. Preberite prvo besedo sporočila in ne njegove sredine.
Trije razredi napak, tri različna popravila
Stari izvozi ne uspejo na tri prepoznavne načine, zlivanje teh v eno težavo pa je razlog, da ljudje znova nameščajo pakete, ki nikoli niso bili pokvarjeni. Besedilo sporočila vam pove, v katerem razredu ste, preden odprete datoteko.
- Napake razčlenjevanja navedejo datoteko in vrstico ter se ustavijo, preden obstaja kakšen promet.
- Napake pogajanja se povežejo, nato pa sporočijo, da se oba konca nista mogla dogovoriti o skupni šifri ali sprejemljivem podatkovnem kanalu.
- Napake preverjanja pristnosti segajo najdlje in navedejo potrdilo, uporabnika ali zavrnjene poverilnice.
Urejanje profila popravi le prvi razred. Pogajanje zahteva odločitev na obeh koncih tunela, zavrnjene poverilnice pa sploh niso težava skladnje. Če vaše sporočilo omenja skupno šifro ali podatkovni kanal, brisanja spodaj ne bodo spremenila ničesar.
Izbrišite možnosti, ki jih je 2.6 odstranil, v tem vrstnem redu
Vsaka od teh vrstic sama ustavi razčlenjevanje, zato jih odjemalec sporoči eno za drugo. Pojdite po seznamu navzdol in po vsakem brisanju zaženite znova.
Najprej odstranite keysize, ker nima sodobnega ustreznika in njegova prisotnost običajno označuje šifro, ki jo trenutni odjemalec tako ali tako zavrne. Nato odstranite ncp-disable, ki je nadzoroval pogajanje o šifrah, je bil v 2.5 opuščen in je v 2.6 izginil. Zamenjajte ns-cert-type server z remote-cert-tls server, ki izraža isti namen prek podprtega preverjanja.Zgodovina sprememb 2.6 navaja preostala odstranitve ob njihovih zamenjavah, zato ima vse, kar razčlenjevalnik še zavrača, dokumentiran odgovor.
Pred prvim urejanjem shranite kopijo izvirnega profila. Ponudniki res ustvarijo izvoze znova, primerjava z nedotaknjeno datoteko pa je najhitrejši način, da ločite svoje spremembe od njihovih. Če brisanje omogoči zagon odjemalca, tunel pa še vedno ne uspe,ste prešli v razred pogajanja in preostale vrstice niso vzrok. V ime datoteke vstavite različico odjemalca, da bo naslednja oseba vedela, na katero izdajo se urejanja nanašajo.
Ohranite BF-CBC delujoč le kot omejeno rezervo
Nekateri ponudniki še vedno končajo na BF-CBC, ki ga OpenVPN 2.6 brez pomoči ne bo pogajal, ker ima šifra 64-bitni blok. Ozko popravilo je seznam rezervnih možnosti in ponudnik legacy OpenSSL, ne pa poslabšanje celotnega odjemalca.
providers legacy default
data-ciphers AES-256-GCM:AES-128-GCM
data-ciphers-fallback BF-CBC
Prva vrstica naloži ponudnika legacy, da lahko OpenSSL še ustvari to šifro, druga ohrani sodobno pogajanje za partnerje, ki ga podpirajo, tretja pa se uporabi le, ko strežnik ne ponudi nič boljšega. To je namerno oslabitev tunela, zato ob datoteki zapišite, zakaj obstaja. Hkrati prosite ponudnika za znova ustvarjen izvoz, saj je rezerva most in ne cilj.
Ne segajte po --compat-mode kot po univerzalnem odgovoru. Spremeni več vedenj hkrati, vključno s privzetimi nastavitvami pogajanja in ponovnega pogajanja, zato nikoli ne izveste, katera sprememba je bila pomembna. Raje izberite tri izrecne vrstice zgoraj, ker vsaka navaja svoj učinek.
Preverite s profilom, ki ga odjemalec dejansko naloži
Uvožene povezave se pogosto kopirajo v sistemsko mapo, zato urejanje datoteke v mapi za prenose morda ne bo spremenilo ničesar. Poiščite kopijo, ki se izvaja: sudo grep -rl "remote " /etc/NetworkManager/system-connections /etc/openvpn. Nato zaženite tunel in preberite vrstico dnevnika, ki navaja dejansko izbrano šifro podatkovnega kanala. Povezava, ki dokonča rokovanje na rezervi, vam pove, da strežnik ni nikoli ponudil ničesar sodobnega.
Preizkusite iz omrežja, ki ni tisto, ki ga pričakuje ponudnik, da se zajetni portal ali filtrirano gostujoče omrežje ne predstavita kot okvara profila. Zabeležite različico odjemalca ob vsaki zahtevi za podporo.
Ko je tunel vzpostavljen, pošljite eno zahtevo, ki ga mora prestopiti, in eno, ki ne sme, nato potrdite, da se je odgovor razreševalnika spremenil, kot ste pričakovali. Če se profil zdaj razčleni, povezava pa še vedno ne uspe, ste težavo skladnje pustili za seboj in besedilo napake bo navedlo nov razred. Urejeno datoteko hranite v sistemu za nadzor različic ob zabeležki, ki navaja izdajo OpenVPN, na katero se nanaša.