Monitorovanie rozhrania tunela IPsec: čo čítať
Rozhranie XFRM dáva čítače a hranicu smerovania, ale zdravie vyžaduje stav SA, vybranú trasu a kontrolu aplikácie čítané spolu.
Návrh IPsec založený na trasách inštaluje virtuálne rozhranie a toto rozhranie dáva monitorovaniu konkrétny objekt: niečo s názvom, čítačmi a trasou, ktorá k nemu patrí. Samo o sebe to nie je signál zdravia. Rozhranie môže existovať, kým nie je nainštalované žiadne použiteľné pridruženie, a pridruženie môže byť zdravé, kým žiadna trasa k nemu neposiela zaujímavú prevádzku. Práve spoločné čítanie štyroch stavov premení počítadlo paketov na diagnózu.
Prejdite ich po poradí a zastavte sa pri prvom, ktoré zlyhá.
Čo rozhranie prináša do obrazu
V návrhu založenom na zásadách žije výber v tabuľke zásad IPsec a jadro rozhoduje, čo je chránené, podľa selektorov prevádzky. Návrh založený na trasách pridáva rozhranie a trasu, takže tcpdump a čítače rozhrania vidia jednu hranicu namiesto sady selektorov. To je skutočný prínos pre diagnostiku a pre smerovacie protokoly, ktoré potrebujú rozhranie na peering.
Prínos je administratívny, nie kryptografický. Rozhranie hlási prevádzku, ktorú nesie, a nehovorí nič o tom, či je ochrana na strane partnera práve použiteľná.
Prečítajte štyri stavy, skôr než obviníte tunel
Začnite rozhraním a trasou, potom pridružením, potom aplikáciou. Každé má svoj príkaz a svoj podpis zlyhania. Čistý výsledok na jednej vrstve nie je čistým výsledkom na ďalšej. Spustite všetky štyri, skôr než urobíte záver. Jeden zelený riadok málokedy niečo vyrieši.
ip -s link show xfrm0 ip route get 10.20.30.40 ip xfrm state ip xfrm policy swanctl --list-sas tcpdump -ni xfrm0 -c 20 host 10.20.30.40
Rozhranie s rastúcim čítačom, ale bez zodpovedajúcej položky stavu, opisuje prevádzku vstupujúcu na cestu, kde ju nič nechráni, čo je horšie ako tunel, ktorý jednoducho spadol. Položka stavu bez trasy vyberajúcej rozhranie znamená, že kryptografia je pripravená a nevyužitá.
Test aplikácie prichádza nakoniec a zámerne: úspešný ping na druhú stranu tunela nedokazuje, že služba za ním prijíma spojenia.
Porovnajte vnútorné čítače s vonkajšími
Čítače na rozhraní tunela merajú vnútornú prevádzku; čítače a odchyty na fyzickom rozhraní ukazujú zapuzdrenú výmenu. Tie dve sa nebudú zhodovať jedna k jednej, pretože zapuzdrenie pridáva hlavičky, opakované prenosy duplikujú niektoré pakety a účtovanie implementácie sa riadi vlastnými pravidlami. Očakávajte pomer, nie rovnosť.
Umiestnenie odchytu tiež rozhoduje o tom, aké súkromné údaje zbierate, preto používajte úzke filtre a neškodnú testovaciu adresu namiesto úplného odchytu produkčnej prevádzky.
Ak vnútorné čítače rastú a vonkajšie nie, chýbajúcim krokom je zvyčajne trasa alebo zásada, ktorá posiela pakety do tunela, nie tunel sám.
Sledujte to pri obnove kľúčov a prepnutí
Sledujte obnovu kľúčov, udalosť detekcie mŕtveho partnera a prepnutie spoja pri sledovaní rovnakých štyroch stavov. Rozhranie môže zostať prítomné počas obnovy kľúčov, ktorá sa nikdy neskončí, a prepnutie môže zanechať položku stavu ukazujúcu na adresu partnera, ktorá už nie je dostupná.
Alarmujte na ceste služby, na ktorej skutočne závisíte, so stavom pridruženia ako kontextom, namiesto jediného príznaku hore alebo dole. Zachovajte názov rozhrania, adresu partnera a trasu v obsahu alarmu, aby ich ten, kto reaguje, nemusel rekonštruovať.
strongSwan dokumentuje svoj vlastný model rozhrania XFRM a iné platformy ekvivalentný objekt pomenúvajú a implementujú odlišne. Prečítajte si porovnanie založené na trasách pre zariadenie, ktoré máte pred sebou, skôr než prenesiete predpoklady z inej implementácie. Šablóna monitorovania, ktorá sedí čítačom jedného dodávateľa, bude u iného ticho zavádzať.