Pi VPN-tenar: start med appen på telefonen, ikkje med oppskrifta
Appen på telefonen fastset protokollen, utvekslinga og profilformatet. Skriv ned den firedelte avtalen før du installerer noko på Pi-en.
Dei fleste Pi VPN-oppsett byrjar med serveroppskrifta og endar med ein telefon som ikkje får kopla til. Rekkjefølgja er motsett. Ein telefonklient implementerer ein bestemd protokoll med ei bestemd autentiseringsutveksling, og tenaren må samsvare med den utvekslinga, ikkje omvendt. Vel du appen først, vert ein heil ettermiddag med feilsøking til ei kort sjekkliste.
Rekkjefølgja som sparar gjenoppbygginga
Skriv ned operativsystemet på telefonen og den nøyaktige VPN-appen før du installerer noko på Pi-en. Det paret avgjer kva protokoll som i det heile er mogleg. Ein klientapp vert ikkje ein annan klient berre fordi ein profil tilfeldigvis inneheld eit kjent felt.
Ei delt løyndom i ein profil, eller eit portnummer som ser kjent ut, gjer ikkje ein protokoll til ein annan. Utvekslinga samsvarar anten med det appen implementerer, eller ho feilar i ein fase som gjev deg svært lite å lese. Det finst ingen diagnostikk som seier "feil protokoll" med enkle ord. Du får eit tidsavbrot, ein sertifikatfeil eller ei stille gjentakingsløkke, og alt dette ser ut som eit tenarproblem.
Når appen er låst, vert tenarvalet smalare, og resten av oppsettet har eit mål.
Kva telefonappen faktisk implementerer
Ei publisert klientliste skildrar ein applikasjon, ikkje ei teneste. Appen OpenVPN Connect for Android ventar ein OpenVPN-tenar; han leverer ikkje tenarsida. Han vert heller ikkje ein IPsec- eller L2TP-klient når ein profil ser lik ut.
Den skilnaden tyder mest når du følgjer ei eldre rettleiing. Oppskrifter skrivne for ein protokoll som den noverande appen har forlate, vert framleis installerte reint på Pi-en og feilar framleis på telefonen, noko som vert lese som ein konfigurasjonsfeil og ikkje som eit protokollavvik.
Sjekk gjeldande dokumentasjon for appen for kva profilformat han importerer før du bind deg til ein tenarpakke. Fem minutt lesing slår ei gjenoppbygging.
Den firedelte avtalen
Skriv ned fire ting og hald dei saman: operativsystemet og appversjonen på telefonen, tenarimplementasjonen på Pi-en, autentiserings- og tillitspolicyen og det eksterne endepunktet. Kvar av dei fire kan gjere dei andre tre ugyldige.
Ein appoppdatering, eit byte av tenarpakke eller ein ny sertifiseringsinstans bryt avtalen, og feilen ser lik ut frå telefonen kvar gong. Det er dei fire nedskrivne punkta som gjer det mogleg å identifisere kva del som flytta seg.
Påloggingsdetaljar har eigne jobbar
Avgjer om profilen brukar klient-sertifikat, brukarnamn og passord eller ein støtta kombinasjon, og få begge endar til å stemme. Identiteten til tenaren og det betrygde CA-materialet må òg samsvare med det klienten godtek.
Det offentlege sertifikatet til CA-en og den private signeringsnøkkelen hans er ulike objekt. Berre den offentlege delen høyrer heime i ein telefonprofil. Legg du signeringsnøkkelen på ein telefon, gjev du bort evna til å lage identitetar, noko som er det motsette av det ein CA er til for. Handsame fila som det mest kjenslevare objektet i heile oppsettet.
Bruk den støtta eksport- og importflyten til tenesta i staden for å setje saman ein profil for hand. Handbygde profilar har vanlegvis direktiv berre for skrivebordet, som mobilappen ignorerer eller avviser.
Framfor alt: ikkje erstatt sertifikatvalidering med "godta kvar ein tenar" for å få eit gammalt døme til å kopla til. Det gjer eit kompatibilitetsproblem om til ein omgang av autentisering, og det overlever ofte til produksjon fordi det verkar.
Tilgjenge er ein eigen kontrakt
Telefonen må nå det eksterne endepunktet til tenaren gjennom den verkelege oppstraumsordninga. Omsetjinga til heimerutaren, filtrering og NAT-en til mobiloperatøren ligg alle imellom. Eit dynamisk DNS-namn gjev berre endepunktet eit stabilt namn; det skapar ikkje ein innkomande veg.
Definer deretter kva klienten kan nå etter tilkopling: private prefiks eller ein full internettutgang, videresendings- og svarvegane deira, DNS-åtferd, og om IPv6 er innanfor omfanget. Ei vellukka innlogging prova ingen av desse.
Godta den tiltenkte telefonen og profilen direkte, inkludert ein sjekk av at ein uautorisert ressurs held seg utilgjengeleg og at tilbakekalling faktisk fjernar tilgang. Suksess med ein skrivebordsklient stadfester den skrivebordsklienten, ikkje telefonen i handa di. Lista over OpenVPN Connect er eit konkret døme på ein klientapplikasjon som ventar ei samsvarande teneste.