حکم ca.crt یا index.txt کے نہ ہونے کی وجہ سے رک جاتا ہے، حالانکہ CA مہینوں سے سرٹیفکیٹ جاری کر رہا ہے۔ خود اختیار میں کچھ نہیں بدلا؛ حکم نے محض کہیں اور دیکھا۔ Easy-RSA 3 ایک آپشن، ماحول کے متغیر، vars فائل اور بلٹ اِن ڈیفالٹ سے PKI ڈائریکٹری کا تعین کرتا ہے، اور ان میں سے کوئی بھی تعیناتی کے اختیار سے دور اشارہ کر سکتا ہے۔ کچھ بھی بنانے سے پہلے جانچیں کہ کون جیتا۔

خرابی ڈائریکٹری کا نہیں، فائل کا نام لیتی ہے

انسٹالیشن ڈائریکٹری اور جاری کنندہ کی ڈائریکٹری دو مختلف جگہیں ہیں۔ مشین پر easyrsa ملنا صرف یہ ثابت کرتا ہے کہ ٹول انسٹال ہے، یہ نہیں کہ اس نے وہ اختیار پایا جس پر آپ کا VPN بھروسا کرتا ہے۔

اسی لیے پیکیج دوبارہ انسٹال کرنا یا init مرحلہ دوبارہ چلانا کارآمد لگتا ہے اور کچھ نہیں بدلتا۔

باقی سب سے پہلے منتخب کنندہ جانچیں

Easy-RSA 3 میں منتخب کنندہ ہے EASYRSA_PKI یا اس سے مطابق --pki-dir آپشن۔ کوئی مطلق راستہ دیں، مثلاً --pki-dir=/srv/pki/office ، اور جواب اس پر منحصر ہونا بند کر دے گا کہ آپ اتفاق سے کہاں کھڑے تھے۔ یہ ایک عادت اس بگ کی پوری قسم ختم کر دیتی ہے، خاص طور پر cron یا CI چیک آؤٹ سے چلنے والی اسکرپٹس کے لیے۔

پہلے نسل کی تصدیق کریں ، کیونکہ Easy-RSA 2 کی vars فائل اور build-key عادت Easy-RSA 3 کے متوقع ماڈل سے مختلف ہے۔ easyrsa --version کسی بھی دوسرے کام سے پہلے نسل چھاپتا ہے، اور ./easyrsa --help ذیلی احکامات کی فہرست دیتا ہے: ہدف build-key کا مطلب 2.x ہے، جبکہ build-client-full کا مطلب 3.x ہے۔ پرانا KEY_DIR راستہ 3.x کال میں لے جانا محض اس لیے کہ ڈائریکٹری کا نام مانوس لگتا ہے، بالکل یہی خرابی پیدا کرتا ہے۔

اگر ورژن سٹرنگ اور حکم کا نحو مطابقت نہ رکھیں تو رکیں اور نصب شدہ ریلیز کی اپنی دستاویزات پڑھیں۔

ترجیح ہاری ہوئی vars فائل کی وضاحت کرتی ہے

دستاویزی ترجیح کمانڈ لائن آپشن، پھر ماحول، پھر vars فائل، پھر بلٹ اِن ڈیفالٹ ہے۔ اس لیے vars میں درست قدر وراثت میں ملنے والے ماحول متغیر سے ہار جاتی ہے، اور یہی اس ناکامی کا خاموش نسخہ ہے۔ پورا ماحول ٹکٹ میں انڈیلنے کے بجائے مطلوبہ متغیرات اور فائل کے انتخاب کی جانچ کریں۔ دونوں کے درمیان فرق عام طور پر ایک راز ہوتا ہے۔

زنجیر کو ترتیب سے چلیں اور نوٹ کریں کہ حکم نے جو راستہ استعمال کیا وہ کس ذریعہ نے دیا۔ یہ جاننے کے بعد، اصلاح ایک جھنڈا یا export ہے، نیا سرٹیفکیٹ اختیار نہیں۔

Easy-RSA کنفیگریشن حوالہ منتخب کنندہ اور ترجیح کی تعریف کرتا ہے، اور ٹکٹ میں رکھا جانے والا حوالہ یہی ہے۔

جاری کنندہ کی تصدیق عوامی مواد سے کریں

عام فائل پر مبنی جاری کنندہ کے ساتھ، پڑھیں ca.crt اور اس کا فنگر پرنٹ اس جاری کنندہ ریکارڈ سے ملائیں جسے آپ نے منظور کیا۔ مماثل موضوع نام شناخت کا ثبوت نہیں، اور production نامی ڈائریکٹری بھی نہیں۔ آپ کی ملی ہوئی فائل کو اس اختیار سے جوڑتا صرف فنگر پرنٹ ہے جس پر آپ کے ساتھیوں کو بھروسا کرنے کو کہا گیا تھا۔

صرف پڑھنے کی جانچ کافی ہے: openssl x509 -in /srv/pki/office/ca.crt -noout -subject -issuer -serial -fingerprint -sha256.

پھر ڈائریکٹری کا کردار طے کریں۔ کلائنٹ کی استعمال کردہ درخواست ڈائریکٹری جاری کنندہ ڈیٹا بیس نہیں، اور آف لائن رکھی گئی دستخطی کلید کا ہر VPN ہوسٹ پر کوئی کام نہیں۔ غائب ca.key اس ترتیب میں ڈیزائن کی خصوصیت ہے، متبادل اختیار گھڑنے کی اجازت نہیں۔

اگر حالت واقعی میں ختم ہو گئی ہو

کبھی راستہ درست ہوتا ہے اور حالت واقعی میں وہاں نہیں ہوتی۔ خالی index.txt اور دوبارہ شروع شدہ سیریل کاؤنٹر آپ کو ایسی PKI دیتے ہیں جو صحت مند دکھتی ہے اور ان سرٹیفکیٹس کے بارے میں کچھ ثابت نہیں کر سکتی جو اس نے کبھی نہیں دیکھے: تجدید پرانے کو منسوخ نہیں کرے گی، اور نئے نمبر تاریخ سے ٹکرائیں گے۔ اس کے بجائے CA کے منظور شدہ بیک اپ سے بحال کریں، کیونکہ کہیں اور خالی PKI شروع کرنا صرف خرابی کو منتقل کرتا ہے اور پیچھے دوسرا، غیر متعلق اختیار چھوڑ دیتا ہے۔

جب راستہ اور جاری کنندہ متفق ہوں تو اگلی ناکامی کو اس کی حقیقت کے مطابق لیں۔ Permission denied، پاس فریز کی ضرورت والی دستخطی کلید، اور غائب اجرا ریکارڈ تین مختلف خرابیاں ہیں، اور ان میں سے صرف ایک اس ڈائریکٹری سے متعلق ہے جو آپ نے ابھی درست کی۔

راستے کی غلطی چھپانے کے لیے کبھی کلید کی خفیہ کاری نہ ہٹائیں اور نہ ڈائریکٹری اجازتیں وسیع کریں۔ غلطی درست کرنا سستا ہے؛ مرمت نہیں۔

متعلقہ مضامین