প্রশ্ন কিভাবে আমি SSH ব্যক্তিগত কী থেকে পাবলিক কী উদ্ধার করব?


দ্বারা উত্পন্ন একটি এসএসএইচ ব্যক্তিগত কী ssh-keygen একটি পাবলিক কী অংশ রয়েছে। কিভাবে আমি এই প্রাইভেট কী থেকে এই পাবলিক কী উদ্ধার করব? আমি আমার পাবলিক কী হারিয়েছি এবং সার্ভারে এই সার্বজনিক কীটির সামগ্রী রাখতে হবে authorized_keys ফাইল এবং একটি নতুন কী জুড়ি তৈরি করতে চান না।

বিকল্পভাবে phrased: আমি কিভাবে তৈরি করব id_rsa.pub একটি থেকে ফাইল id_rsa ফাইল?


371
2017-07-18 09:57


উত্স


pbcopy > ~/.ssh/id_rsa.pub উফ। - Nick T
@ নিক্ট - পিবিসিপি একটি ম্যাক্সএক্স কমান্ড। প্লাস, আপনি ক্লিপবোর্ডে রিবুট, লগ আউট, বা অন্য কোনও অনুলিপি করলে এটি নিরর্থক। - jsnfwlr


উত্তর:


আমি সার্ভার ফল্টের উত্তর খুঁজে পেয়েছি: ব্যক্তিগত কী থেকে একটি পাবলিক এসএসএইচ কী তৈরি করবেন?

ইচ্ছা -y পাবলিক কী আউটপুট:

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

একটি পাশাপাশি, পাবলিক কী মন্তব্য হারিয়ে গেছে। আমি একটি সাইট আছে যা মন্তব্য প্রয়োজন (Launchpad?), তাই আপনি সম্পাদনা করতে হবে ~/.ssh/id_rsa.pub এবং মন্তব্য এবং কী তথ্য মধ্যে একটি স্থান সঙ্গে প্রথম লাইন একটি মন্তব্য যোগ করুন। একটি উদাহরণ পাবলিক কী নীচের truncated দেখানো হয়।

ssh-rsa AAAA..../VqDjtS5 ubuntu@ubuntu

যেসব কীগুলি এসএসএইচ এজেন্টে যোগ করা হয়েছে (যে কোনও প্রোগ্রাম যা পটভূমিতে চলছে এবং পুনরায় বারবার কীফিল পাসফ্রেজ পুনরায় প্রবেশ করার প্রয়োজন এড়াতে পারে), আপনি ssh-add -L এজেন্টে যোগ করা হয়েছে এমন কীগুলির জন্য সর্বজনীন কীগুলি তালিকাভুক্ত করার কমান্ড (মাধ্যমে ssh-add -l)। এসএসএইচ কীটি একটি স্মার্ট কার্ডে সঞ্চয় করা (এবং ব্যক্তিগত কী ফাইল অ্যাক্সেস করা সম্ভব নয়) এটি দরকারী।


577
2017-07-18 10:12



আপনি এটা পিষ্টক টুকরা তৈরি। ধন্যবাদ - bragboy
আপনার ব্যক্তিগত কী ফাইল দয়া করে নোট করুন ~/.ssh/id_rsa আপনার ব্যবহারকারী নাম সীমাবদ্ধ করা আবশ্যক। ব্যবহার $ sudo chmod 600 ~/.ssh/id_rsa এবং এটিতে সীমাবদ্ধ করার জন্য আপনার রুট শংসাপত্রগুলি প্রবেশ করান, তারপরে আপনি সর্বজনীন কী ফাইলটি আউটপুট করতে পারেন। অন্যথায় আপনি unrestricted ব্যক্তিগত কী ফাইল সতর্কতা পাবেন। - Mark Mikofski
@ মার্ককিকোফস্কি কোন প্রয়োজন নেই sudo, আপনি ইতিমধ্যে ব্যক্তিগত কী মালিক থাকা অনুমিত হয়। অন্যথায় আপনি এটি প্রথম স্থানে পড়তে পারবেন না। - Lekensteyn
@ লেকেনস্টেন ধন্যবাদ, অবশ্যই আপনি ঠিক! এছাড়াও 400 প্রাইভেট কী ফাইল লিখতে লিখতে কোন প্রয়োজন নেই। সঠিক কমান্ড হতে হবে $ chmod 400 ~/.ssh/id_rsa - Mark Mikofski
ব্যক্তিগত কী মন্তব্য হারিয়ে গেছে। দেখ stackoverflow.com/questions/38290929/... - weberjn


এটি একটি সমাধান বিশেষ করে ব্যবহারকারীরা তাদের রিমোট মেশিনগুলিতে উইন্ডোজ ব্যবহার করে তাদের দূরবর্তী মেশিনে এসএসএইচ ব্যবহার করে, যেমন আমাজন এডাব্লিউএস এবং জিসিই তে মেঘ ছবি সহ।

(দাবি পরিত্যাগী)

আমি সম্প্রতি জিইসিতে নতুন স্থাপিত ভিএম চিত্রগুলিতে রিমোট লগ ইন করার এই সমাধানটি ব্যবহার করেছি।


ব্যবহৃত সরঞ্জাম:

  1. puttygen
  2. WinSCP

সঞ্চালনের পদক্ষেপ:

  1. Puttygen ব্যবহার করে একটি পাবলিক / ব্যক্তিগত কী জোড়া তৈরি করুন।
  2. মেঘ বা দূরবর্তী অবস্থানের মধ্যে আপনার সার্ভারে একটি সর্বজনীন কী আপলোড করুন।

বর্ণনা (এটি কিভাবে করবেন):

  1. একটি কী / জোড়া তৈরি করুন অথবা একটি বিদ্যমান ব্যক্তিগত কী ব্যবহার করুন:

    যদি আপনার একটি ব্যক্তিগত কী থাকে:

    Poottygen খুলুন, চাপ লোড বাটন এবং আপনার ব্যক্তিগত কী (* .pem) ফাইল নির্বাচন করুন।

    যদি তুমি করো না একটি ব্যক্তিগত কী আছে:

    • খুলুন,
    • পরামিতি বিভাগের মধ্যে পছন্দসই কী টাইপ SSH2 DSA (আপনি RSA বা DSA ব্যবহার করতে পারেন) নির্বাচন করুন ... এবং এটি গুরুত্বপূর্ণ যে আপনি পাসফ্রেজ ক্ষেত্রটি খালি রাখুন,
    • জেনারেট করুন এবং জেনারেট (জনসাধারণ / ব্যক্তিগত) কী জোড়ার নির্দেশাবলী অনুসরণ করুন।

    Sample Key Generation pic

  2. একটি নতুন 'অনুমোদিত_keys' ফাইল তৈরি করুন (নোটপ্যাড সহ):

    PUTTY কী জেনারেটরটির "ওপেনএসএইচ অনুমোদিত_কীস ফাইলে পেস্ট করার জন্য সর্বজনীন কী" থেকে আপনার সার্বজনিক কী ডেটা অনুলিপি করুন এবং কী তথ্য "authorized_keys" ফাইলে আটকে দিন।

    এই ফাইলটিতে শুধুমাত্র পাঠ্যের একটি লাইন আছে কিনা তা নিশ্চিত করুন।

  3. একটি লিনাক্স সার্ভারে কীটি আপলোড করুন:

    • উইনএসসিপি খুলুন,
    • SFTP ফাইল প্রোটোকল নির্বাচন করুন এবং আপনার এসএসএইচ শংসাপত্রের সাথে লগ ইন করুন।
    • সাফল্যের সাথে, আপনি আপনার দূরবর্তী মেশিনে হোম ডিরেক্টরি গঠন দেখতে পাবেন।

    দূরবর্তী মেশিনে হোম ডিরেক্টরিতে অনুমোদিত_keys ফাইল আপলোড করুন।

  4. সঠিক অনুমতি সেট করুন:

    একটি করুন .ssh ডিরেক্টরি (যদি এটি বিদ্যমান না হয়)

    কপি করুন authorized_keys.ssh ডিরেক্টরি ফাইল (এই বিদ্যমান কোনো প্রতিস্থাপন করা হবে authorized_keys ফাইল; এই নোট নিন)।

    ফাইলটি বিদ্যমান থাকলে, কেবল এই ফাইলের বিষয়বস্তু বিদ্যমান ফাইলটিতে যুক্ত করুন।

    অনুমতি সেট করতে কমান্ড চালান:

    sudo chmod 700 .ssh && chmod 600 .ssh/authorized_keys
    

এখন আপনি প্রতিটি সময় শংসাপত্র প্রবেশ না করে একটি দূরবর্তী মেশিনে ssh করতে সক্ষম হবে।

আরও পড়া:

  1. উইন্ডোজ এর অধীনে এসএসএইচ কী তৈরি এবং আপলোড করা

  2. OpenSSH কী, সার্টিফিকেট .pem এবং .pub ব্যবহার করে পাসওয়ার্ড ছাড়া প্রমাণীকরণ


12
2017-11-20 06:18



আপনার হোম ডিরেক্টরি এনক্রিপ্ট করা হয়, তাহলে এটি করুন: askubuntu.com/questions/439184/... - devprashant
যদিও আপনার উত্তরটি আসলে প্রশ্নটির সাথে প্রাসঙ্গিক নয় তবে আপনার উত্সাহের কারণে আমি এটির জন্য ভোট দিচ্ছি। - Truong Nguyen