SSH Keys

اپنی SSH keys manage کریں — دیکھیں، generate کریں، اور Git اور remote سرورز کے لیے استعمال کریں۔

SSH Keys کیا ہیں؟

SSH keys remote سرورز اور services کو password ٹائپ کیے بغیر اپنی شناخت ثابت کرنے کا ایک طریقہ ہے۔ یہ جوڑوں میں کام کرتی ہیں: ایک private key جو آپ کی مشین پر رہتی ہے اور ایک public key جو آپ سرور کے ساتھ share کرتے ہیں (جیسے GitHub یا remote Linux box)۔

جب آپ connect کرتے ہیں، سرور چیک کرتا ہے کہ آپ کی private key فائل پر موجود public key سے match کرتی ہے یا نہیں۔ اگر match کرے، تو آپ داخل ہو جاتے ہیں — کوئی password نہیں چاہیے۔ یہ passwords سے زیادہ secure ہے اور بہت زیادہ convenient، خاص طور پر Git operations کے لیے جو دن میں درجنوں بار ہوتے ہیں۔


موجودہ SSH Keys دیکھیں

1DevTool SSH Keys manager کھولنے پر آپ کی ~/.ssh directory خودکار طریقے سے scan کرتا ہے۔ اسے کھولنے کے لیے، Settings → SSH Keys پر جائیں۔

آپ کو اپنے system پر پائی گئی تمام key pairs کی فہرست نظر آئے گی، key نام، algorithm، اور creation date کے ساتھ۔ اگر آپ نے پہلے سے GitHub یا کسی اور service کے لیے SSH keys set up کی ہوئی ہیں، تو وہ فوری طور پر یہاں ظاہر ہوں گی — کوئی import نہیں چاہیے۔


نئی Key Generate کریں

اگر آپ کے پاس ابھی تک SSH key نہیں ہے، یا آپ کسی مخصوص service کے لیے ایک الگ key چاہتے ہیں:

  1. + Generate Key کلک کریں
  2. ایک algorithm منتخب کریں:
    • Ed25519 — recommended۔ RSA سے چھوٹی، تیز، اور زیادہ secure۔
    • RSA 4096 — پرانے سرورز کے ساتھ compatible جو Ed25519 سپورٹ نہیں کرتے۔
  3. اختیاری طور پر passphrase شامل کریں — یہ private key کو disk پر encrypt کرتی ہے تاکہ اگر کوئی آپ کی files تک رسائی حاصل کرے تو بھی محفوظ رہے۔
  4. Generate کلک کریں

Key pair ~/.ssh/ میں معیاری naming کے ساتھ محفوظ ہوتی ہے (id_ed25519 اور id_ed25519.pub، یا اسی طرح)۔


GitHub یا GitLab میں شامل کریں

key generate کرنے کے بعد، آپ کو GitHub یا GitLab کو public key کے بارے میں بتانا ہوگا:

  1. 1DevTool میں اپنی key کے ساتھ Copy Public Key کلک کریں
  2. github.com پر جائیں → Settings → SSH and GPG Keys → New SSH Key
  3. اسے ایک نام دیں (مثلاً "MacBook Pro 2024")، public key paste کریں، اور Add SSH Key کلک کریں

GitLab کے لیے: Preferences → SSH Keys پر جائیں اور وہی steps فالو کریں۔


Git کے لیے SSH Key استعمال کریں

1DevTool کو یہ بتانے کے لیے کہ repository سے push اور pull کرتے وقت کون سی SSH key استعمال کرنی ہے:

  1. Git پینل کھولیں
  2. اوپر کے قریب account badge (آپ کا username یا avatar) کلک کریں
  3. اس repo کے لیے جو SSH key استعمال کرنی ہے وہ منتخب کریں

یہ setting per-repository محفوظ ہوتی ہے۔


Remote سرور سے Connect کریں

SSH کے ذریعے project شامل کرتے وقت (+ کلک کریں → Add via SSH)، آپ dropdown list سے منتخب کر سکتے ہیں کہ کنکشن کے لیے کون سی SSH key استعمال کرنی ہے۔ 1DevTool ہر بار اس سرور سے connect کرنے پر وہی key استعمال کرے گا۔

SSH keys management
Auto scan SSH keys