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

იდენტიფიკაციის მოთხოვნაზე პასუხის ორი გზა

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

მეორე მოდელი არის auth-user-pass , რომელიც ფაილზე მიუთითებს, სადაც ფაილი საცავია და კლიენტი მას კითხულობს, როცა მნიშვნელობა სჭირდება. აქ მნიშვნელოვანი გამჟღავნება არ არის პროცესის მეხსიერება, არამედ ამ ფაილის ნებართვები და მფლობელობა. გაშვების გაფრთხილება კონფიგურაციის დირექტივებიდან მოდის და არა იქიდან, თუ როგორ აწვდით პაროლს, ამიტომ ის ორივე მოდელში ჩნდება და არცერთზე არ მიუთითებს.

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

რას შლის სინამდვილეში auth-nocache

ინტერაქტიული შესვლისას --auth-nocache შენახულ ასლს მეხსიერებიდან შლის მისი გამოყენების შემდეგ. ფასია ახალი მოთხოვნა ყოველ ხელახალი მოლაპარაკების ინტერვალში, რადგან შემდეგ რაუნდს არ შეუძლია გამოიყენოს ის, რაც გაუქმდა.

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

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

სად იშლება ფაილზე დაფუძნებული გზა

კლიენტი, რომელიც root-ად იწყებს გვირაბის მოწყობილობის გასახსნელად და შემდეგ გადადის user და group -ზე, იდენტიფიკაციის ფაილს ორჯერ კითხულობს: ერთხელ გადასვლამდე, ერთხელ შემდგომ ხელახალ მოლაპარაკებაზე. თუ ფაილი 600 რეჟიმშია და root-ს ეკუთვნის, მეორე წაკითხვა ვერ ხერხდება და წარუმატებლობა საათში გამოვლინდება როგორც ავთენტიფიკაციის შეცდომა, რომელიც სერვერის პრობლემას ჰგავს. შეამოწმეთ კლიენტის ჟურნალი ხელახალი მოლაპარაკების ინტერვალის ირგვლივ, შემდეგ ანგარიში და ფაილი ერთად.

stat -c '%a %U:%G' /etc/openvpn/client.creds
ps -o user:12,args -C openvpn | head

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

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

შემთხვევა, რომელიც ნამდვილად ითხოვს პარამეტრს

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

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

ეს ორი მიზეზი ცალ-ცალკე შეინახეთ პროფილის კომენტარებში, თორემ შემდეგი ადმინისტრატორი იფიქრებს, რომ პარამეტრი იქ იმ მიზეზითაა, რომელსაც თვითონ აირჩევდა.

შედარება ერთ გადაწყვეტილებაში

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

არცერთი მოდელი დამოუკიდებლად არ ხდის შენახულ პაროლს უსაფრთხოს, და არცერთი არ ხდის გაშვების გაფრთხილებას მნიშვნელოვანს.

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

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