WireGuard არ აჩვენებს უახლეს ხელის ჩამორთმევას: რა შევამოწმოთ პირველად
ცარიელი ხელის ჩამორთმევა შეიძლება უბრალოდ ნიშნავდეს, რომ არაფერი გაიგზავნა. გააქტიურეთ დაშვებული პაკეტი, შემდეგ შეამოწმეთ მარშრუტი, გასაღებების წყვილი და გარე UDP გზა.
უახლესი ხელის ჩამორთმევის ცარიელი ველი ჩვეულებრივ ნიშნავს, რომ ინტერფეისს აირთო-დან არ დაუსრულებია ხელის ჩამორთმევა, რაც კონფიგურაციაზე ნაკლებს ამბობს, ვიდრე ჩანს. WireGuard ჩუმად რჩება, სანამ პაკეტმა ინტერფეისიდან გასვლა არ უნდა, ამიტომ გასაგზავნი არაფერი რომ არ ჰქონდეს, უმოქმედო peer ზუსტად ამას იტყობინება. დაადგინეთ, ნამდვილად შეუთავაზეს თუ არა რამე, სანამ გასაღებებს შეამოწმებთ.
ტესტი არის დაშვებული პაკეტი იმ დანიშნულებისკენ, რომელიც peer-მა უნდა გადაიტანოს. დანარჩენი ყველაფერი ამ სტატუსის ეკრანზე განზრახვას აღწერს და არა აქტივობას.
უმოქმედო ინტერფეისს სათქმელი არაფერი აქვს
WireGuard ხელის ჩამორთმევას ზარმაცად აკეთებს: გვირაბის საჭიროების მქონე პირველი პაკეტი იწყებს გაცვლას და ინტერფეისი მანამდე ჩუმად რჩება. კონფიგურირებული და არასდროს გამოყენებული peer აჩვენებს ცარიელ ხელის ჩამორთმევას, ნულ მიღებულ ბაიტს და ბოლოდან მზარდ ინტერვალს. ეს მდგომარეობა ჯანსაღია უმოქმედო კლიენტისთვის და საგანგაშოა მხოლოდ მაშინ, თუ ელოდებით, რომ ტრაფიკი უკვე გადიოდა. შეამოწმეთ გადაცემის მთვლელებიც, რადგან ისინი გამოყოფენ „არაფერი გაგზავნილა“ მდგომარეობას „ცდა და წარუმატებლობისგან“.
თუ მთვლელები ორივე მხარეს ნულზეა, პრობლემა გვირაბის ზემოთაა. არაფერი არ მიუღწევია ინტერფეისს, რომ რამე დაეწყო.
გააქტიურეთ ტრაფიკი, რომლის გადატანაც peer-ს ნებადართული აქვს
აირჩიეთ მისამართი peer-ის დაშვებული პრეფიქსების შიგნით, ლოკალურ მანქანაზე, და დაადასტურეთ, რომ მარშრუტების ცხრილი მას ინტერფეისიდან გაატარებს. ამ პრეფიქსების გარეთ მყოფი დანიშნულება ქმნის ჩვეულებრივ მარშრუტიზებულ მოთხოვნას WireGuard-ის ყოველგვარი მონაწილეობის გარეშე. გამოიყენეთ სწრაფად მპასუხობი სერვისი, როგორიცაა ping ან მოკლე TCP კავშირი, რათა მცდელობას ხილული დასაწყისი და დასასრული ჰქონდეს. შემდეგ ხელახლა წაიკითხეთ ხელის ჩამორთმევის ხაზი ეკრანზე ყურებისა და ლოდინის ნაცვლად.
ip route get 10.60.9.5
ping -c 3 -W 2 10.60.9.5
wg show wg0 latest-handshakes
wg show wg0 transfer
მარშრუტის შეკითხვა უფრო მნიშვნელოვანია, ვიდრე ping. თუ ის ასახელებს ფიზიკურ ინტერფეისს, პაკეტი არასდროს შესულა გვირაბში და ცარიელი ხელის ჩამორთმევა მარშრუტიზაციის პასუხია და არა კრიპტოგრაფიული. შეაკეთეთ მარშრუტი, სანამ peer-ს გამართავთ.
შეადარეთ გასაღებების წყვილი და საბოლოო წერტილი
როცა ტრაფიკი ნამდვილად შეთავაზებულია, შემდეგი შემოწმება იდენტობაა. ლოკალური პირადი გასაღები უნდა შეესაბამებოდეს საჯარო გასაღებს, რომელსაც მეორე მხარე ავტორიზებს, კონფიგურირებული დისტანციური საჯარო გასაღები უნდა ამოიცნობდეს სასურველ peer-ს, და ნებისმიერი წინასწარ გაზიარებული გასაღები უნდა ემთხვეოდეს ორივე ბოლოში. base64 გასაღებში ერთი სიმბოლოს სხვაობა ქმნის peer-ს, რომელიც კონფიგურირებულად გამოიყურება და არასდროს ასრულებს გაცვლას. შეადარეთ მომარაგების ჩანაწერს და ნუ შექმნით გასაღებებს ხელახლა, რადგან ახალი გასაღები ბათილად აცხადებს ყველა peer-ს, რომელიც ძველს ენდობოდა.
საბოლოო წერტილი იგივე შემოწმებას მოითხოვს: ჰოსტის სახელი, მისამართი, UDP პორტი და ის ოჯახი, რომლითაც მას აღწევენ. მოძველებული მისამართი ან არასწორი პორტი წარმოქმნის სიჩუმეს და არა შეტყობინებას.
თვალყური ადევნეთ გარე UDP გზას
ხელის ჩამორთმევა UDP-ად მიემართება საბოლოო წერტილისკენ, ამიტომ გარე გზამ უნდა გადაიტანოს იგი. ქვემოთ მოცემული ბრძანებები ამოწმებს, არის თუ არა მსმენელი, გაგზავნა თუ არა ლოკალურმა სტეკმა დატაგრამა და რომელი საბოლოო წერტილია კონფიგურირებული. გაუშვით ჩაწერა ტრაფიკის გააქტიურებისას და არა მანამდე.
ss -lunp | grep 51820
sudo tcpdump -ni eth0 udp port 51820
wg show wg0 endpoints
conntrack -L -p udp | grep 51820
ჩაწერა, რომელიც აჩვენებს დაწყებას პასუხის გარეშე, მიუთითებს მანქანის გარეთ, რადგან შორეული მხარე ან არ უსმენს, ან გაფილტრულია, ან არასწორად არის მისამართიანი. ჩაწერა, რომელიც საერთოდ არაფერს აჩვენებს, ნიშნავს, რომ პაკეტი არასდროს გასულა, რაც გაბრუნებთ მარშრუტთან და თამაშში მყოფ ნებისმიერ socket-ნიშანთან. თუ ორივე მხარეს მართავთ, უკავშირეთ მცდელობა დროის ნიშნით სერვერზე ვიწრო ჩაწერას და არა ზოგადს. TCP პორტის ტესტი აქ არაფერს ამტკიცებს, რადგან პროტოკოლი მხოლოდ UDP-ია.
როგორც კი ხელის ჩამორთმევა გამოჩნდება, გამოცადეთ აპლიკაცია გვირაბის გავლით, რადგან დასრულებული გაცვლა ამტკიცებს იდენტობას და ხელმისაწვდომობას და არა გამოსაყენებელ გამტარუნარიანობას ან სწორ DNS-ს. შეინახეთ სტატუსის გამოსავალი ცვლილებამდე და შემდეგ, და განსხვავება გახდება თქვენი მტკიცებულება.