Az UDP 500 megnyitása a tűzfalon lehetővé teszi az alagút egyeztetését, majd a kapcsolat abbahagyja a forgalom átengedését. A portlista hiányos volt, nem hibás. Az IKEv2 egy socketen indul, és sok valós telepítésben egy másikon folytatódik, miközben a hasznos teher egyáltalán nem is port. A szakaszok sorrendben való olvasása megmagyarázza, melyik szabály hiányzik.

Két port, két feladat

Az IKEv2 kulcscserével indul az UDP 500-on, ahol a felek hitelesítik magukat, és biztonsági társulást hoznak létre az alagúthoz. A következő adatútvonal külön kérdés: lehet natív ESP, ami IP-protokollszám és nem port, vagy UDP-be csomagolt forgalom a 4500-on. Ezek szétválasztása egy tűzfal-átvizsgálásban a különbség az egyeztető és a működő alagút között. Az egyik socket a vezérlést viszi, a másik a hasznos terhet.

Ezért a csak 500-at engedélyező szabály okozza a legzavarbaejtőbb tünetet az egész protokollcsaládban: az egyeztetés sikerül, és semmi hasznos nem következik. Az állapot egy partnert mutat, a napló egy felépített IKE SA-t mutat, az alkalmazás mégis időtúllépést kap. A hiányzó engedély más folyamathoz tartozik, mint amelyik épp most sikerült.

Miért létezik egyáltalán a 4500

Sok NAT-eszköz nem tud TCP-n vagy UDP-n kívüli protokollt továbbítani, és némelyik úgy írja át a címeket, hogy az megtöri az ESP integritásellenőrzését. Az ESP UDP-be csomagolása mindkét problémát megoldja, egy plusz fejléc és egy engedélyezendő második port árán. Ez a csomagolás az oka annak, hogy a második port egyáltalán létezik.

Amint a NAT észlelhető, maga az IKE is átvált a 4500-ra, hogy minden forgalom egy útvonalat osszon meg a fordítón keresztül. Egy négybájtos, nem ESP jelölő különbözteti meg a vezérlőüzeneteket az adatoktól azon a socketen. A váltás protokoll-döntés, nem adminisztrátori preferencia.

Hol változik a forrásport

A fordító átírhatja az ügyfél forrásportját, így a szerveren látott tuple nem egyezik az ügyfélen lévő tuple-lel. Nézze meg minden NAT-ugrás mindkét oldalát, mielőtt arra jutna, hogy egy szabályt figyelmen kívül hagynak. A csak az ügyfélen végzett hibakeresés olyan szabályt adhat, amely helyesnek tűnik, és mégis meghiúsul.

A MOBIKE-képes megvalósítások NAT észlelése nélkül is átválthatnak a 4500-ra, és egyes telepítések szándékosan kényszerítik ezt az útvonalat. A 4500 látványa tehát egy döntés bizonyítéka, nem az otthoni router bizonyítéka.

Mindkét folyamot ellenőrizze minden határon

Járja végig a három határt: az ügyfél hálózatát, bármely köztes tűzfalat és a szervert. Mindegyiknek a telepítés által dokumentált folyamokra van szüksége, nem egy másik esetről szóló cikk folyamaira.

sudo swanctl --list-sas
sudo tcpdump -ni any 'udp port 500 or udp port 4500'
sudo iptables -S | grep -E '500|4500|esp'
ip xfrm state

A tűzfallistán szereplő ESP-sor protokoll-egyezés, ezért egy portszabály soha nem fedi le. Ha az üzemeltető egyedi portot használ, kövesse a dokumentált konfigurációt mindkét végén, mert az ügyfél nem hozhat létre figyelőt a szerveren egy ismerős szám kiválasztásával.

Jegyezze fel, hol állt le az egyeztetés, és hogy telepítettek-e gyermek biztonsági társulást, mert ez a pár választja el a blokkolt útvonalat egy hitelesítési vagy házirend-hibától. Ezután ismételje meg a tesztet bekapcsolt szerverellenőrzéssel, mert az elérhetőség nem hitelesítés. Ez az utolsó lépés választja el az engedélyezett portot a megbízható partnertől.

Kapcsolódó cikkek