Wéi routing-baséierten IPsec mat enger XFRM-Schnittstell funktionéiert
Eng XFRM-Schnittstell gëtt routing-baséiertem IPsec en Apparat duerch deen gerout gëtt. Den if_id, d'Sécherheetsassociatiounen hannendrun an déi baussenzeg Route musse alleguer passen.
Routing-baséierten IPsec gëtt der Routingtabelle eng Entscheedung, déi fréier Politik-Selektoren getraff hunn. Ënner Linux ass d'Stéck, dat dat méiglech mécht, d'XFRM-Schnittstell: en virtuelle Apparat, deem säin Trafik iwwer en Interface-Identifiant an net iwwer e Selektor mat dem IPsec-Zoustand ofgeglach gëtt. Een ze schafen brauch een eenzege Kommando an et beweist näischt doriwwer, ob en Tunnel existéiert. Den Apparat ass en Haken tëscht Routing a Sécherheetspolitik, an déi zwou Säite vun deem Haken mussen ageriicht sinn, ier eppes geschützt ass.
Wat den Apparat ass a wat en net ass
Eng XFRM-Schnittstell ass eng Routing-Handhab. Pakete, déi dorein gerout ginn, gi mat XFRM-Politiken ofgeglach, déi op dee selwechten Interface-Identifiant referenzéieren, a wann eng Politik an en Zoustand existéieren, ginn se encapusléiert. Ouni déi existéiert d'Schnittstell, d'Comptoire bleiwen stoen, an den Trafik geet nëmmen dohin wou en näischt bréngt.
Dat ass déi éischt diagnostesch Trennung. Eng Route an den Apparat ass eng Routing-Tatsaach, en installéierten Zoustand ass eng Sécherheets-Tatsaach, an e Comptoir, deen um Apparat klëmmt, ass keent vun deenen zwee. Wann d'Leit soen, den Tunnel wier uewen, well d'Schnittstell UP weist, beschreiwen se d'Link-Flags vun engem virtuelle Apparat, deen keen eegene Peier huet. D'Fändel heescht, datt den Apparat geschaf a ageschalt gouf, méi net.
Nach eng Grenz: den Interface-Identifiant ass keen Numm. Zwee Apparater mat ähnlechen Nimm an ënnerschiddlechen Identifiante deelen keen Zoustand, an eng Verbindung, déi mam falschen Identifiant ageriicht ass, installéiert en Zoustand, deen eng Route ni wäert benotzen.
Baut een an der richteger Reiefolleg
Fänkt mam baussenzegen Apparat un an enger Zuel, déi Dir och an d'Daemon-Konfiguratioun schreift. D'Beispill benotzt eth0 als baussenzeg Schnittstell an 42 als Identifiant, Adressen, déi Dir duerch Är eege sollt ersetzen.
Hueft den Apparat erop, da bestätegt den Identifiant, deen de Kernel festgehalen huet, ier Dir d'VPN-Konfiguratioun beréiert:
sudo ip link add xfrm0 type xfrm dev eth0 if_id 42
sudo ip link set xfrm0 up
ip -d link show xfrm0 | grep -o 'if_id [0-9]*'Elo konfiguréiert d'Verbindung am strongSwan mam selwechten Identifiant, well den Daemon Politiken an Zouständ muss installéieren, déi drop referenzéieren. Setzt déi lokal an déi entfernt Trafik-Selektoren op de Beräich, deen Dir wëllt routen, a rout dann dee Beräich an den Apparat. D'Daemon-Konfiguratioun an d'Routingtabelle mussen sech souwuel iwwer den Identifiant wéi och iwwer d'Destinatiounen eeneg sinn, an keng vun deenen zwou liwwert déi aner.
Hält IKE an ESP aus der Tunnelroute
Eng Standardroute, déi an den XFRM-Apparat weist, fänkt déi encapusléiert Paketen an och den Trafik, dee se droen. D'Resultat ass eng Schlaif: de Gateway probéiert säin eegenen ESP duerch den Tunnel ze schécken, deen ESP soll bauen.
D'Léisung ass eng méi spezifesch Route fir déi baussenzeg Adress vum Peier iwwer déi physesch Schnittstell, déi d'Standardroute gewënnt, well se op méi Bits passt. Mark-baséiert Routing mécht déi selwecht Aarbecht, wann e puer Tunnele sech eng Tabell deelen, an strongSwan dokumentéiert béid Approchen fir routing-baséiert Deployementer.
Wat Dir och wielt, verifizéiert, datt de baussenzege Paket onencapusléiert erausgeet. Eng séier Kontroll ass, déi baussenzeg Adress vum Peier ze pingen, nodeems den Tunnel erop ass; wann dat feelt, während d'Schnittstell erop ass, verdächtegt eng Erfaassung an net d'Erreechbarkeet. Déi selwecht Begrënnung gëllt fir den IKE-Port, well den eegene UDP-Trafik vum Daemon net an den Apparat gerout soll ginn, deen en ze établéiere probéiert.
Kontrolléiert d'Comptoire op zwou Plazen, ier Dir d'Verschlësselung beschëllegt
Schnittstell-Comptoiren an Zoustands-Comptoiren moossen ënnerschiddlech Etappen. Pakete, déi an den Apparat gerout ginn, erhéijen den Apparat och dann, wann keen Zoustand passt, während d'Zoustands-Comptoiren sech just fir Trafik beweegen, deen tatsächlech encapusléiert gouf.
Liest béid, da liest d'Siicht vum Daemon op d'Kann-Associatioun:
ip -s link show xfrm0
sudo ip xfrm state list | grep -E 'src|proto|mode'
sudo swanctl --list-sasComptoire vum Apparat, déi klëmmen, wärend d'Zoustandsausgab eidel ass, heeschen, datt d'Routing funktionéiert an d'Politik net passt, meeschtens e Feeler beim Identifiant oder beim Selektor. Zoustands-Comptoiren, déi klëmmen, wärend déi entfernt Säit näischt mellen, heeschen, datt d'Paketen erausginn, awer net ukéimen oder d'Authentifikatioun feelen, wat op de Wee oder d'Peier-Konfiguratioun weist. E gelëschte Kann ouni Trafik ass e Selektorsproblem op engem Enn, an net eng futti Chiffre.
Entscheet, wien d'Routen installéiert
Zwee Besëtzer fir eng Routingtabelle sinn déi üblech Quell vum Flapping. Wann den Daemon d'Routen automatesch installéiert, däerf Ären Netzwierkmanager net och eng Standardroute duerch deen selwechten Apparat installéieren, an eng manuell Route aus engem Startskript gëtt beim nächsten Neikonfiguréieren vum Daemon ewechgeholl.
Wielt ee Besëtzer a schreift et op. Wann den Daemon d'Routen huet, hält d'Startskript aus der Tabell an loosst d'Verbindungsdefinitioun d'Trafik-Selektoren beschreiwen. Wann den Netzwierkmanager se huet, deaktivéiert d'automatesch Installatioun an akzeptéiert, datt den Daemon eng fehlend Route beim Neiverbannen net reparéiert.
Weiderleitungs- a Firewall-Reegelen sinn eng separat Entscheedung driwwer, well en Gateway, deen den Trafik vun aneren Hosten duerchléisst, béides brauch. Routing-baséierten IPsec mécht deen Trafik einfach mat gewéinleche Routing-Werkzeugen auszedrécken; et mécht d'Politikschicht net fakultativ.