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

დაიწყეთ კონვერტით: ვინ მოაწერა ხელი ამ პროფილს

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

თუ ფაილი Mac-ზე გაქვთ, შეამოწმეთ ის სანამ ტელეფონამდე მიაღწევს. უსაფრთხოების ხელსაწყო ხსნის CMS-ის კონვერტს და ბეჭდავს იმ plist-ს, რომელსაც მოწყობილობა წაიკითხავს — იგივე შიგთავსი, მხოლოდ ინსტალაციის ღილაკის გარეშე. Apple-ის დოკუმენტაცია კონფიგურაციის აღსრულების შესახებ ხელმოწერას წარმომავლობის დადასტურებად აღწერს და სწორედ ეს არის აქ განხილული ფარგლები.

security cms -D -i corp-vpn.mobileconfig -o corp-vpn.plist
plutil -p corp-vpn.plist

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

გახსენით თითოეული პეილოუდი და დაასახელეთ, რას აყენებს

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

plutil -extract PayloadContent xml1 -o - corp-vpn.plist |
  grep -E 'PayloadType|PayloadDisplayName'

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

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

თვალყური ადევნეთ სერტიფიკატებს იმ კავშირამდე, რომელიც იყენებს მათ

ჩამოთვალეთ პაკეტში არსებული სერტიფიკატები და თითოეული შეაუღლეთ დავალებას. კლიენტის სერტიფიკატი ამ მოწყობილობას კარიბჭისთვის წარადგენს, მისი გამცემი CA ამ კავშირის ნდობის ჯაჭვში უნდა იყოს, ხოლო პროქსისთვის ან შიდა სერვისისთვის დაყენებული ფესვური სერტიფიკატი ავტომატურად არ არის ნდობის საყრდენი ყველა HTTPS საიტისთვის. iOS-ზე ხელით დაყენებული ფესვური სერტიფიკატი TLS-ისთვის არასანდოდ რჩება, სანამ მას პარამეტრებში, ინფორმაციაში, სერტიფიკატის ნდობის პარამეტრებში ჩართავთ, ხოლო მართვის მეშვეობით მიწოდებული ფესვური სერტიფიკატი ამ ნაბიჯის გარეშე ითვლება სანდოდ. ეს განსხვავება ზუსტად იმას ხსნის, რატომ არის მნიშვნელოვანი პეილოუდის დანიშნულება.

openssl pkcs7 -inform DER -in corp-vpn.mobileconfig -print_certs -noout
security find-certificate -a -c "Corp Root" -p | openssl x509 -noout -subject -dates

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

ინსტალაციის შემდეგ: შეამოწმეთ და იცოდეთ, რას აკეთებს წაშლა

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

profiles show -type configuration
scutil --nc list

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

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

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