OpenVPN-asiakas koko lähiverkolle OpenWrt:ssä: toimiva järjestys
Rajapinnan omistajuus, vyöhykekäytäntö, masquerade ja SSID-kohtaiset taulukot ovat neljä erillistä työtä. Tee ne järjestyksessä, niin koko reitittimen kattava tunneli lakkaa taistelemasta sinua vastaan.
Neljä itsenäistä työtä laittaa reitittimen koko lähiverkon yhden tunnelin taakse. Tunnelilaite tarvitsee omistajan, palomuurivyöhykkeen, käännöskohteen ylävirtaan ja, jos osan asiakkaista on pysyttävä VPN:n ulkopuolella, lähdeosoitteen mukaista reititystä. Tunneli, joka yhdistyy mutta jonka läpi mikään ei kulje, jää yleensä ilman yhtä näistä neljästä. Riippuvuusjärjestyksessä työskentely tarkoittaa, että lopun vika kuuluu vaiheelle, jonka juuri muutit. Jokainen alla oleva vaihe päättyy johonkin havaittavaan, ja se pitää seuraavan arvauksena.
Päätä, mikä jakaa tunnelin
Reititin, joka jakaa Wi-Fiä ja DHCP:tä, voi ajaa asiakasta itse. Se laittaa jokaisen liitetyn laitteen tunnelin taakse ilman laitekohtaista asetusta, ja se on järjestely, jota useimmat pienet kohteet haluavat. Se on myös järjestely, jonka vaikutus on laajin tunnelin pudotessa, koska kaikki laitteet menettävät tiensä kerralla. Mikään lähiverkossa ei pidä toimivaa reittiä ulos.
Toinen reititin ensimmäisen takana, joka ajaa asiakasta omalla aliverkollaan, rajaa tunnelin omiin laitteisiinsa. Se on helpompi poistaa ja helpompi selittää sille, joka sen perii. Hinta on kahden puolen välinen tavoitettavuus ilman reittiä tai portinohjausta.
Joka tapauksessa tee lähiverkon aliverkoista erilaiset. Samat alueet saavat yhden puolen näyttämään suoraan yhdistetyltä, ja syntyvä musta aukko näyttää tunteja VPN-vialta.
Anna tunnelille omistaja
Ilmoita tunneli verkkorajapinnaksi, jolla on nimi, laite eikä omaa protokollaa. Verkkojärjestelmä luo ja hallitsee silloin laitetta, ja kaikki alempi viittaa rajapintaan nimellä eikä laitteella. Juuri se antaa vyöhykkeen löytää sen.
Älä luo samaa laitetta kahteen paikkaan. Käsin tehty tunneli ilmoitetun rajapinnan vieressä tuottaa laitteen, joka on olemassa mutta ei missään vyöhykkeessä, tai sellaisen, joka katoaa uudelleenlatauksessa. Molemmat näyttävät asiakkaan vialta, eikä kumpikaan anna virhettä, joka nimeäisi todellisen syyn. Valitse deklaratiivinen polku ja poista käsin tehty.
Pidä nimi samana verkon, palomuurin ja VPN:n asetuksissa. Vyöhyke luettelee verkot nimellä, joten kirjoitusvirhe jättää tunnelin jokaisen vyöhykkeen ulkopuolelle, kun taas rajapinta itse näyttää terveeltä. Terve rajapinta ilman käytäntöä on vaikeimmin havaittava tila.
Laita se vyöhykkeeseen ja välitä sitten sinne
Palomuurivyöhyke on paikka, jossa käytäntö asuu: input, output, forward ja masquerade. Tunnelilla, joka ei ole missään vyöhykkeessä, hallitsevat oletukset, joita et valinnut, ja se on harvoin sitä, mitä reititinasikas tarvitsee. Alla olevat lohkot ilmoittavat rajapinnan, sijoittavat sen vyöhykkeeseen ja sallivat lähiverkon liikenteen siihen vyöhykkeeseen.
config interface 'vpn'
option device 'tun0'
option proto 'none'
config zone
option name 'vpn'
list network 'vpn'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
config forwarding
option src 'lan'
option dest 'vpn'
Alle 21.02:n julkaisuissa sama rajapintarivi kirjoitetaan option ifname, joten tarkista ennen liittämistä, minkä muodon asennettu laiteohjelmisto jäsentää. Välityslohko on lupa, joka ylipäätään sallii lähiverkon liikenteen käyttää tunnelia. Ilman sitä laite on ylhäällä, asiakas yhdistettynä eikä yksikään lähiverkon isäntä pääse tunneliin. Se on yleisin ilmoitus yhdistetty mutta ei internetiä reititinasikkaissa.
Masquerade VPN-vyöhykkeellä laskostaa jokaisen lähiverkon osoitteen reitittimen tunneliosoitteeseen ennen kuin paketti lähtee. Se poistaa tarpeen paluureitille aliverkkoosi toisella puolella.
Jos toinen puoli jo reitittää lähiverkkoasi, masqueraden sammuttaminen pitää lähdeosoitteet näkyvinä ja tekee asiakaskohtaiset lokit merkityksellisiksi. Valitse toinen ja kirjoita kumpi, koska kaksi valintaa tuottavat myöhemmin erilaisia tukikysymyksiä. Oletusvälityksen poistaminen lähiverkosta WAN:iin on erillinen päätös omine seurauksineen. Poista se, niin reitittimen oma internetyhteys lähtee mukana.
Nimeä todellinen ylävirta NAT:issa
Laiteohjelmistossa, jossa käännössääntö on käsin kirjoitettu, väärä kenttä on lähtevä rajapinta. Sääntö, joka nimeää vlan2, ei tee mitään, kun istunto päättyy ppp0:een. Sääntö ilman rajapintaa voi kääntää liikennettä, jonka olisi pitänyt pysyä yksityisenä. Kumpikaan virhe ei ilmoita itsestään, koska tunneli jatkaa toimintaansa.
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
Korvaa säännön ppp0 rajapinnalla komennosta ip route tai käynnissä olevien rajapintojen luettelosta ja seuraa sitten laskuria, kun lähiverkon isäntä lataa sivua. Yhden operaattorin reitittimessä yksi masquerade-sääntö ylävirralle riittää yleensä. Toinen sääntö tunnelin rajapinnalle ei korvaa ensimmäistä.
Lisää sitten asiakasasetukset, jotka päättävät, mitä tunneliin menee. redirect-gateway-direktiivi lähettää asiakkaan internetliikenteen VPN:n läpi, ja ilman sitä tunneli kantaa vain ne reitit, joita palvelin työntää. Tarkista syntyvä reititystaulu ennen kuin kosket DNS:ään.
Jaa Wi-Fi toisella taululla
Yksi reititystaulu ei mahduta kahta oletusta. Siksi toinen SSID, jonka on ohitettava tunneli, tarvitsee oman aliverkon ja oman taulunsa. Anna tunneloidulle SSID:lle oma alue ja reititä sitten vain se alue tunneliin säännöllä, joka valitsee taulun.
OpenWrt:n käytäntöpohjaisen reitityksen paketit ilmaisevat juuri tämän yhdistelmän. Käsin sekin onnistuu: lähdesääntö ja taulu, jonka oletus osoittaa tunnelilaitteeseen.
Tarkista jako molemmista verkoista. Tunneloidun SSID:n asiakkaan pitäisi näyttää VPN:n ulostuloosoite ja tavallisen SSID:n asiakkaan operaattorin osoite. Kun molemmat näyttävät samalta, sääntö osuu väärään lähteeseen tai taulua ei koskaan kysytä. Testaa myös uudelleenyhdistämisen jälkeen, koska rajapinnan nimestä riippuva sääntö hajoaa, kun laite numeroidaan uudelleen.
Epäile kelloa ja laitteen lippua
Lippu persist-tun jättää tunnelilaitteen paikoilleen uudelleenkäynnistysten yli. Se sopii palvelimelle ja hämmentää asiakasta, jonka tila pitäisi rakentaa alusta. Poista se reititinasikkaan vianetsinnän ajaksi, koska epäonnistuneesta neuvottelusta selviävä laite kätkee, mikä vaihe todella hajosi. Laita se takaisin, kun asiakas yhdistyy luotettavasti, ja ei ennen.
Kello on toinen hiljainen vika. Reititin ilman paristokäyttöistä kelloa alkaa epookista, mikä tarkoittaa, että varmennekontrollit epäonnistuvat, kunnes NTP ehtii mukaan. Vertaa lokin aikaleimoja todelliseen aikaan ennen kuin kosket varmenteeseen, koska minuutti käynnistyksen jälkeen yhdistyvä asiakas odottaa yleensä ajan synkronointia.