Pakete kënnen enger OpenVPN-Route follegen an trotzdem vun enger IPsec-Politik erfaasst ginn, an déi Kombinatioun gesäit aus all Bléckwinkel wéi e Routingfeeler aus, ausser aus dem richtegen. Linux léist eng Route op a konsultéiert duerno eng separat Dateschank vun de Sécherheetspolitiken, sou datt eng méi spezifesch Destinatiounsroute eng passend XFRM-Politik net verdrängt. De siichtbare Symptom ass Verkéier, deen den Host verléisst an ni ukënnt, wärend sech béid Tunnelen als gesond mellen. Dräi Optiounen léisen dat, a wéi eng Dir wielt hänkt dovun of, wéi eng vun den zwou Weeër dee Prefix droe soll.

Zwou Decisiounen, net eng

D’Routeselektioun beäntwert eng enk Fro: wéi ee nächsten Hop an wéi eng Quelladress dëse Paket droe sollen. D’Dateschank vun de Sécherheetspolitike beäntwert eng aner: brauch dëse Paket IPsec-Schutz, a ënner wéi engen Selektoren. Béid lafen fir dee selwechte Paket, an déi éischt erfëllen seet näischt iwwer déi zweet. Dofir kann eng geännert Metrik oder eng zousätzlech statesch Route de Symptom onberéiert loossen.

E breede IPsec-Selektor ass déi üblech Ursaach. Eng Politik, déi 172.16.0.0/12 schützt, deckt och 172.20.8.0/24 of, wou en Administrateur vläicht léiwer duerch den OpenVPN-Tunnel wëll kommen. D’Absicht existéiert nëmmen an der Routingtabell, an d’Politikdateschank huet ni dovun erfuer.

Behandelt dat als Konflikt tëscht zwou konfiguréierten Schutzweeër an net als Concours tëscht zwou Metriken. D’Korrektur gehéiert zu där Komponent, déi mat dem falsche Beräich konfiguréiert gouf.

Liest d’Route, déi de Kernel tatsächlech wielt

Fänkt mat der Sich un, déi de Kernel mécht, inklusiv der Quelladress an all Politiksregel, déi se an eng aner Tabell ëmleede kéint. Eng Route an der Haapttabell gëtt vläicht ni konsultéiert, wann eng fréier Regel eng aner Tabell wielt, an d’Iwwereneestëmmung vum längste Prefix gëllt nëmmen an där Tabell, déi eng Regel wielt.

ip rule show
ip route show table all
ip route get 172.20.8.20 from 10.44.7.15

Déi lescht Kommando ass déi wichteg, well se déi gewielte Route zesumme mat der Quelladress ausgëtt, déi de Kernel géif benotzen. Vergläicht dës Ausgab mat dem Selektor, op deen d’IPsec-Politik passt. Wann d’Route op d’OpenVPN-Schnittstell weist an d’Politik nach ëmmer op dee selwechte Puer passt, hutt Dir de Konflikt ouni Rotsche reprodutéiert.

Hält d’Dumps fräi vun onbezunnen Adressen, ier se en Ticket erreechen. Eng Routingtabell vun engem Produktiounshost dréit intern Topologie, a nëmmen d’Linnen, déi d’Fro beäntwerten, si wäert ze pechen.

Liest och d’Politik, déi och gëllt

D’Politiklescht weist Richtung, Selektoren an d’Schabloun, déi entscheet, wat mat engem passende Paket geschitt. Liest d’éischt d’ausgänglech Richtung, duerno d’agänglech Säit fir de Retourverkéier, well eng eenrichtung Ausnam eng Verbindung erzeugt, déi ufänkt an ni fäerdeg gëtt.

ip -s xfrm policy
swanctl --list-sas

Vergläicht d’Selektoren an der Lëscht mat de Prefixen, déi d’Verbindung ausgehandelt huet. D’Ausschalten vun der Routeninstallatioun vu strongSwan hëlt déi Politike net ewech, an eng geännert Metrik ännert net, wéi ee Quell- an Zilpuer eng Politik schützt. Déi zwou falsch Korrekture si wäert, fréi auszeschléissen, well d’Leit se als éischt probéieren.

Wann d’Lëscht keng Politik fir dee Prefix enthält, deen Dir erwaart hutt, ass de Problem soss anzwousch an d’Routingtabell seet wahrscheinlech d’Wourecht. Wann se eng méi breet Politik enthält, déi de Prefix deckt, hutt Dir d’Erfaassung fonnt.

Dräi Optiounen, wann béid Weeër legitim sinn

D’Verenge vum IPsec-Selektor ass déi propperst Optioun, wann de breede Prefix eng Bequemlechkeet an net eng Fuerderung war. D’Reduzéiere vum Selekter fir de wäite Verkéier op d’Subnetzer, déi wierklech hannert IPsec gehéieren, hëlt de Konflikt fir all Host op eemol ewech, an et kascht eng nei Schlësselverhandlung amplaz enger neier Komponent.

Eng Passthrough-Ausnam ass déi chirurgesch Optioun, wann de breede Selektor bleiwe muss. strongSwan ënnerstëtzt eng getrennt Verbindung, deenen hiert Kand de Pass-Modus benotzt, wat dem Kernel seet, datt de passende Verkéier net duerch IPsec soll verschafft ginn. D’Loopback-Wäitadress hält déi Verbindung dovun of, fir agänglech Peeren ausgewielt ze ginn, an d’Selektoren mussen dat richtegt autoriséiert Puer beschreiwen an net alles.

connections {
    openvpn-exception {
        remote_addrs = 127.0.0.1
        children {
            openvpn-exception {
                local_ts = 10.44.7.0/24
                remote_ts = 172.20.8.0/24
                mode = pass
                start_action = trap
            }
        }
    }
}

D’strongSwan-Konfiguratiounsbeispiller dokumentéieren dësen Politikstyp an d’Loopback-Peer-Konventioun. Déi drëtt Optioun ass en routingbaséierten Design mat XFRM-Schnittstellen, deen d’Politik u Verkéier bënnt, deen duerch eng benannt Schnittstell gerout gëtt, amplaz un en globale Selektor. Et ass eng Migratioun an net eng Upassung, an de Verkéier muss nach ëmmer déi ausgehandelt Selektoren erfëllen.

OptionUse it whenCost
Narrow the selectorThe broad prefix was convenienceA rekey and a policy review
Passthrough childThe broad selector must stayOne exception per intended pair
XFRM interfacePolicy should follow routingA design migration

Beweist d’Ausnam, ouni de Rescht ze schwächen

Nodeem d’Ännerung gelueden ass, test d’Ausnam an en normale Bestëmmungsziel, dat geschützt misst bleiwen. Kontrolléiert béid Richtungen, lueft dann den OpenVPN-Tunnel erof a bestätegt, wat mat dem ausgenomme Verkéier geschitt. Eng Ausnam, déi dee Prefix still a kloer schéckt, wann den Tunnel erof ass, ass eng Politikentscheedung, déi Dir bewosst solle maachen an net während engem Tëschefall entdecken.

Notéiert, wéi ee Prefix wéi ee Wee benotzt a firwat. Soss wäert den nächsten Ingenieur, deen e breeden Selektor gesäit, déiselwecht Enquête erëm opmaachen, an d’Äntwert wäert an enger Commit-Noriicht stoen, déi kee liest.

Ähnlech Artikelen