Ginagamit ng IKEv2 ang UDP 500 at 4500: alin ang nagdadala ng data?
Ang unang palitan at ang landas na nagdadala ng data ay hindi iisang daloy. Suriin ang dalawang port, at tandaan na ang native ESP ay numero ng protocol, hindi port.
Ang pagbukas ng UDP 500 sa firewall ay nagpapahintulot sa tunnel na makipagnegosasyon, at pagkatapos ay tumitigil ang koneksyon sa pagpapadala ng trapiko. Ang listahan ng port ay hindi kumpleto, hindi mali. Nagsisimula ang IKEv2 sa isang socket at sa maraming tunay na deployment ay nagpapatuloy sa isa pa, habang ang payload ay maaaring hindi port. Ang pagbasa ng mga yugto sa pagkakasunod-sunod ay nagpapaliwanag kung aling tuntunin ang nawawala.
Dalawang port, dalawang gawain
Nagsisimula ang IKEv2 sa palitan ng susi sa UDP 500, kung saan nagpapatunay ang magkabilang panig at nagtatatag ng asosasyon ng seguridad para sa tunnel. Ang landas ng data na sumusunod ay hiwalay na usapin: maaaring ito ay native ESP, na numero ng protocol ng IP at hindi port, o trapikong nakabalot sa UDP sa 4500. Ang paghihiwalay ng dalawang ito sa pagsusuri ng firewall ay ang pagkakaiba ng tunnel na nakikipagnegosasyon at tunnel na gumagana. Isang socket ang nagdadala ng kontrol at ang isa ay payload.
Kaya ang tuntuning nagpapahintulot lamang sa 500 ay gumagawa ng pinakalitong sintomas sa buong pamilya ng protocol: nagtagumpay ang negosasyon at walang kapaki-pakinabang na sumusunod. Ipinapakita ng estado ang isang peer, ipinapakita ng log ang itinatag na IKE SA, at nag-time out pa rin ang aplikasyon. Ang nawawalang pahintulot ay kabilang sa ibang daloy kaysa sa katatapos lamang na nagtagumpay.
Bakit may 4500
Maraming aparatong NAT ang hindi makapagpadala ng protocol maliban sa TCP o UDP, at ang ilan ay nagsusulat muli ng address sa paraang sinisira ang pagsusuri ng integridad ng ESP. Ang pagbalot ng ESP sa UDP ay lumulutas sa dalawang problema, kapalit ng karagdagang header at pangalawang port na dapat pahintulutan. Ang pagbalot na iyon ang dahilan kung bakit may pangalawang port.
Kapag natukoy ang NAT, lumilipat din ang IKE mismo sa 4500 upang ang lahat ng trapiko ay maghati sa isang landas sa translator. Ang markang apat na byte na hindi ESP ay naghihiwalay ng mga mensahe ng kontrol sa data sa socket na iyon. Ang paglipat ay desisyon ng protocol, hindi kagustuhan ng administrator.
Saan nagbabago ang source port
Maaaring isulat muli ng translator ang source port ng kliyente, kaya ang tuple na nakikita sa server ay hindi tugma sa tuple sa kliyente. Tingnan ang dalawang panig ng bawat NAT hop bago magpasyang binabalewala ang isang tuntunin. Ang pag-troubleshoot sa kliyente lamang ay maaaring gumawa ng tuntuning mukhang tama at nabigo pa rin.
Ang mga implementasyong sumusuporta sa MOBIKE ay maaari ring lumipat sa 4500 nang walang natukoy na NAT, at ang ilang deployment ay sadyang pinipilit ang landas na iyon. Kaya ang makita ang 4500 ay ebidensya ng desisyon, hindi patunay ng home router.
Suriin ang dalawang daloy sa bawat hangganan
Daanan ang tatlong hangganan: ang network ng kliyente, anumang intermediate na firewall, at ang server. Ang bawat isa ay nangangailangan ng mga daloy na dokumentado ng deployment, hindi ang mga daloy mula sa artikulo tungkol sa ibang kaso.
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
Ang linyang ESP sa listahan ng firewall ay tugma ng protocol, kaya hindi ito saklaw ng tuntunin ng port. Kung gumagamit ang operator ng custom na port, sundin ang dokumentadong configuration sa magkabilang dulo, dahil hindi makakagawa ang kliyente ng listener sa server sa pamamagitan ng pagpili ng pamilyar na numero.
Itala kung saan tumigil ang negosasyon at kung na-install ang child security association, dahil ang pares na iyon ay naghihiwalay ng naharang na landas mula sa error sa authentication o patakaran. Pagkatapos ay ulitin ang pagsubok na naka-enable ang verification ng server, dahil ang maabot ay hindi authentication. Ang huling hakbang na iyon ay naghihiwalay ng pinapayagang port mula sa pinagkakatiwalaang peer.