কেন দুটি OpenVPN সার্টিফিকেট একটি CCD নীতি ভাগ করতে পারে
ক্রমিক নম্বর কোনো VPN ব্যবহারকারীনাম নয়। পরেরটি সই করার আগে আপনার সার্ভার আসলে যে সাধারণ নামটি ম্যাপ করে, তা প্রতিটি গৃহীত CA-তে সংরক্ষিত রাখুন।
একটি CA দুটি সার্টিফিকেট সই করতে পারে যা একই OpenVPN ক্লায়েন্ট-নির্দিষ্ট কনফিগারেশন পায়, এবং দুটির কোনোটিতেই কিছুই কাউকে সতর্ক করে না। ক্রমিক নম্বর আলাদা, কী আলাদা, এবং একটি সাংগঠনিক ইউনিট বদলালেই সম্পূর্ণ সাবজেক্টও আলাদা হয়ে যায়। সার্ভার এক নামের মাধ্যমে প্রতি-ক্লায়েন্ট নীতি নির্ধারণ করে, এবং সেই নামই একমাত্র জিনিস যা অনন্য হতে হবে।
সার্ভার একটি নাম নির্ধারণ করে, ক্রমিক নম্বর নয়
সাধারণ সার্টিফিকেট অনুসন্ধানে সার্ভার উপস্থাপিত সার্টিফিকেট থেকে সাধারণ নামটি নেয় এবং সেই নামের একটি client-config-dir এন্ট্রি খোঁজে। ক্রমিক নম্বর কখনও অনুসন্ধানে ঢোকে না। সাধারণ নাম ছাড়া সব ক্ষেত্রে আলাদা দুটি সার্টিফিকেট একই ফাইলে পৌঁছায়, তাই দ্বিতীয় সংযোগটি প্রথম ডিভাইসের নির্দিষ্ট ঠিকানা ও পুশ করা রুট উত্তরাধিকার করে।
এভাবেই CA-র দিকের অনন্যতা যাচাই পাস করে, অথচ VPN তখনও সংঘর্ষে পড়ে। দুটি যাচাই দুটি ভিন্ন প্রশ্নের উত্তর দেয়।
কিছু সই করার আগে ঠিক করুন কার্যকর নামটি কী হওয়া উচিত, এবং যে ডিভাইস বা অ্যাকাউন্টের এটি, তার পাশে তা লিখে রাখুন। নাম, মালিক, উদ্দেশ্য ও সার্টিফিকেট ফিঙ্গারপ্রিন্টের একটি রেজিস্ট্রি বেশিরভাগ স্থাপনা কভার করে। এটি ছাড়া সার্টিফিকেট আর্কাইভই একমাত্র রেকর্ড যে কোন নাম কোন ডিভাইসের, এবং সেই আর্কাইভ একটি অনুমোদিত প্রতিস্থাপন আর বিদ্যমান নাম দাবি করা দ্বিতীয় ডিভাইসের মধ্যে পার্থক্য করতে পারে না। নথিভুক্তির সময়ই নামটি সংরক্ষিত রাখুন, দুজন অপারেটর একসাথে ইস্যু করতে পারলে লকের অধীনে।
ম্যাপিং আসলে কোন নাম ব্যবহার করে
সাধারণ সার্টিফিকেট অনুসন্ধান সাধারণ নাম ব্যবহার করে। প্রমাণিত ব্যবহারকারীনাম ম্যাপ করার জন্য সাজানো সার্ভার এর বদলে সেই মানটি ব্যবহার করে, যা নীতি নির্বাচনের জন্য সার্টিফিকেটের সাধারণ নামকে অপ্রাসঙ্গিক করে তোলে। কোন ম্যাপিং কার্যকর আছে দেখতে চলমান কনফিগারেশন পড়ুন।
দুটি ম্যাপিং একসাথে থাকতে পারে, এবং তখন ফলাফল নির্ভর করে সার্ভার তাদের যে ক্রমে নির্ধারণ করে তার উপর। যে ব্যবহারকারীনাম ম্যাপিং সাধারণ নামে ফিরে যায়, সে রেজিস্ট্রি কখনও অনুমোদন করেনি এমন সার্টিফিকেট চুপচাপ গ্রহণ করবে। যে কমান্ড নামটি তৈরি করেছে তার পাশে কার্যকর নামটি লিখুন, যাতে পরের অপারেটরকে ক্রমটি আবার আবিষ্কার করতে না হয়। প্রতি ম্যাপিংয়ে একটি সংযোগ পরীক্ষা করা সস্তা এবং প্রশ্নটির নিষ্পত্তি করে।
ম্যাপিং যা-ই তৈরি করুক, সেটাই সংরক্ষণের মান। CA-তে সাধারণ নাম সংরক্ষণ করা, অথচ সার্ভার ব্যবহারকারীনামের উপর নির্ভর করছে, ভুল জিনিস সংরক্ষণ করা।
দুটি CA একই নাম অনুমোদন করতে পারে
একটি VPN পরিষেবা একাধিক ইস্যুকারী কর্তৃপক্ষকে বিশ্বাস করতে পারে, এবং প্রতিটি কর্তৃপক্ষ কোন নাম নেওয়া হয়েছে সে বিষয়ে নিজের ধারণা রাখে। দুটি স্বতন্ত্র CA ভিন্ন ডিভাইসের জন্য একই সাধারণ নাম অনুমোদন করতে পারে, এবং সার্ভার কোনো অভিযোগ ছাড়াই দুটি সার্টিফিকেটই গ্রহণ করে। বিশ্বাস-বান্ডলের প্রতিটি কর্তৃপক্ষের তালিকা করুন, কেবল যেটি থেকে আপনি সাধারণত ইস্যু করেন তা নয়। দ্বিতীয় কর্তৃপক্ষের সার্টিফিকেট প্রথমবার ব্যবহারের সময়ই ব্যর্থতা দেখা দেয়।
একই যুক্তি সেই CA-র ক্ষেত্রেও প্রযোজ্য যা সাধারণ নামের অনন্যতার বদলে সম্পূর্ণ সাবজেক্টের অনন্যতা প্রয়োগ করে।
একই সাধারণ নাম শেয়ার করা কিন্তু সাংগঠনিক ইউনিটে ভিন্ন দুটি সার্টিফিকেটের সাবজেক্ট আলাদা, তাই CA কোনো দ্বন্দ্ব রিপোর্ট করে না, অথচ সার্ভার একটি নাম দেখে। ডিফল্ট ধরে নেওয়ার বদলে আপনার ইস্যুকারী টুল আসলে যে সেটিং ব্যবহার করে তা দেখুন। openssl ca ডকুমেন্টেশনে unique_subject পরিচালনা সেখানকার প্রাসঙ্গিক নব, এবং সেই টুলের চারপাশের র্যাপারগুলো সাধারণত এটি প্রতিস্থাপনের বদলে প্রকাশ করে।
নবায়ন একটি সংরক্ষিত পুনর্ব্যবহার, সংঘর্ষ নয়
যে নবায়ন নামটি ধরে রাখে তা ইচ্ছাকৃত পুনর্ব্যবহার, এবং রেজিস্ট্রির তা সরল ভাষায় বলা উচিত। পুরোনো ফিঙ্গারপ্রিন্ট ও নতুনটি একই নামের অধীনে লিখুন, যাতে পর্যালোচক প্রতিস্থাপন আর দখলকে আলাদা করতে পারেন। সার্ভারের duplicate-cn অপশন এর সঙ্গে সম্পর্কহীন: এটি একসাথে চলা সেশন নিয়ন্ত্রণ করে, নথিভুক্তি বা নাম সংরক্ষণ নয়। উভয় ক্রেডেনশিয়াল কতদিন থাকতে পারে এবং পুরোনোটি কখন গ্রহণ করা বন্ধ হবে তা ঠিক করুন।
প্রতিস্থাপন হস্তান্তরের আগে সার্টিফিকেটে আসলে কী আছে তা পড়ে দেখুন। ফাইলের নাম যা-ই প্রস্তাব করুক, সাবজেক্ট লাইনই সেই ক্ষেত্র যা সার্ভার ম্যাপ করবে।
openssl x509 -in device42.crt -noout -subject -serial -issuerবাতিলকরণ সাধারণত একটি সার্টিফিকেটকে তার ইস্যুকারীর অধীনে চিহ্নিত করে, তাই একটি ক্রমিক নম্বর অবসরে পাঠালে একই কর্তৃপক্ষের সঠিকভাবে ইস্যু করা প্রতিস্থাপন ক্ষতিগ্রস্ত হয় না। এই আচরণই একটি পরিচ্ছন্ন নবায়নের জন্য দরকার, এবং এ কারণেই বাতিলকরণ দুটি ডিভাইসের শেয়ার করা নাম পরিষ্কার করতে পারে না। ব্যবহারকারী ডিভাইসটি দেখার আগে একটি পরীক্ষামূলক সংযোগে কার্যকর নীতি-নাম ও বরাদ্দকৃত ঠিকানা যাচাই করুন। তারপর পুরোনো ক্রেডেনশিয়ালটি ইচ্ছাকৃতভাবে অবসরে পাঠান এবং আপনি তা করেছেন বলে লিখে রাখুন।