پالیسی اور مطابقت
سرور اور حفاظتی پالیسی معاون ہوں تو Ed25519 مفید انتخاب ہے۔ مطابقت یا ضابطہ چاہے تو RSA 3072 یا 4096 لیں۔ RSA کلید پرانا SHA-1 ssh-rsa دستخط نہیں: جدید RSA، SHA-2 بھی استعمال کرتا ہے۔ پرانے دستخط عالمی طور پر دوبارہ فعال نہ کریں۔
پوسٹ کوانٹم ہائبرڈ: ssh-mldsa44-ed25519
ssh-mldsa44-ed25519 پوسٹ کوانٹم دستخط ML-DSA-44 کو Ed25519 کے ساتھ ملاتا ہے: جعلی لاگ اِن کے لیے دونوں الگورتھم کو توڑنا ضروری ہوگا۔ Beta 0.1.2 میں CH-J Key Generator اس قسم کی کلید بناتا ہے، اور CH-J Tools اسے کسی سرور پر صرف اسی وقت شامل کرتا ہے جب اس سرور پر OpenSSH 10.6 یا اس سے نیا ورژن چل رہا ہو۔ پرانے اجرا اسے مسترد کر دیتے ہیں؛ ان میں سے کچھ، مثلاً Ubuntu 26.04 میں 10.2p1، صرف تجرباتی …@openssh.com شکل کو پہچانتے ہیں، جسے CH-J Tools استعمال نہیں کرتا۔ جن سرورز اور کلائنٹس میں اس کی معاونت نہیں ہے، ان کے لیے متبادل کے طور پر Ed25519 یا RSA کلید محفوظ رکھیں۔ نیچے دیے گئے ربط کی رہنمائی میں بتایا گیا ہے کہ ڈسٹری بیوشن کے پیکیج کے ساتھ ساتھ OpenSSH 10.6 کو الگ سے کیسے نصب کیا جائے۔
مقامی بنائیں اور نجی کلید محفوظ کریں
ایک کمانڈ اور نیا فائل نام چنیں؛ موجودہ کلید پر نہ لکھیں۔ سوال پر پاس فریز مقرر کریں۔ صرف .pub سرور پر جاتا ہے، نجی کلید کلائنٹ پر رہتی ہے۔ CH-J Key Generator، Beta 0.1.0 میں پہلے ہی موجود ہے۔
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_chj
ssh-keygen -t rsa -b 3072 -f ~/.ssh/id_rsa_chj
ssh-keygen -lf ~/.ssh/id_ed25519_chj.pub -E sha256عوامی کلید لگائیں، پھر آزمائیں
پوری عوامی کلید ہدف اکاؤنٹ کی ~/.ssh/authorized_keys میں ایک سطر پر رکھیں۔ Linux پر مالک اور عام طور پر .ssh کے لیے 700، authorized_keys کے لیے 600 موڈ دیکھیں۔ موجودہ سیشن کھلا رکھیں اور پرانی رسائی بدلنے سے پہلے دوسرا لاگ ان آزمائیں۔ صارف اور ہوسٹ کی کلید کے مقصد مختلف ہیں۔
ls -ld ~/.ssh ~/.ssh/authorized_keys
ssh -o IdentitiesOnly=yes -i ~/.ssh/id_ed25519_chj user@server.example