Yksi OpenVPN-keskitin, kolme LAN-verkkoa: osoitesuunnitelma ja iroute-tiedostot
Neljä erillistä etuliitettä, yksi ydinreitti haaraa kohti, yksi iroute omistajaa kohti. Työjärjestys kolmen toimipaikan keskitimelle, joka epäonnistuu hiljaa, kun nimi on väärä.
Kolme yksityistä LAN-verkkoa voi kohdata yhdessä keskitimessä ilman, että mikään toimipaikka oppii toisten sisäisyyksiä, ja koko suunnittelu lepää neljän lyhyen kokoonpanopäätöksen varassa. Sen toimivaksi tekee eksoottisen protokollaominaisuuden sijaan osoitesuunnitelma, jota kenenkään ei tarvitse arvata, sekä asiakaskohtaiset reitit, jotka kertovat keskitimelle, mikä haara omistaa minkä etuliitteen. Erehdy kummassa tahansa ja tunneli nousee silti, ja juuri se tekee vikaantumisesta hämmentävän.
Käy vaiheet järjestyksessä läpi. Jokainen riippuu edellisen vaiheen suunnitelmasta, eikä mikään vaadi uutta varmentajaa.
Aloita suunnitelmasta, jota kenenkään ei tarvitse arvata
Kirjoita neljä toisiaan leikkaamatonta etuliitettä muistiin ennen kuin kosket kokoonpanotiedostoon: keskitimen oma LAN, kunkin haaran LAN ja vaeltaville asiakkaille annettava pooli. Leikkaamattomuus pitää kaiken muun yksinkertaisena, koska päällekkäiset alueet muuttavat reitityksen pisimmän osuman arvoitukseksi, jota mikään asiakaskohtainen kokoonpano ei korjaa. Vahvista sitten, mikä kone on kunkin LAN-verkon oletusyhdyskäytävä, koska haaran reititin, joka ei ole oman LAN-verkkonsa yhdyskäytävä, tarvitsee etäreitit asennettuina aivan muualle. Lukitse lopuksi todentamiseen perustuvat nimet, jotka tunnistavat kunkin haaran, koska juuri noilla nimillä asiakaskohtaiset tiedostot haetaan.
Havainnollistava suunnitelma pitää poolin kaukana kolmesta LAN-verkosta. Sinun suunnitelmasi on erilainen, ja ainoa kova sääntö on, ettei kaksi aluetta saa mennä päällekkäin.
Hub LAN 172.20.0.0/24
Branch A LAN 172.21.0.0/24
Branch B LAN 172.22.0.0/24
VPN pool 10.77.0.0/24
identity branch-a owns 172.21.0.0/24
identity branch-b owns 172.22.0.0/24Kerro keskitimen ytimelle, missä haarat ovat
Keskitin tarvitsee kaksi tietoa haaralta: ydinreitin, joka lähettää etuliitteen tunnelilaitteeseen, ja iroute merkinnän, joka kertoo OpenVPN prosessille, mikä asiakas sen omistaa. Pelkkä ydinreitti vie paketit tunneliin ja pysähtyy siihen, koska daemonin on vielä päätettävä, mikä vastapuoli ne saa. Pelkkä iroute merkintä jättää ne paketit ytimeen ilman reittiä, jota seurata. Molemmat rivit kuuluvat kokoonpanoon, jonka daemon todella lataa, ja se kannattaa varmistaa ennen kuin vianetsii mitään muuta.
dev tun
topology subnet
server 10.77.0.0 255.255.255.0
disable-dco
route 172.21.0.0 255.255.255.0
push "route 172.20.0.0 255.255.255.0"
client-config-dir /etc/openvpn/ccd
route 172.22.0.0 255.255.255.0Kytke asiakas-asiakas pois, kun ytimen on tarkoitus olla valvontapiste. Se valinta välittää vastapuolten liikennettä daemonin sisällä, mikä on kätevää ja tarkoittaa myös, etteivät edelleenlähetyssäännöt näe virtaa koskaan. Kaikki alla olettaa, että ydin näkee jokaisen paketin haarojen välillä.
Anna kullekin haaralle sen tarvitsemat reitit
Kukin haara tarvitsee reitit muihin haaroihin ja keskitimen LAN-verkkoon, eikä se tarvitse reittiä omaan liitettyyn LAN-verkkoonsa. Työnnä etäetuliitteet keskitimestä sen sijaan, että liittäisit ne jokaiseen reitittimeen, jolloin neljäs toimipaikka myöhemmin tarkoittaa yhtä uutta asiakaskohtaista tiedostoa neljän muokkauksen sijaan. Asiakaskohtainen tiedosto sisältää myös rivin iroute, joka pitää omistajuuden ja ilmoituksen samassa paikassa. Tee hakemistosta ja sen tiedostoista luettavia palvelimen oikeusmallin mukaan, tai haku epäonnistuu ilman viestiä.
# /etc/openvpn/ccd/branch-a
iroute 172.21.0.0 255.255.255.0
push "route 172.22.0.0 255.255.255.0"Neljäs toimipaikka noudattaa samaa kaavaa: erillinen todennettu nimi, omistettu etuliite, ydinreitti keskitimessä, iroute merkintä ja ilmoitukset vain niille toimipaikoille, joilla on lupa tavoittaa se.
Testaa molempiin suuntiin ennen kuin kutsut sitä valmiiksi
Ota IPv4-edelleenlähetys käyttöön kaikilla kolmella reitittimellä ja vahvista sitten, että palomuuri sallii aiotut virrat molempiin suuntiin, koska yksisuuntainen testi menee läpi rikkinäisellä paluupolulla useammin kuin kukaan odottaa. Toimipaikkojen välillä ei tarvita lähdeosoitteen muunnosta, ja juuri alkuperäisen lähteen säilyttäminen antaa kullekin haaralle mahdollisuuden soveltaa omaa käytäntöään pyyntöön.
Testaa yhden haaran LAN-verkon isännästä toisen palveluun, käännä sitten suunta ja testaa lopuksi haarasta keskitimen LAN-verkkoon. Nämä kolme tulosta ovat eri todisteita, eikä mikään niistä edellytä muita. Jos haaran reititin ei ole oman LAN-verkkonsa oletusyhdyskäytävä, asenna etäetuliitteet todelliseen yhdyskäytävään ja sisällytä myös pooli, kun tunneliasiakkaiden on aloitettava yhteyksiä kyseiseen LAN-verkkoon.
Kirjaa suunnitelma, asiakaskohtaiset tiedostot ja palomuurisäännöt yhdeksi asiakirjaksi, koska seuraavaa toimipaikan lisäystä arvioidaan niitä vasten.
Suunnittelu pysyy koossa, koska jokaisella kerroksella on yksi tehtävä: suunnitelma pitää etuliitteet ainutlaatuisina, ydinreitti siirtää paketteja, iroute nimeää omistajan ja palomuuri päättää, mikä on sallittua. Kun jotain hajoaa, tuo luettelo on myös se järjestys, jossa sitä tarkistetaan.