Miks Access Serveri kliendid ei ole LAN-ist kättesaadavad
Marsruuditud kliendid säilitavad basseini aadressi, seega vajavad vastused tagasiteed. Lugege teenuses lähtekohta ja lisage seejärel basseini marsruut õigele lüüsile.
Sülearvuti ühendub, tunnel on püsti ja päringud sisemise teenuse vastu jäävad ühendamisel rippuma. Teenuse enda juures saabub päring aadressilt nagu 10.90.0.25, vastus lahkub vaikelüüsi poole ja midagi ei tule tagasi, sest see lüüs ei tea aimugi, kus asub 10.90.0.25. Teisest otsast näeb sama rike välja nagu sisemine host, mis ei suuda ühendatud klienti pingida. Mõlemad on üks puuduv objekt: tagasitee VPN-i kliendibasseini, mille saab lisada ainult privaatvõrk.
Lugege lähteaadressi, mida teenus näeb
See üks väli otsustab kõik muu. Kui sisemine teenus näeb basseini aadressi, siis Access Server marsruudib, mitte ei peida kliendiliiklust, ja iga vastus tuleb marsruudida tagasi basseini. Kui ta näeb hoopis serveri enda privaatset aadressi, siis server maskeerib ja vastusetee juba toimib, kuid selle hinnaks on iga kliendi identiteedi kaotamine teenuse logides ja juurdepääsureeglites.
Võrrelge mõlemat otsa enne, kui midagi muudate. Serveris loetlege tunneliliidesed ja nende aadressid; kliendis kinnitage, millist neist aadressidest see tegelikult hoiab; sisemises hostis vaadake aktiivset ühendust.
ip -br addr show
ss -tnp state established '( dport = :443 )'
ip route get 10.90.0.25Viimane käsk on see, mis katkises olukorras ebaõnnestub: see kas teatab tunneli prefiksi kättesaamatuks või, mis hullem, tagastab teie vaikelüüsi, ja nii jõuavad vastused internetti.
Ärge eeldage ühte basseini. Serveril võib olla dünaamiline vahemik pluss kasutajapõhised staatilised vasted, ja staatiline aadress võib asuda täiesti väljaspool dünaamilist prefiksit. Kui marsruudite ainult vahemikku, mida mäletate, jäävad fikseeritud aadressiga kasutajad katki ja kõik teised teatavad, et probleem on lahendatud.
Lisage marsruut sinna, kus vastus otsustatakse
Marsruut kuulub lüüsile, mida sisemine teenus juba kasutab, mitte teenusele, kui see just oma liiklust ise ei marsruudi. Suunake see Access Serveri kättesaadavale privaatsele aadressile, mis erineb kliendi hoitavast tunneli aadressist.
ip route add 10.90.0.0/24 via 10.0.1.5
ip route get 10.90.0.25Pilvevõrgus muutub sama väide marsruutimistabeli kirjeks, mille sihtmärk on instants või võrguliides, kus server töötab, ning sellel liidesel on lähte- ja sihtkoha kontroll välja lülitatud. Pange tähele, mida see kirje ei tee: marsruut ei ole juurdepääsuluba, seega turvagrupid, võrgu-ACL-id ja hosti tulemüür peavad liiklust ikkagi lubama.
Tehke see püsivaks ja hoidke basseinide suurused ausad. Kaks mittejärjestikust basseini vajavad kahte marsruuti ja konfigureeritud prefiksist välja kasvav bassein tekitab vaikselt kliente, kelle vastustel pole kuhugi minna. Kui te basseinide vahemikke kontrollite, valige kokkuvõte, mille saab korra marsruudida ja siis rahule jätta.
Edastamine ja filtrid peavad marsruudiga nõustuma
Marsruutimine on ainult pool teest. Serveril peab olema luba edastada tunneli ja privaatse liidese vahel, mis Linuxis tähendab net.ipv4.ip_forward pluss edastusahelat, mis lubab liideste paari, ja karastatud hostis tavaliselt iga suuna jaoks eraldi selget reeglit.
sysctl net.ipv4.ip_forward
nft list ruleset | grep -A5 forwardOlekupõhine filtreerimine seletab sümptomit, mis viib inimesed valele teele. Vastus olemasoleva voo sees ei vaja uut sissetulevat reeglit, seega SYN-ACK-i järel rippuv ühendus ei ole blokeeritud puuduva lubamisreegliga; see visatakse ära või marsruuditakse valesti. Hoidke see eristus alles, sest see lahutab marsruudimuudatuse tulemüürimuudatusest.
Asümmeetrilised tagasiteed on sama probleemi vaiksem versioon. Kui basseini jõuab kaks marsruuti ja vastus valib selle, mis lahkub teisest liidesest kui päring saabus, siis range pöördtee filtreerimine viskab selle ära ja voog ebaõnnestub ainult osa klientide puhul.
Marsruuditud või maskeeritud: valige teadlikult
Marsruuditud režiim säilitab kliendi basseini aadressi teenuses, mis teeb võimalikuks kliendipõhise logimise ja poliitika, ning vastutasuks vajab iga sisemine võrk, mis peab kliendile vastama, basseini marsruuti. Maskeeritud režiim kaotab selle nõude, sest vastused pöörduvad serverisse tagasi, kuid teenus ei suuda enam üht klienti teisest eristada ega saa konkreetse kliendi poole midagi algatada.
Selle käitumise muutmine töötaval serveril katkestab olemasolevad sessioonid, seega katsetage kõigepealt ühe kliendi ja ühe vooga. Kui lülitus on õige vastus, on see serveri konfiguratsiooni otsus, mitte midagi, mida mööda minna marsruutide lisamisega, mis muutuvad üleliigseks.
Kliendi taga olev alamvõrk on eraldi ülesanne
Sülearvuti enda LAN-is oleva seadmeni jõudmine ei ole sama kui sülearvuti tunneli aadressini jõudmine. See nõuab, et klient toimiks alamvõrgu lüüsina: deklareeritud kliendipoolne võrk, kliendi operatsioonisüsteemis lubatud edastamine ja marsruut selles LAN-is tagasi kliendi poole. Privaatvõrgu marsruudi lisamine sülearvuti koduseks vahemikuks ei tee seda, ja see tekitab konflikte, kui kahel kasutajal on sama kodune vahemik.
Suund on samuti poliitika küsimus. Kliendi luba avada ühendus sisemise teenusega ei anna sisemisele hostile automaatset luba avada ühendus selle kliendiga. Kontrollige serveri juurdepääsupoliitikat ja kliendi hosti tulemüüri, enne kui järeldate, et tee on katki.
Kontrollige ühe voo ja ühe püüdmisega
Tõestage tee ühe ühendusega, mitte üldise kättesaadavuse testiga. Jälgige sama voogu mõlemas otsas: teenusesse saabuv päring ja sellest lahkuv vastus.
tcpdump -ni any host 10.90.0.25 and port 443Enne parandust näitab püüdmine vastust lahkumas lüüsi poole, mis seda ei marsruudi. Pärast parandust lahkub vastus serveri poole ja voog lõpeb. Seejärel kinnitage marsruut, mida lüüs kasutaks teise kliendi aadressi jaoks, et katmata bassein ilmneks kohe, mitte nädala pärast.
Lõpetage nelja kontrolliga, mis selle sulgevad: lähteaadress teenuses vastab kavatsetud režiimile, lüüsil on marsruut igasse kasutatavasse basseini, edastamine ja filtrid lubavad mõlemat suunda ning üks päris voog läbib algusest lõpuni. Access Serveri marsruutimise KKK sõnastab sama põhimõtte paigaldatud väljaande jaoks, mille toetatud konfiguratsiooniliides võib vanematest juhenditest erineda.