სკანერები UDP პორტისთვის ბეჭდავენ ღია ან გაფილტრულს, და დასკვნა ჩვეულებრივ რამდენიმე წამში მოდის: გვირაბი გატეხილია. შეიძლება ასეც იყოს, მაგრამ სკანირებამ ეს არ დაადასტურა. UDP არ ატარებს კავშირის არცერთ ხელიკვრას, და WireGuard არ პასუხობს არაფერს, რისი იდენტიფიცირებაც არ შეუძლია, ამიტომ სიჩუმე მოსალოდნელი პასუხია უმეტესი ცდებისთვის.

ამის ნაცვლად იმუშავეთ კლიენტიდან გარეთკენ, და სკანირება განიხილეთ როგორც ერთი სუსტი მონაცემთა წერტილი რამდენიმეს შორის.

რა შეუძლია და რა არ შეუძლია სკანერს დაინახოს

UDP სკანერი აგზავნის ტვირთს და ელოდება. თუ ICMP port-unreachable ბრუნდება, მას შეუძლია პორტი დახურულად გამოაცხადოს. თუ არაფერი ბრუნდება, შედეგი დიზაინით ორაზროვანია: გაფილტრული გზა, არარსებული ჰოსტი და მომუშავე სერვისი, რომელმაც ტვირთს უგულებელყო, ყველა ერთსა და იმავე სიჩუმეს ქმნის. სამი განსხვავებული მდგომარეობა, ერთი გამომავალი სტრიქონი.

WireGuard განზრახ აუარესებს ამ ორაზროვნებას. პროტოკოლი პაკეტს იღებს მხოლოდ მაშინ, როცა ის იდენტიფიცირდება, ამიტომ არასწორი გასაღებებით ცდა უპასუხოდ იშლება. არ არის არც ბანერი, არც ვერსიის სტრიქონი და არც შეცდომის შეტყობინება თითის ანაბეჭდისთვის.

TCP ტესტი იმავე პორტის ნომერზე არაფერ შუაშია. ის ამოქმედებს სხვა მსმენელს, რომელიც შეიძლება არ არსებობდეს, და მისი უარი UDP-ზე არაფერს ამბობს.

ამიტომ ღია გაფილტრული მდგომარეობები უფრო ზუსტად აღწერენ სკანერის გაურკვევლობას, ვიდრე თქვენს სერვერს.

გაიარეთ ნამდვილი კლიენტი პროფილიდან შიგნით

დაიწყეთ კლიენტის საკუთარი ხედვიდან. აქვს ინტერფეისს მისამართი, უთითებს კონფიგურაცია სწორ საბოლოო წერტილს, და მოძრაობს ხელიკვრის მთვლელი, როცა კავშირი სცადება? კლიენტი, რომელმაც არასოდეს გაგზავნა პაკეტი, და კლიენტი, რომლის პაკეტებიც ჩამოაგდეს, სტატუსის ფანჯარაში ერთნაირად გამოიყურებიან. მათ მხოლოდ მთვლელები არჩევენ, ამიტომ ჯერ მთვლელები წაიკითხეთ.

შემდეგ დააკვირდით სერვერის მხარეს, სანამ ერთი ნებადართული ცდა ხდება, ნაცვლად იმისა, რომ მესამე ადგილიდან ცალკე სკანირება გაუშვათ:

wg show wg0 latest-handshakes
tcpdump -n -i eth0 udp port 51820 -c 10

პირველი ბრძანება იტყობინება ბოლო ხელიკვრას თითოეულ პარტნიორზე, რაც პირდაპირი მტკიცებულებაა, რომ იდენტიფიცირებული გაცვლა დასრულდა. მეორე აჩვენებს, საერთოდ მოდის თუ არა პაკეტები მსმენელისთვის, და ეს ერთი ნაბიჯით ჰყოფს გზის პრობლემას კონფიგურაციის პრობლემისგან.

თუ ჩანაწერი არაფერს აჩვენებს, პაკეტი ჰოსტამდე ვერასოდეს მივიდა და გვირაბის კონფიგურაცია ეჭვმიტანილი არ არის. თუ ის აჩვენებს მოსალოდნელი მისამართიდან მომავალ პაკეტებს, სანამ ხელიკვრა ნულზე რჩება, შემდეგი სანახავი ადგილი გასაღებები ან პარტნიორის ნებადართული მისამართებია.

დააკავშირეთ სერვერზე, როცა მას თქვენ მართავთ

დაადასტურეთ, რომ მსმენელი არსებობს და რომ პროვაიდერის ფაირვოლი UDP პორტს უშვებს. ჰოსტის ფაირვოლის წესი და ღრუბლოვანი უსაფრთხოების ჯგუფი ორი დამოუკიდებელი კარიბჭეა, და ნებისმიერს მათგანს შეუძლია ჩამოაგდოს პაკეტი, რომელიც მეორემ დაუშვა. შეამოწმეთ ორივე კონფიგურაციაში არსებული ფაქტობრივი პორტის მიმართ და არა პორტის, რომელიც გახსოვთ.

მისამართი ისეთივე მნიშვნელოვანია, როგორც პორტი. კონკრეტულ მისამართზე მსმენი სერვერი არ უპასუხებს სხვა მისამართზე მოსულ პაკეტს, და მრავალინტერფეისიან ჰოსტს შეუძლია ცდა მიიღოს იმ ინტერფეისზე, რომელიც არ გქონდათ მხედველობაში.

შეინახეთ ყოველი ტესტი იმ სისტემების შიგნით, რომელთა ტესტირების უფლებაც გაქვთ. სასარგებლო შედარება ერთ რეალურ კლიენტის ცდასა და მოსალოდნელ სერვერის გზას შორისაა, და არა იმ მისამართების უფრო ფართო დათვალიერება, რომლებიც შემთხვევით იმავე პროვაიდერს ეკუთვნის.

სკანირების შედეგის პატიოსნად წაკითხვა

სკანირება იაფი გზაა იმის შესამოწმებლად, რომ ჰოსტი არსებობს და რომ პორტი აშკარად არ არის დაბლოკილი შუალედური მოწყობილობით. ეს არ არის იდენტიფიცირებული პროტოკოლის ხელმისაწვდომობის მტკიცებულება და ნამდვილად არ არის კონფიგურაციის ტესტი.

უფრო ძლიერი მტკიცებულებაა დასრულებული ხელიკვრა იმ კლიენტისგან, რომელიც ნამდვილად გაღელვებთ, რასაც მოჰყვება მოთხოვნა, რომელიც გვირაბს იყენებს და პასუხს იღებს. ეს თანმიმდევრობა ერთ ჯერზე ამოქმედებს გასაღებებს, ნებადართულ მისამართებს, ორივე ფაირვოლს და დაბრუნების გზას.

სადაც რეალური ცდა ვერ ხერხდება, გაუმართაობა მაინც უნდა დიაგნოსტირდეს კლიენტის მთვლელებითა და სერვერის ჩანაწერით და არა კიდევ ერთი ცდით. პროტოკოლის აღწერა ხსნის, რატომ არ იღებს არაიდენტიფიცირებული პაკეტი პასუხს, და ეს არის სკანირების შედეგის ორაზროვნების მთელი მიზეზი.

დაკავშირებული სტატიები