Instruksjoner som navngir en bestemt OpenVPN-utgivelse koder vanligvis for en funksjon, og versjonsnummeret er bare en erstatning for den. Når du leser dem, kan distribusjonen levere noe nyere enn den navngitte versjonen og fortsatt mangle integrasjonen du trenger, eller levere noe eldre som allerede dekker kravet. Å behandle nummeret som målet gir repositorieendringer som ikke løser noe. Å behandle det som et symptom på et krav gir en mye mindre beslutning.

Tre spørsmål skiller de to: hvilken implementasjon, hvilken grunnutgivelse, og hvem som eier oppdateringene.

Et versjonsnummer er ikke et funksjonskrav

Spør hva tilkoblingen trenger før du spør hvilken pakke som tilbyr det. En profil kan kreve en cipher, en TLS-modus, en autentiseringsplugin eller et administrasjonsgrensesnitt, og hvilken som helst av dem kan mangle i en bygg som rapporterer en tilfredsstillende versjonsstreng. Omvendt kan en litt eldre bygg implementere alt profilen bruker. Versjonsstrengen er et sammendrag skrevet av pakkebyggeren, ikke en funksjonsliste.

Avklar om instruksjonen betyr 'denne funksjonen eller nyere' eller 'nøyaktig denne byggen ble testet'. De to svarene fører til forskjellige repositorier.

Kodenavnet må samsvare med grunnutgivelsen

Repositorier styres av distribusjonens kodenavn, og utgivelsesnavnet til en avledet distribusjon er ikke kodenavnet til grunnlaget. Les /etc/os-release for VERSION_CODENAME og ID_LIKE, og bekreft hvilken grunnutgivelse den avledede distribusjonen følger. Et gammelt svar som koblet én skrivebordsutgivelse til ett Ubuntu-kodenavn sier ingenting om den neste. Å gjette kodenavnet er hvordan et system ender opp med å hente pakker bygget mot et annet C-bibliotek.

Sjekk hva pakkebehandleren allerede tilbyr med apt-cache policy openvpn før du legger til noe. Hvis den installerte kandidaten oppfyller kravet, forsvinner repositoriespørsmålet.

Hva et oppstrømsrepositorium faktisk binder seg til

En oppstrømskanal publiserer bygg for bestemte grunnutgivelser, og instruksjonene dens parer en repositorielinje med en signeringsnøkkel og et støttet kodenavn. Disse delene er ikke plassholdere som skal erstattes med hvilket kodenavn du tilfeldigvis kjenner. Avhengigheter løses mot utgivelsen byggen var rettet mot, så en pakke som installeres rent kan fortsatt ødelegge ubeslektet programvare som deler et bibliotek.

Les repositorieveiledningen for implementasjonen du valgte, og følg dens gjeldende kompatibilitetstabell i stedet for en kopi fra en eldre blogg.

Å installere er ikke å integrere

Å erstatte openvpn-binæren legger ikke til en manglende NetworkManager-plugin, en importdialog eller en skrivebordseditor. De bor i separate pakker som network-manager-openvpn og skrivebordsmotstykket, og de har sitt eget versjonsforhold til klientbiblioteket. OpenVPN 3 Linux er en helt annen implementasjon, med sin egen sesjons- og konfigurasjonsmodell, så pakkene er ikke direkte erstatninger for en 2.x-profilflyt.

Bestem hvilken komponent som eier den kjørende tunnelen før du installerer noe. To behandlere på én vert gir samme dobbelttunnel-forvirring som to klienter.

Skriv ned de tre beslutningene

Registrer implementasjonen, grunnutgivelsen og oppdateringseieren, og noter hvilken av dem som forventes å endre seg. Den registreringen er det en fremtidig oppgradering leser når repositorielinjen slutter å virke etter en distribusjonsutgivelse. Uten den gjentar neste person kodenavngjetningen med et nyere nummer.

Hvis grunnutgivelsen ikke lenger støttes av kanalen du trenger, er svaret en plattformmigrering, ikke et repositorium fra tre utgivelser siden.

Relaterte artikler