Pi VPN server: krenite od aplikacije na telefonu, a ne od recepta
Aplikacija na telefonu određuje protokol, razmenu i format profila. Zabeležite četvorodelni sporazum pre nego što bilo šta instalirate na Pi.
Većina Pi VPN instalacija počinje receptom za server i završava telefonom koji ne može da se poveže. Redosled je obrnut. Klijent na telefonu implementira određeni protokol sa određenom autentifikacionom razmenom, a server mora da se prilagodi toj razmeni, a ne obrnuto. Ako prvo odaberete aplikaciju, celo popodne otklanjanja grešaka pretvara se u kratku kontrolnu listu.
Redosled koji štedi ponovnu izgradnju
Zabeležite operativni sistem telefona i tačnu VPN aplikaciju pre nego što bilo šta instalirate na Pi. Taj par određuje koji je protokol uopšte moguć. Klijentska aplikacija ne postaje drugi klijent samo zato što profil slučajno sadrži poznato polje.
Zajednička tajna u profilu ili poznat broj porta ne pretvara jedan protokol u drugi. Razmena ili odgovara onome što aplikacija implementira, ili pada u fazi koja vam daje vrlo malo za čitanje. Ne postoji dijagnostika koja običnim rečima kaže "pogrešan protokol". Dobijate istek vremena, grešku sertifikata ili tihu petlju ponovnog pokušaja, a sve to izgleda kao problem sa serverom.
Kada je aplikacija fiksirana, izbor servera se sužava i ostatak instalacije ima cilj.
Šta aplikacija na telefonu zapravo implementira
Objavljeni spisak klijenata opisuje aplikaciju, a ne uslugu. Aplikacija OpenVPN Connect za Android očekuje OpenVPN server; ona ne pruža serversku stranu. Takođe ne postaje IPsec ili L2TP klijent kada profil izgleda slično.
Ta razlika je najvažnija kada sledite stariji vodič. Recepti napisani za protokol koji je trenutna aplikacija napustila i dalje će se čisto instalirati na Pi i i dalje neće raditi na telefonu, što izgleda kao greška u konfiguraciji, a ne kao neusklađenost protokola.
Proverite trenutnu dokumentaciju aplikacije za formate profila koje uvozi pre nego što se obavežete na serverski paket. Pet minuta čitanja bolje je od ponovne izgradnje.
Četvorodelni sporazum
Zabeležite četiri stvari i držite ih zajedno: operativni sistem telefona i verziju aplikacije, implementaciju servera na Pi, politiku autentifikacije i poverenja i spoljnu krajnju tačku. Svaka od četiri može poništiti ostale tri.
Nadogradnja aplikacije, promena serverskog paketa ili novo telo za izdavanje sertifikata ruše sporazum, a neuspeh sa telefona svaki put izgleda isto. Upravo zapisane četiri stavke omogućavaju vam da utvrdite koji se deo pomerio.
Podaci za prijavu imaju odvojene zadatke
Odlučite da li profil koristi klijentske sertifikate, korisničko ime i lozinku ili podržanu kombinaciju, i uskladite oba kraja. Identitet servera i materijal pouzdanog CA takođe moraju da odgovaraju onome što će klijent prihvatiti.
Javni sertifikat CA i njegov privatni ključ za potpisivanje su različiti objekti. U profil telefona pripada samo javni deo. Ako ključ za potpisivanje stavite na telefon, dajete mogućnost stvaranja identiteta, što je suprotno svrsi CA. Tretirajte tu datoteku kao najosetljiviji objekat u celoj instalaciji.
Koristite podržani tok izvoza i uvoza usluge umesto ručnog sastavljanja profila. Ručno izgrađeni profili obično nose direktive samo za stolne računare koje mobilna aplikacija ignoriše ili odbija.
Iznad svega, ne zamenjujte proveru sertifikata opcijom "prihvati bilo koji server" da biste stari primer povezali. To pretvara problem kompatibilnosti u zaobilaženje autentifikacije i obično preživi do produkcije jer funkcioniše.
Dostupnost je odvojen ugovor
Telefon mora da dođe do spoljne krajnje tačke servera kroz stvarni raspored uzvodno. Prevod na kućnom ruteru, filtriranje i NAT operatera sve stoje između njih. Dinamičko DNS ime krajnjoj tački daje samo stabilno ime; ono ne stvara ulazni put.
Zatim odredite šta klijent sme da dosegne nakon povezivanja: privatne prefikse ili puni izlaz na internet, njihove putanje prosleđivanja i odgovora, ponašanje DNS-a i da li je IPv6 u obuhvatu. Uspešna prijava ne dokazuje ništa od toga.
Prihvatite namenjeni telefon i profil izravno, uključujući proveru da neovlašćeni resurs ostaje nedostupan i da opoziv stvarno uklanja pristup. Uspeh sa stonim klijentom potvrđuje taj stoni klijent, a ne telefon u vašoj ruci. Spisak OpenVPN Connect konkretan je primer klijentske aplikacije koja očekuje odgovarajuću uslugu.