To oppstraumslenkjer, éin tunnel, og trafikken går ut gjennom den du ikkje valde. Dei private subneta er tilgjengelege, loggen rapporterer ei vellukka tilkopling, og det er den målte linja som ber henne. Ingenting i OpenVPN-utdata nemner ein port, fordi klienten aldri valde ein. Han opna ein sockel mot ei ekstern adresse og lét kjernen avgjere korleis adressa blir nådd.

Tunneladressa er ikkje endepunktet

Det finst to ulike vegar i kvar økt. Den ytre vegen ber den krypterte transporten til den offentlege adressa til tenaren. Den indre vegen ber alt tenaren skyv inn i tunnelen, og ruterreglar for den eine påverkar ikkje den andre.

remote-oppføringa i profilen nemner den ytre destinasjonen, så det er adressa som må festast. Det er også verdien som endrar seg når eit vertsnamn blir løyst ut annleis, eller profilen listar fleire remote-oppføringar.

Finn adressa klienten faktisk ringde

Les den levande sockelen i staden for konfigurasjonsfila. Sockeltabellen viser peeren prosessen faktisk kopla til, og det er verdien ein unntaksregel må treffe. Ein profil kan redigerast etter at økta har starta, og sockelen er det einaste beviset på kva som vart ringt:

ss -tunp | grep -i openvpn
journalctl -u openvpn-client@work --no-pager | grep -i "Peer Connection Initiated"

Logglinja nemner peer-adressa og porten på tilkoplingspunktet. Viss ho er usamd med profilen, skriv noko framfor klienten om destinasjonen før tilkoplinga startar.

Sjekk adressefamilien òg. Ein dual-stack-profil kan kopla til over IPv6 medan unntaket ditt berre dekkjer IPv4, og då følgjer trafikken ein annan regel enn den du skreiv. Det same gjeld ein proxy som svarar på vegner av endepunktet. Begge tilfella gir ein tunnel som verkar medan ruta di ikkje gjer noko.

Fest endepunktet og les policyrekkjefølgja

Ei vertsrute er meir spesifikk enn kvar standardrute. Derfor vinn ein /32 for peer-adressa inne i tabellen som inneheld henne. Den vanlege forma nemner porten og eininga eksplisitt:

ip route add 203.0.113.40/32 via 192.168.10.1 dev eth0

Den ruta hjelper berre viss oppslaget når den tabellen. Policyreglar blir vurderte i rekkjefølgje, og det første treffet avgjer, så ein regel som sender alt til ein andre tabell, omgår vertsruta di i main. Les reglane før du går ut frå at ruta er autoritativ:

ip rule show
ip route get 203.0.113.40

Spør det andre kommandoen med same kjeldeadresse eller merke som klienten brukar når policyen avheng av dei. Det rapporterer ruta kjernen ville valt, noko som er bevis om oppslaget og ikkje bevis for at den levande sockelen brukar den vegen.

Når endepunktet flyttar seg

Eit vertsnamn som blir løyst ut til fleire adresser gjer ei permanent /32 ugyldig så snart svaret endrar seg. Ein profil med fleire remote-linjer har same problemet, fordi klienten kan lande på kva som helst av dei. Oppdater ruta frå klienten sine eigne livssykluskrokar i staden for å leggje henne til manuelt. Eit up-skript som les den forhandla peeren og installerer vertsruta, held unntaket i samsvar med røynda, og eit samsvarande down-skript fjernar henne.

Registrer oppdateringa på same stad som resten av ruteringskonfigurasjonen til verten. Ei rute som berre finst til neste omstart, er ein test, ikkje ei retting.

Hald den indre policyen skild

Å flytte den ytre vegen gir ikkje tilgang til eit nytt privat subnett, og det endrar ikkje kva destinasjonar tenaren skyv inn i tunnelen. Ruta på det nedre laget vel leidninga; dei skyvde rutene vel kva som kjem inn i tunnelen. Å halde desse to avgjerdene skilde er det som gjer delinga føreseieleg.

Viss målet berre er å halde den krypterte transporten unna ei målt linje, lat standardruta vere og legg til det eine vertsunntaket. Å byte ut standardruta til heile maskina for å flytte éi VPN-tilkopling øydelegg alle andre program på verten.

Stadfest resultatet med to uavhengige observasjonar: den lokale adressa og eininga til sockelen, og ruta den private destinasjonen blir løyst ut til. Når begge stemmer med intensjonen din, er delinga reell. OpenVPN 2.6-handboka dekkjer remote- og lokal bindingsval som avgjer kva adresse klienten ringar.

Relaterte artiklar