Eng Admin-Säit äntwert vun engem Telefon iwwer mobil Daten a leeft vun engem Laptop, dee mam VPN verbonnen ass, an eng Zäitiwwerschreidung. Um Tunnel ass näischt futti, well d'Ufro ni era kënnt. Den Hostnumm gëtt op d'ëffentlech Adress vum Gateway opgeléist, an déi Adress ass just vun ausserhalb vum Tunnel erreechbar, deen en ofschléisst. Dat ze flécken heescht dem Service en private Agang ze ginn, amplaz de baussenzege Endpunkt ze verréckelen.

D'Säit lued vun baussen an net duerch den Tunnel

Et gi souguer zwee verschidde Ufroe verglach. Iwwer mobil Daten erreecht de Browser d'ëffentlech Adress direkt. Vun bannen aus dem Tunnel gëtt deen selwechten Numm op déi selwecht ëffentlech Adress opgeléist, an de Paket muss elo duerch den Tunnel eraus, fir eng Adress op der eege wäiter Säit vum Tunnel z'erreechen. Dee selwechten Numm, déi selwecht Adress, zwee ganz verschidde Positiounen.

Eng Destinatiounsroute wielt eng Adress, keen Port. Naischt an der Routingtabelle weess, datt den Port 443 fir d'Administratioun ass an den Port 1194 den Transport, dofir ginn déi zwee als déiselwecht Destinatioun behandelt.

Dofir fonctionnéiert d'Säit heiansdo an heiansdo net, jee nodeem wéi en Numm a wéi e Reseau de Client benotzt huet. Et ass e Probleem vum Wee an net e Problem vun der Authentifikatioun. Béid Cliente authentifizéiere sech ganz gutt.

Halt de baussenzegen Endpunkt erreechbar

Volltunnelprofiler brauchen eng Ausnamroute fir den VPN-Endpunkt, an d'Optioun redirect-gateway vum OpenVPN dokumentéiert genee dat: den entfernten Endpunkt behält eng Route iwwer dee virdru bestännege Gateway, sou datt den Tunnel net a sech selwer rout. Huelt déi Ausnam ewech an den verschlësselten Transport follegt dem Tunnel, wat d'Sessioun an enger Loop ophält. Genau déi Ausnam ass de Grond, firwat d'Adress vum Endpunkt vun bannen aus dem Tunnel erreechbar bleift.

D'Konsequenz ass, datt d'ëffentlech Adress vum Client aus erreechbar bleift, an dofir kann eng Browserufro op déi Adress déiselwecht Ausnam befollegen an erausgoen, ouni an den Tunnel ze kommen. D'Ausnam mécht seng Aarbecht, an den Numm mécht de Schued.

Liest d'Routeentscheedung amplaz vun der Interfacelëscht, ier Dir eppes ännert. D'Befehl hei drënner drécken d'Entscheedung amplaz vum Inventaire. Fëllt se vum Client aus, dee versot huet.

ip -4 route get 203.0.113.77
ip -4 rule show
ip -4 route show table all

Wann d'Fuerschung d'Route vum Endpunkt iwwer de physesche Gateway weist, ass d'Verhalen richteg an d'Admin-Säit gëtt just op de falsche Wee geschéckt. Do gëtt d'Nummopseisung zum Fix.

Gitt dem Service en privaten Numm

De Service brauch en Numm, dee sech bannen am Tunnel op d'Adress vum Gateway opseist, an gläichzäiteg d'Semantik vum Zertifikat an dem Hostnumm behält, déi d'Applikatioun erwaart. En private Zonerecord fir den Administratiounsnumm ass déi gewéinlech Äntwert, an en léisst den Transportnumm onberéiert.

Richt den Transportnumm net op déi banneschten Adress ëm, well de nächsten Tunnelopbau da probéiere géif, eng Adress z'erreechen, déi just bannen an engem Tunnel existéiert. Dee Feeler ergëtt e VPN, dee genee eemol fonctionnéiert.

Kuckt och béid Adressfamilljen, well en AAAA-Record, deen zeréckbleift, de Browser dohinner schécke kann, wou de private Plang ni gereecht huet.

dig +short admin.hq.internal
dig +short -t AAAA admin.hq.internal
curl -sS -o /dev/null -w '%{http_code} %{remote_ip}\n' https://admin.hq.internal/

Passt d'Politik un, wou de Prozess leeft

En native Prozess, deen um Gateway lauschtert, gëtt iwwer de lokalen Inputwee erreecht, dofir entscheeden d'Inputkette an d'Socketbindung, ob d'Ufro ugeholl gëtt. Weiderleedungsregelen an IP-Weiderleedung bréngen e lokalen Nolauschterer net dozou, ze äntweren. Erlaabt d'Quellen vum Tunnel an der Inputpolitik a bestätegt, datt de Prozess un eng Adress gebonnen ass, déi den Tunnel erreeche kann.

En Container, deen op engem Hostport verëffentlecht ass, follegt engem anere Wee, well de Paket op d'Destinatioun iwwersat an weidergeleet gëtt. Déi Ufro begéint der Weiderleedungspolitik vum Host an den eegene Regele vum Docker, dofir kann en funktionéierenden nativen Nolauschterer niewent engem Container existéieren, dee selwechte Port refuséiert.

D'Startreihenfolg ass a béide Fäll wichteg, well eng Bindung un eng Adress, déi just erschéngt, nodeem den Tunnel eropgeet, beim Boote stëll versot.

Kuckt de private Zougang an e refuséierte ëffentleche Wee

Maacht eng frësch benannte Ufro vun engem autoriséierte Client, mat den eegene Identitéitskontrollen vun der Applikatioun intakt. Probéiert duerno dee selwechte Service vun ausserhalb vum Tunnel a bestätegt, datt en net äntwert. En privaten Numm ass eng Bequemlechkeet an net eng Restriktioun, an en Nolauschterer, deen nach un d'ëffentlech Adress gebonnen ass, ass nach ëmmer ausgesat. Genau déi lescht Kontroll iwwersprangen déi meeschte Revisiounen.

Liest d'Bindungen an de Filterzoustand amplaz vum Hostnumm, deen d'Benotzer kritt hunn. D'Ausgesat sinn ass eng Eegeschaft vum Socket an net vum Numm. Dee Ënnerscheed iwwerlieft all DNS-Ännerung.

ss -lntp | grep ':443'
nft list ruleset | grep -n 443
curl -sS -m 5 -o /dev/null -w '%{http_code}\n' https://203.0.113.77/

Wann déi bannescht Ufro d'Säit zréckgëtt an déi baussenzeg Ufro an eng Zäitiwwerschreidung leeft, huet de Service ee bewosst private Wee an den Transport bleift erreechbar. Wann déi baussenzeg Ufro nach äntwert, muss den Nolauschterer oder en verëffentlechte Containeragang ageengt ginn, ier een de Service als just intern beschreift.

Ähnlech Artikelen