OpenVPN კლიენტი მთელი LAN-ისთვის OpenWrt-ზე: მუშა თანმიმდევრობა
ინტერფეისის მფლობელობა, ზონის პოლიტიკა, მასკარადი და თითოეული SSID-ის ცხრილები ოთხი ცალკე საქმეა. შეასრულეთ ისინი რიგით და როუტერის მთელ ქსელზე გავრცელებული გვირაბი შეწყვეტს თქვენთან ბრძოლას.
ოთხი დამოუკიდებელი საქმე ერთი გვირაბის უკან აყენებს როუტერის მთელ LAN-ს. გვირაბის მოწყობილობას სჭირდება მფლობელი, ფაირვოლის ზონა, გადათარგმნის სამიზნე ზედა კავშირისკენ და, თუ ზოგიერთი კლიენტი VPN-ის გარეთ უნდა დარჩეს, მარშრუტიზაცია წყაროს მისამართით. გვირაბი, რომელიც უკავშირდება, მაგრამ არაფერი გადის, ჩვეულებრივ ამ ოთხიდან ერთის ნაკლებობას ნიშნავს. დამოკიდებულების რიგით მუშაობა ნიშნავს, რომ ბოლოში მიღებული წარუმატებლობა იმ ნაბიჯს ეკუთვნის, რომელიც ახლა შეცვალეთ. ქვემოთ ყოველი ნაბიჯი მთავრდება რაღაცით, რისი დანახვაც შეგიძლიათ, და ეს შემდეგ ნაბიჯს ვარაუდად არ აქცევს.
გადაწყვიტეთ რა იზიარებს გვირაბს
როუტერს, რომელიც Wi-Fi-სა და DHCP-ს არიგებს, შეუძლია კლიენტი თავად გაუშვას. ეს ყოველ დაკავშირებულ მოწყობილობას გვირაბის უკან აყენებს თითოეულის ცალკე კონფიგურაციის გარეშე, და პატარა ობიექტების უმეტესობა სწორედ ამ წყობას ისურვებდა. გვირაბის ჩავარდნისას ზემოქმედების ფართობიც ამ წყობაშია ყველაზე დიდი, რადგან ყველა მოწყობილობა ერთდროულად კარგავს გზას. LAN-ზე ვერაფერი ინარჩუნებს გარეთ გასასვლელ სამუშაო მარშრუტს.
მეორე როუტერი პირველის უკან, რომელიც კლიენტს საკუთარი ქვექსელით უშვებს, გვირაბს მხოლოდ თავის მოწყობილობებზე ზღუდავს. მისი მოხსნა და მემკვიდრისთვის ახსნა უფრო ადვილია. ფასი ის არის, რომ მარშრუტისა და პორტის გადამისამართების გარეშე ორ მხარეს შორის წვდომა არ არის.
ასე თუ ისე, LAN-ის ქვექსელები განსხვავებული გახადეთ. ერთნაირი დიაპაზონები ერთ მხარეს პირდაპირ დაკავშირებულად აჩვენებს, და ამისგან წარმოქმნილი შავი ხვრელი VPN-ის ხარვეზად იკითხება საათობით.
მიეცით გვირაბს მფლობელი
გამოაცხადეთ გვირაბი ქსელურ ინტერფეისად სახელით, მოწყობილობით და საკუთარი პროტოკოლის გარეშე. შემდეგ ქსელური სისტემა ქმნის და მართავს მოწყობილობას, და ყველაფერი შემდგომი ინტერფეისს მოწყობილობის ნაცვლად სახელით მიმართავს. სწორედ ეს აძლევს ზონას მისი პოვნის საშუალებას.
ერთი და იგივე მოწყობილობა ორ ადგილას არ შექმნათ. გამოცხადებული ინტერფეისის გვერდით ხელით გაკეთებული გვირაბი ქმნის მოწყობილობას, რომელიც არსებობს, მაგრამ ზონაში არ არის, ან ერთს, რომელიც გადატვირთვისას ქრება. ორივე კლიენტის წარუმატებლობას ჰგავს და არც ერთი არ გამოსცემს შეცდომას, რომელიც ნამდვილ მიზეზს დაასახელებს. აირჩიეთ დეკლარაციული გზა და წაშალეთ ხელით გაკეთებული.
სახელი იდენტური შეინარჩუნეთ ქსელის, ფაირვოლისა და VPN-ის კონფიგურაციაში. ზონა ქსელებს სახელით ჩამოთვლის, ამიტომ ერთი ბეჭდვითი შეცდომა გვირაბს ყველა ზონის გარეთ ტოვებს, სანამ თავად ინტერფეისი ჯანმრთელად გამოიყურება. პოლიტიკის გარეშე ჯანმრთელი ინტერფეისი ყველაზე ძნელი შესამჩნევი მდგომარეობაა.
ზონად აქციეთ, შემდეგ გადაამისამართეთ მასში
ფაირვოლის ზონა არის ადგილი, სადაც პოლიტიკა ცხოვრობს: შემავალი, გამავალი, გადამისამართება და მასკარადი. ზონაში არმყოფი გვირაბი იმ ნაგულისხმევებით იმართება, რომლებიც თქვენ არ აგირჩევიათ, და ეს როუტერის კლიენტს იშვიათად სჭირდება. ქვემოთ სტროფები აცხადებს ინტერფეისს, ათავსებს მას ზონაში და უშვებს LAN-ის ტრაფიკს ამ ზონაში.
config interface 'vpn'
option device 'tun0'
option proto 'none'
config zone
option name 'vpn'
list network 'vpn'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
config forwarding
option src 'lan'
option dest 'vpn'
21.02-ზე ძველ გამოშვებებში იგივე ინტერფეისის ხაზი იწერება როგორც option ifname, ამიტომ ჩასმამდე შეამოწმეთ, რომელი ფორმა გაიგოს დაყენებულმა პროგრამულმა უზრუნველყოფამ. გადამისამართების სტროფა არის ნებართვა, რომელიც LAN-ის ტრაფიკს გვირაბის გამოყენების საშუალებას აძლევს. მის გარეშე მოწყობილობა ჩართულია, კლიენტი დაკავშირებულია და ვერც ერთი LAN ჰოსტი ვერ აღწევს გვირაბს. ეს არის ყველაზე გავრცელებული შეტყობინება დაკავშირებულია, მაგრამ ინტერნეტი არ არის როუტერის კლიენტებზე.
მასკარადი VPN-ის ზონაზე ყოველ LAN მისამართს როუტერის გვირაბის მისამართში ახვევს პაკეტის გასვლამდე. ეს აუქმებს უკუგზის მარშრუტის საჭიროებას თქვენს ქვექსელამდე მოპირდაპირე მხარეს.
თუ მოპირდაპირე მხარეს უკვე აქვს თქვენი LAN-ის მარშრუტი, მასკარადის გამორთვა წყაროს მისამართებს ხილულს ტოვებს და თითო კლიენტის ჟურნალებს მნიშვნელობას აძლევს. აირჩიეთ ერთი და ჩაწერეთ რომელი, რადგან ორი არჩევანი მოგვიანებით სხვადასხვა მხარდაჭერის კითხვას წარმოშობს. ნაგულისხმევი LAN-იდან WAN-ზე გადამისამართების მოშორება ცალკე გადაწყვეტილებაა საკუთარი შედეგით. მოხსენით და როუტერის საკუთარი ინტერნეტ წვდომაც წავა მასთან ერთად.
NAT-ში ნამდვილი ზედა კავშირი დაასახელეთ
პროგრამულ უზრუნველყოფაში, სადაც გადათარგმნის წესი ხელით არის დაწერილი, გამავალი ინტერფეისი ის ველია, რომელიც ფუჭდება. წესი, რომელიც ასახელებს vlan2 არაფერს აკეთებს, როცა სესია მთავრდება ppp0-ზე. წესს, რომელსაც ინტერფეისი საერთოდ არ აქვს, შეუძლია გადათარგმნას ის ტრაფიკი, რომელიც დახურული უნდა დარჩენილიყო. არც ერთი შეცდომა თავის თავს არ აცხადებს, რადგან გვირაბი განაგრძობს მუშაობას.
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
შეცვალეთ ppp0 ამ წესში იმ ინტერფეისით, რომელიც აიღეთ ip route -იდან ან გაშვებული ინტერფეისების სიიდან, შემდეგ უყურეთ მრიცხველს, სანამ LAN ჰოსტი გვერდს ხსნის. ერთი პროვაიდერის როუტერზე ზედა კავშირისთვის ერთი მასკარადის წესი ჩვეულებრივ საკმარისია. გვირაბის ინტერფეისისთვის მეორე წესი პირველის შემცვლელი არ არის.
შემდეგ დაამატეთ კლიენტის პარამეტრები, რომლებიც წყვეტენ, რა შედის გვირაბში. redirect-gateway მითითება კლიენტის ინტერნეტ ტრაფიკს VPN-ის გავლით აგზავნის, და მის გარეშე გვირაბი მხოლოდ იმ მარშრუტებს ატარებს, რომლებსაც სერვერი უბიძგებს. DNS-ზე ხელის დადებამდე შეამოწმეთ მიღებული მარშრუტების ცხრილი.
Wi-Fi გაყავით მეორე ცხრილით
მარშრუტების ერთი ცხრილი ორ ნაგულისხმევს ვერ იტევს. ამიტომ მეორე SSID-ს, რომელმაც გვირაბი უნდა გვერდი აუაროს, სჭირდება საკუთარი ქვექსელი და საკუთარი ცხრილი. მიანიჭეთ გვირაბიან SSID-ს საკუთარი დიაპაზონი, შემდეგ მხოლოდ ის დიაპაზონი გაატარეთ გვირაბში ცხრილის ამომრჩევი წესით.
პოლიტიკური მარშრუტიზაციის პაკეტები OpenWrt-ზე ზუსტად ამ კომბინაციას გამოხატავს. ხელითაც შეიძლება, წყაროს წესით და ცხრილით, რომლის ნაგულისხმევი გვირაბის მოწყობილობაზე მიუთითებს.
შეამოწმეთ გაყოფა ორივე ქსელიდან. გვირაბიან SSID-ზე კლიენტმა VPN-ის გასასვლელი მისამართი უნდა აჩვენოს, ხოლო ჩვეულებრივ SSID-ზე კლიენტმა პროვაიდერის. როცა ორივე ერთნაირად გამოიყურება, წესი არასწორ წყაროს ემთხვევა ან ცხრილს საერთოდ არავინ ეკითხება. გადაერთების შემდეგაც სცადეთ, რადგან ინტერფეისის სახელზე დამოკიდებული წესი ტყდება, როცა მოწყობილობა ნომერს იცვლის.
ეჭვი შეიტანეთ საათსა და მოწყობილობის დროშაში
ეს persist-tun დროშა გვირაბის მოწყობილობას გადატვირთვებს შორის ტოვებს. ეს სერვერს უხდება და აბნევს კლიენტს, რომლის მდგომარეობაც თავიდან უნდა აშენდეს. გამორთეთ ის როუტერის კლიენტის დიაგნოსტიკის დროს, რადგან წარუმატებელ მოლაპარაკებას გადარჩენილი მოწყობილობა მალავს, რომელი ნაბიჯი გატყდა სინამდვილეში. დააბრუნეთ ის მას შემდეგ, რაც კლიენტი საიმედოდ დაუკავშირდება, და არა ადრე.
საათი მეორე წყნარი მარცხია. ბატარეით მომუშავე საათის გარეშე როუტერი ეპოქიდან იწყებს, რაც ნიშნავს, რომ სერტიფიკატის შემოწმებები ვარდება მანამ, სანამ NTP დაეწევა. შეადარეთ ჟურნალის დროის ნიშნები რეალურ დროს სერტიფიკატზე ხელის დადებამდე, რადგან კლიენტი, რომელიც ჩატვირთვიდან წუთში უკავშირდება, ჩვეულებრივ დროის სინქრონიზაციას ელოდება.