सवाल निजी कुंजी से सार्वजनिक एसएसएच कुंजी बनाएं?


मान लीजिए कि मेरे पास एक एसएसएच कुंजी है, लेकिन मैंने सार्वजनिक कुंजी भाग हटा दिया है। मेरे पास निजी कुंजी हिस्सा है। क्या कोई तरीका है कि मैं सार्वजनिक कुंजी भाग को पुन: उत्पन्न कर सकता हूं?


202
2017-08-10 14:36


मूल




जवाब:


Ssh-keygen के लिए -y विकल्प का प्रयोग करें:

ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub

'आदमी ssh-keygen' से

 -y      This option will read a private OpenSSH format file and print an
         OpenSSH public key to stdout.

-फ विकल्प के साथ निजी कुंजी निर्दिष्ट करें, आपका आरएसए के बजाय डीएसए हो सकता है। आपकी निजी कुंजी का नाम शायद आपके द्वारा उपयोग किया गया है। नई जेनरेट की गई सार्वजनिक कुंजी उतनी ही होनी चाहिए जितनी आपने पहले उत्पन्न की थी।


239
2017-08-10 14:39



"-टी डीएसए" क्यों? ओपी की कुंजी मास आरएसए है? मैं -t से छुटकारा पाउंगा और इसके बजाय एक -f का उपयोग करूंगा। - innaM
अच्छा बिंदु, तदनुसार अद्यतन किया गया - Kyle Brandt♦
हाँ मेरा मूल रूप से आरएसए था। - Rory
मैक ओएसएक्स 10.9.3 मैवरिक्स पर मुझे कमांड चलाने के बाद 'लोड विफल' मिल रहा है। मैं इसे कैसे हल करूं? - Hyperfocus
मुझे लगता है कि निजी कुंजी पासवर्ड सुरक्षित होने पर आप -N पैरामीटर के साथ यह एक कदम आगे ले सकते हैं: ssh-keygen -f ~/.ssh/id_rsa -y -N "$PASSWORD" > ~/.ssh/id_rsa.pub - ken


समाधान विशेष रूप से विंडोज का उपयोग करने वाले उपयोगकर्ताओं के लिए है

प्रयुक्त उपकरण:

  • Puttygen (पुटी कुंजी जेनरेटर)
  • WinSCP

प्रदर्शन करने के लिए कदम:

  1. ओपन पुटी कुंजी जेनरेटर।
  2. अपनी निजी कुंजी लोड करें (*.ppk फ़ाइल)।
  3. PUTTY कुंजी जनरेटर के "OpenSSH अधिकृत_keys फ़ाइल में चिपकाने के लिए सार्वजनिक कुंजी" से अपने सार्वजनिक कुंजी डेटा की प्रतिलिपि बनाएँ और यदि आप इसका उपयोग करना चाहते हैं तो कुंजी डेटा को "अधिकृत_की" फ़ाइल (नोटपैड का उपयोग करके) पर पेस्ट करें।

स्नैपशॉट फोकटीजन के हिस्सों को फोकस करने के लिए दिखा रहा है:

Snapshot showing portions of Puttygen to focus


6
2017-11-21 10:00



आगे की पढाई: askubuntu.com/questions/53553/... - devprashant
Puttygen OpenSSH (वास्तव में ओपनएसएसएल-विरासत) और एसएसएचकॉम प्रारूप निजीकी 'आयात' भी कर सकता है। और हालांकि विंडोज़ पर उत्पन्न हुआ, इसे यूनिक्स और यूनिक्स संस्करण में भी पोर्ट किया गया है puttygen एक कमांडलाइन (जीयूआई नहीं) कार्यक्रम है; उदाहरण देखें linux.die.net/man/1/puttygen - dave_thompson_085