Скенирате VPN порт, не добијате одговор и закључујете да је услуга пала или да је заштитни зид затворен. Код WireGuard-а и код OpenVPN контролних канала који носе сопствену аутентификацију тај закључак не следи. Датаграм без ваљаног аутентификационог материјала одбацује се без одговора, па је тишина оно како здрава услуга изгледа споља. Сонда је погрешна пре него што је тунел.

Тишина је протокол, а не квар

UDP нема успостављање везе, па нема ни SYN-а ни потврде која би скенеру омогућила да разликује отворен порт од филтрираног. Сонда долази као изоловани датаграм, а услуга проверава да ли одговара протоколу који очекује. Када не одговара, пакет се одбацује, а одбацивање је документовано понашање, а не квар.

WireGuard криптографски проверава своје handshake поруке и игнорише све што не прође. OpenVPN са tls-auth или tls-crypt чини исто за свој контролни канал. У оба случаја произвољни payload никада не стигне до фазе окренуте кориснику, па нема чиме да се одговори ни грешке коју треба вратити.

TCP би вам дао ресет са затвореног порта. UDP вас оставља у неодређености, коју скенери решавају исписивањем отворен или филтриран уместо нагађања.

Шта скенер може, а шта не може да закључи

Резултат скенирања је информативан онолико колико је информативан послати payload. Поређајте могућа запажања према томе шта свако од њих заиста потврђује:

ProbeObserved resultWhat it supports
Empty datagramNo replyNothing beyond the fact that UDP was used
Random payloadNo replyConsistent with an authenticated service
Valid handshake from a real clientA protocol replyThe service is alive and reachable
ICMP port unreachableUnreachable messageThe host answered, usually because nothing listens

Читајте трећи ред као једини позитиван тест на листи. Он захтева прави профил, прави кључ и исправну крајњу тачку, а то је управо оно што општи скенер нема.

Погледајте оба краја пута

За сервер којим управљате, снимите на интерфејсу пре него што донесете било какав закључак, а затим питајте услугу шта је видела. Обе команде захтевају root на мрежном пролазу:

tcpdump -ni any udp port 51820
tcpdump -ni any udp port 1194
wg show

Ако се на интерфејсу не појави ниједан пакет, пут га је одбацио пре него што је услуга ишта видела, а следећа станица је рутирање и филтрирање. Ако пакети стижу али се ниједно handshake не заврши, услуга је доступна а неслагање је у кључевима, конфигурацији крајње тачке или верзији протокола. То поређење одговара на питање на које скенер није могао. Покрените га док прави клијент покушава да се повеже, а не док скенер понавља сам себе.

Промените тест, а не заштиту

Примамљива пречица је да искључите заштиту контролног канала како би дијагностика добила одговор. То мења стварно безбедносно својство за лепши резултат скенирања, и то је погрешан смер. Уместо тога користите ваљан профил са одобрене мреже и забележите крајњу тачку и време како би поређење било поновљиво.

Најкориснији тест је диференцијални: исти профил на путу који ради и на путу који не ради. Ако радни пут произведе handshake, а пут који не успева не произведе ништа на интерфејсу, лоцирали сте прекид без икаквог слабљења.

Неодговорени UDP пакет, дакле, не доказује ни да је сервер офлајн ни да је безбедан. Доказује да ова сонда, на овом путу, у овом тренутку, није прихваћена.

Повезани чланци