SSH کلید بنانے کے لیے ssh-keygen کا استعمال کیسے کریں۔

How Use Ssh Keygen Generate An Ssh Key



SSH یا محفوظ شیل۔ مختلف انتظامی کاموں کے لیے کلائنٹ اور سرور کے درمیان رابطوں کو محفوظ بنانے کے لیے ایک مفید خفیہ کردہ پروٹوکول ہے۔ یہ مختلف قسم کے تصدیق کے نظام کی حمایت کرتا ہے۔ عوامی کلید پر مبنی تصدیق اور پاس ورڈ پر مبنی تصدیق زیادہ تر استعمال ہوتی ہے۔ کلیدی بنیاد پر تصدیق پاس ورڈ پر مبنی تصدیق سے زیادہ محفوظ ہے۔ SSH کے لیے توثیقی کلیدی جوڑے ssh-keygen ٹول کے ذریعے تیار کیے جاتے ہیں جو کہ مختلف مقاصد کے لیے استعمال کیے جا سکتے ہیں جیسے میزبان کی توثیق ، ​​خودکار لاگ ان وغیرہ وغیرہ۔

نحو:

اس کمانڈ کی ترکیب ذیل میں دی گئی ہے۔ یہ توثیقی کلیدی جوڑے بنانے کے لیے بہت سے اختیارات کی حمایت کرتا ہے جن کا بعد میں بیان کیا گیا ہے۔







ssh-keygen [] [-ب بٹس] [-یہ کیسے؟] [-f output_keyfile] [-ایم فارمیٹ]

[-t dsa|ایکڈسا|ecdsa-sk|ed25519|ed25519-sk|آر ایس اے]

[-ایک نیا_پاسفریز۔] [-O آپشن۔] [-فراہم کنندہ]

ssh-keygen کے مختلف اختیارات:

مختلف قسم کے ssh-keygen اختیارات استعمال کرنے کے مقاصد ذیل میں بیان کیے گئے ہیں۔



اختیار مقصد۔
-تو یہ میزبان کیز کو ڈیفالٹ کلیدی فائل پاتھ ، خالی پاس فریز ، کلیدی قسم کے ڈیفالٹ بٹس اور تبصرہ کے ساتھ تیار کرتا ہے۔
-ب بٹس یہ کلید میں بٹس کی تعداد کی وضاحت کے لیے استعمال ہوتا ہے جو بنائی جائے گی۔
-یہ کیسے؟ یہ نئے تبصرے کی وضاحت کے لیے استعمال ہوتا ہے۔
-سی یہ عوامی اور نجی کلیدی فائلوں کے تبصرے کو تبدیل کرنے کی درخواست کے لیے استعمال ہوتا ہے۔
-E فنگر پرنٹ_ہش۔ یہ ہیش الگورتھم کی وضاحت کے لیے استعمال ہوتا ہے جو فنگر پرنٹ ظاہر کرنے کے لیے استعمال کیا جائے گا۔
-اور یہ پرائیویٹ یا پبلک کلید فائل پڑھنے اور stdout پر پرنٹ کرنے کے لیے استعمال ہوتا ہے۔
-F میزبان نام | [میزبان نام]: بندرگاہ۔ یہ مخصوص میزبان نام کو نامی_ہوسٹس فائل میں اختیاری پورٹ نمبر کے ساتھ تلاش کرنے کے لیے استعمال کیا جاتا ہے۔
فائل کا نام۔ یہ کلیدی فائل کے فائل نام کی وضاحت کے لیے استعمال ہوتا ہے۔
-ایچ یہ ایک معروف_ہوسٹس فائل کو ہیش کرنے کے لیے استعمال ہوتا ہے۔ یہ تمام میزبان ناموں اور پتوں کو مخصوص فائل میں ہیشڈ پریزینٹیشنز سے بدل دے گا۔ اصل مواد کو .old لاحقہ والی فائل میں منتقل کیا جائے گا۔
-میں یہ ایک غیر خفیہ کردہ نجی (یا عوامی) کلیدی فائل کو پڑھنے کے لیے استعمال ہوتا ہے۔
-تھی یہ ایک یا زیادہ سرٹیفکیٹس کے مواد کو پرنٹ کرنے کے لیے استعمال ہوتا ہے۔
- یہ ایک مخصوص عوامی کلید فائل کا فنگر پرنٹ دکھانے کے لیے استعمال ہوتا ہے۔
-ایک نیا_پاسفریز۔ یہ نیا پاسفریز فراہم کرنے کے لیے استعمال ہوتا ہے۔
-پاس ورڈ یہ پرانا پاس فریز فراہم کرنے کے لیے استعمال ہوتا ہے۔
-t dsa | ecdsa | ecdsa-sk | ed25519 | ed25519-sk | آر ایس اے یہ کلید کی قسم کی وضاحت کے لیے استعمال کیا جاتا ہے جو بنائی جائے گی۔

ssh-keygen کا استعمال کرتے ہوئے چابیاں بنائیں:

آپ ssh-keygen کو اختیارات کے ساتھ یا بغیر کسی آپشن کے چلا کر SSH کلیدی جوڑے بنا سکتے ہیں۔ SSH کلیدی جوڑے بنانے کے مختلف طریقے اس ٹیوٹوریل کے اس حصے میں دکھائے گئے ہیں۔ آپ کو سرور مشین میں لاگ ان ہونا پڑے گا جہاں OpenSSH نے چابیاں بنانے کے لیے انسٹال کیا ہے۔



بغیر کسی آپشن کے کلیدی جوڑے بنائیں:

مندرجہ ذیل کمانڈ کسی بھی آپشن کو استعمال کیے بغیر کلیدی جوڑے بنائے گی۔





$ssh-keygen

مذکورہ کمانڈ پر عمل کرنے کے بعد ، آپ فائل کا نام فراہم کرسکتے ہیں جہاں کلید محفوظ کی جائے گی یا ڈیفالٹ فائل نام کو بچانے کے لیے انٹر کی دبائیں۔ یہاں ، انٹر کی دبائی گئی ہے۔ اگلا ، آپ خالی پاس ورڈ سیٹ کرنے یا پاس ورڈ سیٹ کرنے کے لیے دوبارہ انٹر بٹن دبائیں۔



ایک ہی آپشن کے ساتھ کلیدی جوڑے بنائیں:

مندرجہ ذیل کمانڈ -t آپشن کے ساتھ کمانڈ میں بیان کردہ rsa قسم کے کلیدی جوڑے تیار کرے گی۔

$ssh-keygen -ٹیآر ایس اے

پچھلی کمانڈ کی طرح ، آپ فائل کا نام فراہم کرسکتے ہیں یا کلیدی جوڑوں کو ذخیرہ کرنے کے لیے ڈیفالٹ فائل کا نام استعمال کرسکتے ہیں اور SSH کنکشن کے لیے پاس ورڈ یا خالی پاس ورڈ سیٹ کرسکتے ہیں۔

متعدد اختیارات کے ساتھ کلیدی جوڑے بنائیں:

2000 بٹس اور کمنٹ ویلیو کے ساتھ rsa ٹائپ کے کلیدی جوڑے بنانے کے لیے درج ذیل کمانڈ کو چلائیں ،[ای میل محفوظ].

$ssh-keygen -ٹیآر ایس اے 2000۔ -سی ' [ای میل محفوظ] '

پچھلی کمانڈ کی طرح ، آپ فائل کا نام فراہم کرسکتے ہیں یا کلیدی جوڑوں کو ذخیرہ کرنے کے لیے ڈیفالٹ فائل کا نام استعمال کرسکتے ہیں اور SSH کنکشن کے لیے پاس ورڈ یا خالی پاس ورڈ سیٹ کرسکتے ہیں۔ اگر آپ نے مندرجہ بالا کمانڈ پر عمل کرنے سے پہلے کلیدی فائلیں تیار کی ہیں ، تو یہ آپ سے کلیدی فائل کو اوور رائٹ کرنے کو کہے گا یا نہیں۔ اگر آپ 'y' ٹائپ کرتے ہیں ، تو یہ نئی پیدا ہونے والی فائل کو نئی چابیاں کے ساتھ اوور رائٹ کر دے گی۔

عوامی کلید کو سرور پر کاپی کریں:

سرور مشین میں عوامی کلید شامل کرنے کے لیے سرور مشین سے درج ذیل کمانڈ چلائیں۔ کمانڈ کلید کو سرور میں کاپی کرے گی اور اسے سرور تک رسائی کے لیے مجاز_کی فائل میں کلید شامل کرنے کے لیے ترتیب دے گی۔

$ssh-copy-id-میں۔/.ssh/id_rsa فہمیدہ۔فہمیدہ ورچوئل باکس

مندرجہ ذیل آؤٹ پٹ ظاہر ہوگا اگر عوامی کلید سرور مشین میں پہلے شامل نہ کی گئی ہو۔

سرور کی تشکیل فائل میں ترمیم کریں:

اگر آپ پاس ورڈ پر مبنی تصدیق اور سرور کے روٹ یوزر لاگ ان کی اجازت دینا چاہتے ہیں تو آپ کو سرور مشین کی کنفیگریشن فائل میں کچھ آپشنز کو فعال کرنا ہوگا۔ سرور کی SSH کنفیگریشن فائل کا راستہ/etc/ssh/sshd_config ہے۔ کسی بھی ٹیکسٹ ایڈیٹر میں فائل کھولیں۔ نانو ایڈیٹر میں فائل میں ترمیم کرنے کے لیے درج ذیل کمانڈ چلائیں۔

$سودو نینو /وغیرہ/ssh/sshd_config

پاس ورڈ پر مبنی تصدیق کو فعال کرنے اور روٹ یوزر لاگ ان کے لیے اجازت مقرر کرنے کے لیے درج ذیل لائنوں کے ساتھ فائل میں اضافہ یا ترمیم کریں۔

پاس ورڈ کی تصدیقجی ہاں

پرمٹ روٹ لاگ ان۔جی ہاں

فائل کو محفوظ کریں اور بند کریں۔ SSH سروس کو دوبارہ شروع کرنے کے لیے درج ذیل کمانڈ چلائیں۔

$سودوsystemctl دوبارہ شروع کریںssh

SSH کلائنٹ سے لاگ ان کریں:

کلائنٹ مشین میں لاگ ان کریں جہاں سے آپ سرور کے ساتھ رابطہ قائم کرنا چاہتے ہیں تاکہ چیک کریں کہ آیا SSH کنکشن کام کر رہا ہے۔ ٹرمینل کھولیں اور سرور مشین کی شناخت شامل کرنے کے لیے درج ذیل کمانڈ چلائیں۔

$ssh-add

کلائنٹ مشین سے سرور مشین سے منسلک ہونے کے لیے درج ذیل ssh کمانڈ چلائیں۔ اس ٹیوٹوریل کے پچھلے حصے میں سرور کی SSH کنفیگریشن فائل میں پاس ورڈ کی تصدیق اور روٹ لاگ ان کو فعال کر دیا گیا ہے۔ لہذا ، صارف کو SSH کنکشن کامیابی سے قائم کرنے کے لیے سرور مشین کا درست روٹ پاس ورڈ فراہم کرنا ہوگا۔

$ssh <کوhref='mailto: [email protected]'>فہمیدہ۔10.0.2.15۔

کلائنٹ کی جانب سے سرور سے SSH کنکشن قائم کرنے کے بعد مندرجہ ذیل اسی طرح کی پیداوار ظاہر ہوگی۔

نتیجہ:

ssh-keygen مختلف طریقوں سے SSH کلیدی جوڑی پیدا کرنے کے لیے استعمال کرتا ہے اس ٹیوٹوریل میں وضاحت کی گئی ہے۔ مجھے امید ہے کہ اوبنٹو صارف اس ٹیوٹوریل کو پڑھنے کے بعد SSH کنکشن قائم کرنے کے لیے ssh-keygen استعمال کرکے SSH کیز تیار کرے گا۔