Du trenger VPN-klienten for å nå nettverket som normalt leverer pakkene dens, og det er en fin liten sirkel. Å laste ned én OpenVPN-DEB på en annen maskin ender vanligvis med en ny manglende avhengighet, så en tredje, og så en hel kveld med å jage bibliotekversjoner. Alternativet er å la den frakoblede maskinen si, på sine egne premisser, hva pakkebehandleren dens trenger. Alt nedenfor følger av at det er den som blir spurt.

For systemer i Debian-familien skjer den samtalen gjennom apt-offline, en arbeidsflyt med forespørsel og retur. Kjøretidsmiljøet må finnes på målet først, installert fra godkjent medie eller en annen bootstrap som administratoren styrer, fordi ingen verktøy kan starte seg selv fra ingenting.

Start med målets pakketilstand, ikke hjelperens

Registrer målets distribusjonsutgave, brukerromsarkitektur og konfigurerte pakkekilder før noe annet. De tre fakta avgjør hvilken VPN-implementasjon og hvilken skrivebordsintegrasjon som passer, og de er fakta en tilkoblet hjelper ikke kan levere.

Hjelperen laster ned filer; den blir ikke avhengighetsgrunnlaget. En nyere bærbar maskin som allerede har OpenVPN installert, har en helt annen pakketilstand enn målet, så suksessen sier ingenting om hva målet kan godta.

Bestem også hva du faktisk vil ha. VPN-motoren, en NetworkManager-tjenesteplugin og en grafisk editor er separate pakker, og det riktige valget avhenger av utgivelsen og av hvordan brukeren vil administrere tilkoblingen. En hodeløs server trenger motoren og en konfigurasjonsfil; et skrivebord trenger plugin-modulen som lar nettverksinnstillingene eie tunnelen. Å be om feil sett gir en installasjon som lykkes og en tilkobling ingen kan starte.

To turer fram og tilbake, i denne rekkefølgen

Håndboken skiller tre operasjoner: lag en forespørsel på det frakoblede systemet, last ned på en tilkoblet hjelper, importer tilbake på målet. Oppdater mållets repositoriemetadata før du ber om pakker, fordi pakkeforespørselen bygges fra den metadataen, og gamle indekser gir forespørsler hjelperen ikke kan oppfylle.

På målet skriver en administratorkommando i formen apt-offline set vpn-meta.sig --update oppdateringsforespørselen. Ta filen med til den tilkoblede maskinen og last ned en bunt med apt-offline get vpn-meta.sig --bundle vpn-meta.zip. Ta bunten tilbake og importer den på målet med apt-offline install vpn-meta.zip, igjen som administrator.

Lag nå pakkeforespørselen fra oppdatert metadata, for eksempel apt-offline set vpn-deps.sig --install-packages openvpn, og gjenta turen med et nytt buntenavn. Hold hver forespørsel sammen med bunten den produserte; en bunt laget mot eldre metadata er ikke den samme forespørselen, selv når filnavnene ser ut til å kunne byttes om.

Legg til integrasjonspakkene bare når designet trenger dem

Hvis skrivebordet skal administrere tunnelen gjennom nettverksinnstillingene, trenger forespørselen den matchende plugin-modulen i tillegg til motoren. Ta med de konkrete pakkenavnene utgivelsen din tilbyr i stedet for en liste du husker fra en annen distribusjon, og lag en ny forespørsel hver gang listen endres. Versjonsfastlåsing fortjener også en tanke: en pakke bygget for en nyere utgivelse kan oppfylle navnet og likevel feile under kjøring. Det er her et fast sett på fire pakker blir en belastning, fordi den riktige listen er en egenskap ved målet, og bare målet kan regne den ut.

Det er også her et fast sett på fire pakker blir en belastning. Den riktige listen er en egenskap ved målet, og målet er den eneste maskinen som kan regne den ut riktig.

Å importere en bunt er ikke å installere VPN-en

Til tross for navnet legger installasjonsoperasjonen APT-data inn i pakkeadministrasjonsmiljøet. Den utfører ikke pakketransaksjonen. Fullfør og gjennomgå mållets faktiske APT-installasjon fra dataene som er levert lokalt, og les utdataene i stedet for å anta at ZIP-ens suksess betyr at programvaren er der.

Hvis den transaksjonen fortsatt ber om utilgjengelige filer, ta vare på den konkrete manglende avhengigheten eller repositoriefeilen og lag den neste forespørselen fra den. Ikke bytt inn en DEB fra en annen utgivelse, og ikke slå av sjekksum- eller repositorieautentisering for å tvinge den gjennom. Håndboken advarer eksplisitt mot å hoppe over verifisering av nedlastede filer, og med god grunn: en uverifisert pakke er et verre utfall enn en mislykket installasjon.

Pakkene er bare første halvdel

Å installere programvare er atskilt fra å skaffe det godkjente endepunktet, profilen, tillitsmaterialet og påloggingsinformasjonen, som hver kan ha sin egen kontrollerte overlevering. Et fungerende pakkesett uten en gyldig profil kobler til ingenting.

Hold deretter den frakoblede overføringsveien i live for framtidige oppdateringer. Å behandle den første vellykkede tilkoblingen som slutten på vedlikeholdet betyr at den neste sikkerhetsoppdateringen venter til noen med bil kan komme innom, og det er slik et frakoblet nettverk stille havner år bak.

Relaterte artikler