iPhone-এ স্বাক্ষরিত VPN প্রোফাইল ইনস্টল করছেন? পেলোডগুলো পড়ুন
স্বাক্ষরিত প্রোফাইল প্রমাণ করে কে এটি প্যাকেজ করেছে, কী ইনস্টল করে তা নয়। VPN বা রুট CA-তে ভরসা করার আগে খাম, প্রতিটি পেলোড ও প্রতিটি সার্টিফিকেট দেখুন।
প্রোফাইল সেটিংসে একটি নাম, একটি স্বাক্ষরকারী ও একটি ইনস্টল বোতাম নিয়ে আসে, আর বেশিরভাগ মানুষ স্বাক্ষরকারীর লাইনটিই পড়ে। সেই লাইন একটি প্রশ্নের উত্তর দেয়: স্বাক্ষর যাচাইয়ের নিয়ম অনুযায়ী এই সেটিংসগুলো কে প্যাকেজ করেছে। এটি বলে না যে 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
প্রোফাইলে একটি ব্যবস্থাপনা নথিভুক্তি থাকলে ইনস্টলের পরে নয়, আগেই অপসারণের পরিণতি পড়ুন। ওই নথিভুক্তি সরালে তার সঙ্গে সম্পর্কিত কনফিগারেশনগুলোও যায় এবং ডিভাইস কীভাবে নথিভুক্ত হয়েছিল তার উপর নির্ভর করে পরিচালিত অ্যাপও সরাতে পারে। সার্টিফিকেট ভুল দেখালে এটি চেষ্টা করার মতো মেরামতের ধাপ নয়। কিছু সরানোর আগে প্রশাসককে জিজ্ঞাসা করুন কোন পেলোডের সমস্যাটি।
নির্দেশনাটি চারটি আলাদা উত্তরে শেষ হয়: কে প্যাকেজে স্বাক্ষর করেছে, এটি কোন পেলোড ইনস্টল করে, প্রতিটি সংযোগ কোন পরিচয় ও ট্রাস্ট ব্যবহার করে, এবং অপসারণ কী সঙ্গে নিয়ে যাবে। এগুলো আলাদা রাখুন, তাহলে একটি স্বাক্ষরিত প্রোফাইল সবুজ টিকের বদলে পর্যালোচিত সিদ্ধান্ত হয়ে ওঠে।