OpenVPN პორტ 53-ზე: სამი საუბარი, რომელსაც ხალხი ერთმანეთში ურევს
ედპოინტის სახელის გარჩევა, დაშიფრული ტრანსპორტი და გვირაბის შემდგომი DNS სამი განსხვავებული საუბარია. დაადგინეთ რომელი ეტაპი ჩავარდა, სანამ პორტს ან რეზოლვერს შეცვლით.
მოხსენებები, რომლებიც ამბობენ, რომ VPN პორტ 53-ზე დაბლოკილია, ურევს სამ დაკვირვებას, რომლებიც სხვადასხვა მიზეზით ჩავარდება. ედპოინტის სახელის გარჩევა ხდება მანამ, სანამ რაიმე გვირაბი არსებობს, დაშიფრული ტრანსპორტი ცალკე საუბარია, ხოლო შემდგომი DNS მოთხოვნები მესამეა. თითოეულს აქვს თავისი ჩავარდნის ნიშანი და მათგან მხოლოდ ერთი ეხება DNS-ს.
სანამ რამეს შეცვლით, დაალაგეთ პაკეტები დანიშნულების მიხედვით, რადგან გამოსავალი ეტაპს მიჰყვება.
სამი საუბარი, ერთი პორტის ნომერი
პირველი საუბარი ედპოინტის სახელის ძიებაა: თქვენი მანქანა ეკითხება თავის კონფიგურირებულ რეზოლვერს, სად მდებარეობს vpn.example.com, და ეს პასუხი ჩვეულებრივი DNS-ით მოდის მანამ, სანამ კლიენტი ერთ გვირაბის პაკეტს გაგზავნის. მეორე თავად OpenVPN-ის ტრანსპორტია, რომელიც უკავშირდება იმ მისამართს, რომელიც ძიებამ მოგვცა, იმ პროტოკოლითა და პორტით, რომელსაც პროფილი ასახელებს. მესამე ხდება მას შემდეგ, რაც გვირაბი აწეულია, როცა აპლიკაციები სახელებს ითხოვენ და გაგზავნილი რეზოლვერის პარამეტრები წყვეტენ, ვინ უპასუხებს.
ეს სამი დამოუკიდებლად შეიძლება წარმატდეს ან ჩავარდეს. კლიენტმა შეიძლება სრულყოფილად გადაჭრას თავისი ედპოინტი და მაინც ვერ მიაღწიოს მსმენელს, და მან შეიძლება ააწყოს გვირაბი მაშინ, როცა შიდა სახელის ყოველი ძიება ჩავარდება, რადგან DNS-ის პარამეტრები არასოდეს მოსულა.
| Conversation | When it happens | What has to be true |
|---|---|---|
| Endpoint lookup | Before the client contacts a hostname | An underlying resolver path can answer for the endpoint name |
| OpenVPN transport | During tunnel establishment | The gateway listens on its configured transport, address and port, and nothing filters it |
| Application DNS | During or after the protected session | A resolver the client can reach, plus routing that carries its queries |
წაიკითხეთ ცხრილი როგორც შემოწმების სია და არა როგორც აღწერა. თუ ედპოინტის სახელი არ გარჩევდება, შემდეგ ვერაფერი იმუშავებს და გვირაბი არასოდეს დაიწყება.
პორტის ნომერი აპლიკაციას არ ასახელებს
პორტი 53 DNS-ს ჩვეულებისამებრ ატარებს, და OpenVPN-ის ოპერატორს იქ მსმენელის გამოქვეყნებაც შეუძლია, რის გამოც ეს ნომერი ცუდი იდენტიფიკატორია. OpenVPN სესია UDP 53-ზე კვლავ OpenVPN სესიაა, და პორტ 53-ზე სერვერისადმი გაგზავნილი DNS მოთხოვნა არაფერს ამბობს იმაზე, დაშვებულია თუ არა გვირაბი. პროფილის proto და remote ხაზები განსაზღვრავს გარე ედპოინტს; პორტის ნომერი თავისთავად არაფერს განსაზღვრავს.
დიაგნოსტიკისას ეს ორივე მიმართულებით მოქმედებს: პორტ 53-ზე ზოგადი UDP შემოწმება ამტკიცებს, რომ პორტი პასუხობს, და არა რომ VPN სერვისი პასუხობს. შეამოწმეთ ნამდვილი კლიენტითა და ნამდვილი პროფილით, რადგან მხოლოდ ეს ავარჯიშებს იმ ხელის ჩამორთმევას, რომელსაც სერვისი ელოდება.
დაამტკიცეთ მსმენელი, სანამ ქსელს დაადანაშაულებთ
სერვერზე შეამოწმეთ, რა არის მიბმული ss -lunp | grep 53-ის საშუალებით და შეადარეთ პროფილის პროტოკოლსა და პორტს. კლიენტის ქსელიდან გაუშვით კლიენტი უფრო მაღალი დეტალიზაციით, რომ ჟურნალმა აჩვენოს, რომელი მისამართი და ტრანსპორტი სცადა. თუ სერვერი უსმენს და კლიენტის პაკეტები არ აღწევს, მაშინ გზა ან პოლიტიკა უარყოფს მათ, და ეს ქსელის მფლობელთან საუბარია და არა პორტის შეცვლის მიზეზი.
სხვა პორტი მხოლოდ მაშინ ეხმარება, როცა სერვისი ნამდვილად იქ უსმენს და განლაგება ამას ნებას რთავს. მსმენელის გადატანა კონტროლირებული ქსელის ფილტრაციის ასარიდებლად პოლიტიკის გადაწყვეტილებაა და არა პრობლემის მოგვარების ნაბიჯი. ჰკითხეთ ქსელის მფლობელს, რა არის დაშვებული, სანამ სერვისს შეცვლით, რადგან პოლიტიკის დამრღვევი გვერდსაზიარებელი გზა მოგვიანებით მაინც დაიხურება. ჩაწერეთ ეს პასუხი პროფილის გვერდით, რომ შემდეგმა ადამიანმა მოთხოვნა არ გაიმეოროს.
შეამოწმეთ DNS გვირაბის შემდეგ, ცალკე
როცა გვირაბი აწეულია, შეამოწმეთ რეზოლვერის მდგომარეობა VPN-ის ინტერფეისზე და მოითხოვეთ ერთი შიდა და ერთი საჯარო სახელი. თუ შიდა სახელები ჩავარდება, მაშინ როცა გვირაბი ტრაფიკს ატარებს, გაგზავნილი DNS პარამეტრები არ გამოყენებულა, რაც კლიენტის ინტეგრაციის საკითხია და არა ტრანსპორტის. თუ საჯარო სახელები ჩავარდება და შიდა მუშაობს, გაყოფილი გვირაბის პოლიტიკა აკეთებს იმას, რისთვისაც იყო კონფიგურირებული.
DNS ცვლილებები რეზოლვერის მფლობელს დაუტოვეთ. მართული რეზოლვერის კონფიგურაციის გადაწერა ერთი ტესტის გასატარებლად შეიძლება გააფუჭოს კერძო სახელები მანქანაზე ყველაფრისთვის. თუ გვირაბი რეზოლვერს აგზავნის და კლიენტი მას უგულებელყოფს, შეასწორეთ კლიენტის ინტეგრაცია და არ დაამატოთ სტატიკური ჩანაწერი სხვაგან. სტატიკური ჩანაწერები მალავს ჩავარდნას მანამ, სანამ ვინმე ქსელს შეცვლის. ჩაწერეთ, რომელი რეზოლვერი უნდა პასუხობდეს თითოეულ სახელთა სივრცეს.