OpenConnect vpnc-script: რომელი ფაილი მუშაობს?
მარშრუტებისა და DNS-ის დამყენებელი დამხმარე გამიჯნულია გვირაბის კლიენტისგან. იპოვეთ ის გზა, რომელსაც მოქმედი კლიენტი იყენებს, სანამ მას ფორუმიდან აღებული ასლით შეცვლით.
OpenConnect-ს შეუძლია გვირაბის ხელის ჩამორთმევა დაასრულოს და მაინც დაგტოვოთ კერძო ქვექსელამდე მარშრუტის გარეშე, რადგან კლიენტი და დამხმარე, რომელიც ლოკალური ქსელის მდგომარეობას ცვლის, ორი სხვადასხვა პროგრამაა. აუთენტიფიკაცია ამტკიცებს, რომ კარიბჭემ სესია მიიღო; ის არაფერს ამტკიცებს იმაზე, თუ რომელი ინტერფეისი, რომელი მარშრუტები ან გამხსნელის რომელი პარამეტრები დაყენდა შემდეგ. დამაბნეველი მოხსენებების უმეტესობა მოდის დამხმარის ძველი პასუხიდან აღებული ასლით შეცვლიდან, რაც მანქანაზე ყველა კავშირის ქცევას ცვლის. სანამ მის რომელიმე ნაწილს შეცვლით, იპოვეთ ის დამხმარე, რომელსაც მოქმედი კლიენტი ნამდვილად იძახებს.
ორი პროგრამა, ორი პასუხისმგებლობა
კლიენტს ეკუთვნის ტრანსპორტი, აუთენტიფიკაცია და გვირაბის მოწყობილობა. ცალკე დამხმარეს ეკუთვნის ის, რაც ლოკალურ სისტემაში ხდება გვირაბის არსებობისას: მისამართირება ინტერფეისზე, მარშრუტები კარიბჭის მიერ გამოცხადებულ ქვექსელებზე და გამხსნელის კონფიგურაცია. OpenConnect-ის დამხმარის დოკუმენტაცია აღწერს ამ გამიჯვნას და იმ გარემოს, რომელსაც დამხმარე იღებს. განსხვავება მნიშვნელოვანია ხარვეზის დროს, რადგან უარყოფილი პაროლი და დაკარგული მარშრუტი ერთი და იგივე შემთხვევა არ არის, თუნდაც სამუშაო მაგიდა ორივესთვის ერთ დიალოგს აჩვენებდეს.
ამ გამიჯვნის გახსენება ასევე ხსნის, თუ რატომ შეიძლება კავშირმა წარმატება გამოაცხადოს, მაშინ როცა კერძო სახელები ჯერ კიდევ არ იხსნება. გვირაბი ორივე შემთხვევაში აწეულია და განსხვავდება მხოლოდ ლოკალური ინტეგრაციის ეტაპი.
იპოვეთ დამხმარე, რომელსაც მოქმედი კლიენტი იყენებს
გზა დგინდება პაკეტის აწყობისას და შეიძლება გადაიწეროს ყოველ გამოძახებაზე, ამიტომ სხვა დისტრიბუტივიდან დამახსოვრებულ ფაილს ამ კავშირთან შეიძლება არაფერი ჰქონდეს საერთო. ჰკითხეთ მოქმედ პროცესს და არა იმ დოკუმენტაციას, რომელიც შემთხვევით გახსნილი გაქვთ.
openconnect --version
ps -o args= -C openconnect
dpkg -L openconnect | grep -i script
ls -l /etc/vpnc/ 2>/dev/null
თუ პროცესის სტრიქონი ატარებს --script არგუმენტს, ეს ფაილი იმარჯვებს კომპილირებულ ნაგულისხმევზე. ძველი გზები, როგორიცაა /etc/vpnc/vpnc-script შეიძლება არსებობდეს და მაინც გამოუყენებელი დარჩეს, ამიტომ მათი წაშლა ან შეცვლა ახალ აწყობაზე არაფერს ცვლის. შეამოწმეთ შეცვლის თარიღიც, რადგან დამხმარე, რომელსაც წლების განმავლობაში არავინ შეხებია, ძლიერი ნიშანია, რომ პაკეტის ნაგულისხმევი ასრულებს სამუშაოს.
NetworkManager-ის ინტეგრაცია მესამე მფლობელია, საკუთარი დამხმარითა და პროფილის პარამეტრებით. ამ ინტეგრაციის ზემოდან მეორე მარშრუტის ან გამხსნელის სკრიპტის დადება აორმაგებს მარშრუტებს და ტოვებს გამხსნელს, რომელსაც ორი პროგრამა თავისად თვლის. აირჩიეთ ერთი მფლობელი კავშირზე და გამორთეთ მეორე ტესტამდე.
წაიკითხეთ პირველი წარუმატებელი ოპერაცია და არა ბოლო გაფრთხილება
ინტერფეისის კონფიგურაცია, მარშრუტების დაყენება, გამხსნელის არჩევა და მოძველებული მდგომარეობის გასუფთავება ცალკეული ნაბიჯებია, და ბოლოს დაბეჭდილი გაფრთხილება ხშირად გასუფთავების ჩივილია და არა ის ხარვეზი, რომელმაც კავშირი გაწყვიტა. წაიკითხეთ ზემოთ, სანამ არ მიაღწევთ პირველ კონკრეტულ წარუმატებელ ოპერაციას. დამხმარის შეცდომა, რომელიც ასახელებს ფაილს ან მისამართს, ღირს უფრო მეტი, ვიდრე დაშლის ხმაურის ათი ხაზი.
შეადარეთ განზრახული ლოკალური შედეგი დაკვირვებულს: გვირაბის მოწყობილობა არსებობს, ცნობილ კერძო მისამართამდე მარშრუტი მის გავლით მიდის და გამხსნელი კერძო სახელზე პასუხობს. დამხმარე, რომელიც პირველ ორში წარმატებულია და მესამეში ვარდება, მიუთითებს გამხსნელის პოლიტიკაზე და არა მარშრუტიზაციაზე. დამხმარე, რომელიც მოწყობილობას საერთოდ არ აკონფიგურირებს, ალბათ არასოდეს გაშვებულა, და ეს ნებართვების საკითხია და არა ქსელის. ნებისმიერი ლოგიკის გადაწერამდე დაადასტურეთ გაშვების ბიტი და სერვისის ანგარიში.
შეამოწმეთ დაკავშირება, ხელახალი დაკავშირება და გათიშვა
კონფიგურაცია კონტრაქტის მხოლოდ ნახევარია, რადგან იმავე დამხმარემ გვირაბის დახურვისას უნდა აღადგინოს ან მოხსნას მის საკუთრებაში არსებული მდგომარეობა. დამხმარე, რომელიც მარშრუტებს ამატებს და არასოდეს ხსნის, ტოვებს მანქანას მოძველებული გზით, რომელიც სესიაზე დიდხანს ცოცხლობს.
ip -brief address show tun0
ip route get 10.24.8.15
resolvectl status tun0
journalctl -u NetworkManager -b --no-pager | grep -i -E 'vpnc|script'
პირველი სამი გაუშვით დაკავშირებულ მდგომარეობაში, გათიშეთ და შემდეგ კვლავ გაუშვით და დაადასტურეთ, რომ მარშრუტი და გამხსნელის ჩანაწერი გაქრა. მეოთხე სტრიქონი გვიჩვენებს, დაიძახეს თუ არა დამხმარე საერთოდ და რომელი გაშვების გზა გამოიყენა სერვისმა. შეინახეთ ეს ორი გამოსავალი ბილეთში, რადგან სწორედ „ადრე და შემდეგ“-ის შედარება ხდის გასუფთავების შეცდომას აშკარას.
შეინახეთ დამხმარე შეფუთული და სერვისის ანგარიშისთვის გაშვებადი, რადგან თქვენს გარსში მოქმედი სკრიპტი მაინც შეიძლება უარყონ შეზღუდული სერვისის პოლიტიკის ქვეშ. როცა მორგება ნამდვილად საჭიროა, დააფიქსირეთ მისი მიზანი და მფლობელი და შეადარეთ შეფუთულ ვერსიას ყოველ განახლებაზე. დამხმარის აუხსნელი განშტოება ერთ-ერთი იმ მცირერიცხოვან რამ არის, რაც მომუშავე კავშირს ერთი წლის შემდეგ ჩააგდებს.