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

დამხმარეს გაშვებული პროფილი პროგრამაა, არა პარამეტრების ფაილი

route და dhcp-option-ის მსგავსი ინსტრუქციები აღწერენ მდგომარეობას, რომელიც კლიენტმა უნდა დაამყაროს, და კლიენტი მათ მონაცემებად განიხილავს. up სკრიპტი განსხვავებულია: კლიენტი მას პროცესად უშვებს და აძლევს კავშირის დეტალებით სავსე გარემოს, ამიტომ ყველაფერი, რაც ავტორმა დაწერა, თქვენი ანგარიშის უფლებებით მუშაობს. ლეპტოპზე, სადაც მომხმარებელი ადმინისტრატორია, ეს ფართო კარია დანართად ან ფორუმის თემიდან ჩასმული ფაილისთვის. განსხვავება სტილისტური არ არის, ეს კონფიგურაციასა და კოდს შორის განსხვავებაა.

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

რა წყვეტს სინამდვილეში გაშვებას და როგორ გამოიყურება დამშვები ხაზები

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

script-security 2
up /etc/openvpn/update-resolv-conf.sh
down /etc/openvpn/update-resolv-conf.sh

დონე 0 უარყოფს გარე პროგრამებს, ხოლო დონე 1, ნაგულისხმევი, მხოლოდ კლიენტის ჩაშენებულ შესრულებად ფაილებს უშვებს, ამიტომ კაუჭს 2 ან მეტი სჭირდება; დონე 3 ძირითადად ძველი პაროლების გადაცემისთვის არსებობს და ჯობია მოერიდოთ. კაუჭით მოწოდებულ პროფილს ინსტრუქციაც და ის დონეც სჭირდება, ამიტომ ფაილის ქვედა ნაწილთან ერთი ხაზი იმავე განხილვის ღირსია, რაც სერტიფიკატის ბლოკი. OpenVPN-ის სახელმძღვანელო ჩამოთვლის ნებართვის დონეებს, და ღირს მისი ფორმულირების წაკითხვა იმასთან ერთად, რასაც პროფილი რეალურად ითხოვს.

საკუთრება, გზა და რით იკვებება დამხმარე

პროფილი, რომელსაც ენდობით, მაგრამ რომელიც მიუთითებს სკრიპტზე, რომლის გადაწერაც სხვა ანგარიშს შეუძლია, სანდო შეთანხმება არ არის, რადგან გუშინდელი შემოწმება უკვე არ აღწერს, რა მუშაობს დღეს. შეამოწმეთ დამხმარის მფლობელი და რეჟიმი, და დარწმუნდით, რომ კონფიგურირებული გზა თქვენი შემოწმებული ფაილისკენ მიდის და არა იმ სახელისკენ, რომელსაც სხვა რამ შეიძლება ჩრდილი დაჰყაროს. არგუმენტები და გარემოც იმავე ხედვის ღირსია: კლიენტი კავშირის დეტალებს კაუჭს გადასცემს, და დამხმარე, რომელიც მთელ გარემოს ლოგავს, შეიძლება მხარდაჭერის ბილეთში საიდენტიფიკაციო მონაცემები ჩაწეროს. უპირატესობა მიანიჭეთ ოპერატორის ან პლატფორმის დოკუმენტირებულ ინტეგრაციას უკავშირო პოსტიდან კოპირებულ DNS სკრიპტს, რადგან ერთი ფაილისთვის მოჩხუბარი ორი რეზოლვერის მმართველი წარმოშობს ჩავარდნას, რომელიც გატეხილ VPN-ს ჰგავს.

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

დასუფთავების ჩავარდნები გვირაბის წასვლის შემდეგ ჩნდება

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

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

დამხმარის განხილვა და გასასვლელის შენარჩუნება

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

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

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