Отварянето на UDP 500 във файлуола позволява на тунела да преговаря, а след това връзката спира да пропуска трафик. Списъкът с портове беше непълен, а не грешен. IKEv2 започва на един сокет и в много реални внедрявания продължава на друг, докато полезният товар може изобщо да не е порт. Четенето на етапите по ред обяснява кое правило липсва.

Два порта, две задачи

IKEv2 започва с обмен на ключове по UDP 500, където страните се удостоверяват и установяват асоциация за сигурност за тунела. Пътят на данните след това е отделен въпрос: той може да е собствен ESP, който е номер на IP протокол, а не порт, или трафик, инкапсулиран в UDP на 4500. Разграничаването им при преглед на файлуола е разликата между тунел, който преговаря, и тунел, който работи. Единият сокет носи управление, а другият — полезния товар.

Затова правило, което разрешава само 500, дава най-объркващия симптом в цялото семейство протоколи: преговорите успяват и нищо полезно не следва. Състоянието показва партньор, журналът показва установена IKE SA, а приложението все още изтича по време. Липсващото разрешение принадлежи на друг поток, различен от този, който току-що успя.

Защо 4500 изобщо съществува

Много NAT устройства не могат да препращат протокол, различен от TCP или UDP, а някои пренаписват адреси по начин, който чупи проверката за цялост на ESP. Инкапсулирането на ESP в UDP решава и двата проблема, с цената на допълнителен заглавен блок и втори порт за разрешаване. Тази инкапсулация е причината вторият порт изобщо да съществува.

След като NAT бъде открит, самият IKE също се премества на 4500, така че целият трафик да споделя един път през транслатора. Четирибайтов маркер, който не е ESP, разграничава управляващите съобщения от данните на този сокет. Преместването е решение на протокола, а не предпочитание на администратора.

Къде се променя изходният порт

Транслаторът може да пренапише изходния порт на клиента, така че кортежът, който вижда сървърът, не съвпада с кортежа на клиента. Погледнете и двете страни на всеки NAT скок, преди да заключите, че правило се игнорира. Диагностиката само на клиента може да даде правило, което изглежда правилно и все пак се проваля.

Внедряванията с поддръжка на MOBIKE също могат да преминат на 4500 без открит NAT, а някои внедрявания нарочно налагат този път. Затова виждането на 4500 е доказателство за решение, а не доказателство за домашен рутер.

Проверявайте двата потока на всяка граница

Минете през трите граници: мрежата на клиента, всеки междинен файлуол и сървърът. Всяка се нуждае от потоците, които внедряването документира, а не от потоците от статия за друг случай.

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

Редът ESP в списък на файлуол е съвпадение по протокол, така че правило за порт никога не го покрива. Ако операторът използва нестандартен порт, следвайте документираната конфигурация от двете страни, защото клиентът не може да създаде слушател на сървъра, като избере познат номер.

Запишете къде са спрели преговорите и дали е била инсталирана дъщерна асоциация за сигурност, защото тази двойка отделя блокиран път от грешка в удостоверяването или политиката. След това повторете теста с включена проверка на сървъра, защото достижимостта не е удостоверяване. Тази последна стъпка отделя разрешен порт от доверен партньор.

Подобни статии