এসএসএইচ কী আমাকে পাসফ্রেজের জন্য জিজ্ঞাসা করছে?


35

আমার একটি পাবলিক / প্রাইভেট কী জুড়ি আছে। তাদের কারও সাথেই কোনও প্রকারের পাসফ্রেজ যুক্ত নেই।

যখনই আমি বেসরকারী বা পাবলিক হয় তা ব্যবহার করার চেষ্টা করি (এবং আমি নিশ্চিত যে আমার কেবলমাত্র পাবলিক কী ব্যবহার করা উচিত), আমি একটি পাসফ্রেজের জন্য জিজ্ঞাসাবাদ করি এবং অবশ্যই অবশ্যই সংযোগ করতে পারি না।

এই সম্পর্কে কিভাবে পেতে কারও কারও ধারণা আছে? আমি কি কিছু কমান্ড ভুলভাবে টাইপ করছি? আমি আমার ~ / .ssh / কনফিগারেশন ফাইলে (সঠিকভাবে, যেহেতু এই একই একই সেটআপটি অন্য সার্ভারে কাজ করে) ~ / .ec2 / key.ppk- এ সংরক্ষিত কী সহ একটি সার্ভারে প্রবেশ করার চেষ্টা করছি am

আমি একটি পাসফ্রেজের সাথে একটি নতুন ব্যক্তিগত কী উত্পন্ন করার জন্য এবং তারপর কীটি ব্যবহার করে এবং পরে আমি পাসফ্রেজটি টাইপ করি, তখনও এটি ব্যর্থ হয় put

উত্তর:


28

প্রথমে এটি প্রাইভেট কী যা পাস বাক্যাংশ থাকবে। এটি রিমোট সার্ভারে সঞ্চিত পাবলিক কীটির বিরুদ্ধে বৈধতা দেয়।

সর্বোত্তম অনুমান যে আপনি একটি পুট্টি প্রাইভেট কী ( ppk) কী ফর্ম্যাট ওপেনশ ব্যবহার করে চেষ্টা করছেন এটি কাজ করে না .... পটিটিজেনের ওপেনশারের জন্য রফতানির বিকল্প রয়েছে যদি এটি হয় তবে।

ssh-rsa AAAAB3NzaC1y...... etc

আমি এটিও ধরে নিয়েছি যে আপনি যে সার্ভারটি চালনা করার চেষ্টা করছেন সেটি আপনার পাবলিক কীটি অনুমোদিত কী ফাইলটিতে ( ~/.ssh/authorized_keysসাধারণভাবে) সঠিকভাবে সঞ্চিত আছে ।

অন্য অনুমানটি হ'ল সঠিক কীটি নির্বাচন করা হয়নি। কিছু জিনিস আমি চেষ্টা করব:

কীগুলি পাস-বাক্যাংশটি ব্যবহার করে পুনরায় সেট করা হচ্ছে ssh-keygen, এর মতো ...

$ ssh-keygen -f ~/.ec2/key.ppk -p

এটি নিশ্চিত করবে যে বাস্তবে আপনার কীটির ইতিমধ্যে ইতিমধ্যে কোনও পাস-বাক্যাংশ রয়েছে কিনা (বা না)।

দ্বিতীয়ত, আমি আপনার সার্বজনীন কী স্পষ্টভাবে আউটপুট উল্লেখ করে একটি ভার্বোজ আউটপুট ব্যবহার করে সংযোগ দেওয়ার চেষ্টা করব:

$ ssh host -i ~/.ec2/key.ppk -vvv

এটি আপনাকে কী চলছে সে সম্পর্কে আরও ধারণা দেবে।


সঠিক, পুটিটিতে কাজ করে এমন কী থেকে পুটটিজেন তৈরি করা একটি কী key আমি যখন একই সার্ভারে (মেশিন যা সাইগউইন দৃষ্টান্তটি হোস্ট করে) থেকে পুটি করি তখন ঠিক একই কী দিয়ে এটি দুর্দান্ত কাজ করে। আমি যখন সাইগউইন থেকে এসএসএসের মাধ্যমে সংযোগ দেওয়ার চেষ্টা করি তখন এটি বোমা ফাটিয়ে দেয়। আমি কীভাবে এই কাজটি করব তা নিয়ে আমি বিভ্রান্ত।
llaskin

6
আমি মনে করি mrverrall এর পয়েন্টগুলি হ'ল পুটিটিওয়াই প্রাইভেট কী এর ফাইল ফর্ম্যাটটি ওপেনএসএইচএইচ-র জন্য ব্যবহৃত ফাইল ফর্ম্যাট (সাইগউইনের এসএসএস ক্লায়েন্ট) এর মত নয়। সুতরাং ওপেনএসএইচ প্রাইভেট কী ডেটা ব্যবহার করতে ব্যর্থ হচ্ছে কারণ এটি ডেটার অর্থ কী তা বুঝতে পারে না। তবে পুটির একটি "এক্সপোর্ট" বিকল্প রয়েছে, সুতরাং আপনি প্রয়োজনীয় "পিইএম" ফর্ম্যাটে ডেটা পেতে পারেন।
ফিল পি

ফাইলটি সঠিক ফর্ম্যাটে থাকলে এই ত্রুটিটিও দেওয়া হয় - সুতরাং ডাবল এবং ট্রিপল চেকটি যদি ম্যানুয়ালি তৈরি করে থাকে তবে আপনি সঠিকভাবে অনুলিপি করেছেন এবং আটকে দিয়েছেন।
ড্যানিয়েল সোকলভস্কি

ssh-rsa AAAAB3NzaC1y...... etcওপেনশ থেকে বিন্যাসটি কি ঠিক আছে? আমার ব্যক্তিগত কীতে এই ফর্ম্যাটটি রয়েছে। শিরোনামে বলা হয়েছে: PuTTY-User-Key-File-2: ssh-rsa Encryption: none Comment: imported-openssh-key Public-Lines: 6তবে ফাইলটি id_rsa ফাইল হিসাবে সংরক্ষিত। এর অর্থ কি এই যে পিপিপি ফর্ম্যাটে এখনও রয়েছে, যদিও ফাইলটির নাম স্রেফid_rsa
alpha_989

এখানে বিভিন্ন ফর্ম্যাট জন্য উত্তর খুঁজে। আমার ক্ষেত্রে ফাইলটির প্রসারণ না .ppkহওয়া সত্ত্বেও এটি এখনও পুটি ফর্ম্যাটে ছিল যা আমাকে বিভ্রান্ত করেছিল, কারণ এটি সমস্ত ধরণের ত্রুটি দেখিয়েছিল, তবে সমস্যাটি কীটির ফর্ম্যাটটিতে ছিল বলে আমাকে কোনও সরাসরি ইঙ্গিত দেয়নি not : stackoverflow.com/a/44391850/4752883
alpha_989

18

আপনি ssh- এজেন্ট চালাতে পারে। একটি আলোচনার জন্য এখানে দেখুন ।

সংক্ষিপ্ত সংস্করণ যা আমার জন্য কাজ করেছে (ব্যাশে):

$ ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-rnRLi11880/agent.11880; export SSH_AUTH_SOCK;
SSH_AGENT_PID=11881; export SSH_AGENT_PID;
echo Agent pid 11881;

প্রতিধ্বনিত হওয়া 3 টি লাইন আমি এনেছিলাম এবং তাদের সম্পাদন করেছি। এটি করার আরেকটি উপায় হ'ল -s এর আউটপুট নেওয়া:

$ eval `ssh-agent -s`

তারপরে আমি এতে আমার শংসাপত্রগুলি যুক্ত করেছি:

$ ssh-add ~/.ssh/id_rsa
Enter passphrase for /home/me/.ssh/id_rsa: 
Identity added: /home/me/.ssh/id_rsa (/home/me/.ssh/id_rsa)

এখন এজেন্ট আমাকে আমার পাসফ্রেজ টাইপ করার পরিবর্তে শংসাপত্র সরবরাহ করে।

আমি বিশ্বাস করি যে শেলটি করলে ssh-এজেন্ট চলে যায়, তাই সর্বাধিক সুবিধার জন্য এটি স্টার্টআপের সময় স্ক্রিপ্ট করা উচিত। লিংক আমি ভাগ পাশাপাশি স্ক্রিপ্টিং বর্ণনা করা হয়েছে।


4

আপনি যখন আপনার সর্বজনীন কী সেট আপ করবেন আপনি সম্ভবত (সম্ভবত অজান্তেই) একটি পাসফ্রেজ দিয়ে সেট আপ করেছেন।

আপনাকে সম্ভবত নতুন করে শুরু করতে হবে - আমি পুটটিজেন ব্যবহার করিনি, তবে আপনি আপনার .ssh ডিরেক্টরিতে পাবলিক কী মুছে ফেলতে (বা নাম পরিবর্তন) করতে পারেন, ssh-keygenএকটি নতুন তৈরি করতে (পাসফ্রেজ সরবরাহ না করার বিষয়ে নিশ্চিত হয়ে) ব্যবহার করতে পারেন , এবং তারপরে আপনি যে সার্ভারে সংযোগের চেষ্টা করছেন তার অনুমোদিত_কিজ ফাইলটিতে সর্বজনীন_কিকে ভাগ করুন।

আপনি যে সার্ভারে সংযোগ করছেন সেটির অনুমোদিত-কী ফাইল থেকে আপনার পুরাতন পাসফ্রেজ কীটি সরিয়ে ফেলতে হবে।


4

প্রাইভেট কীতে id_rsaশেষের দিকে অতিরিক্ত লাইন বিরতি নেই তা পরীক্ষা করুন , কিছু ক্ষেত্রে অতিরিক্ত লাইন ব্রেকগুলি পাসফ্রেজের জন্য জিজ্ঞাসা করতে ssh-keygen তৈরি করবে, এটি চেষ্টা করুন:

sed  '/^$/d' /path/to/key > id_rsa

পরীক্ষা:

ssh-keygen -yf id_rsa

2
ওএমজি এটি আমার সমস্যা ছিল। এর পরে অতিরিক্ত একটি নিউলাইন -----END RSA PRIVATE KEY-----এটির কোনও চাবিতে পাসফ্রেজের জন্য জিজ্ঞাসা করছে যা একটি সেট নেই!
edk750

3

একটি জিনিস যাচাই করে দেখুন, আপনার sshd_config ফাইলে যদি স্ট্রাইকডমডস = হ্যাঁ থাকে, তবে $ হোম ডিরেক্টরি বা $ HOME / .ssh ডিরেক্টরিটি অবশ্যই গ্রুপ বা অন্যের জন্য বিশ্ব লিখিত হতে হবে না। অন্যথায় প্রমাণীকরণ যাই হোক না কেন ব্যর্থ হয়।


1

আমি আমার ~ / .ssh / id_rsa.pub এর সাথে আমার accident / .ssh / id_rsa ফাইলটি ভুলক্রমে ওভাররাইট করার ভুল করেছিলাম made এটি করার ফলে ssh একটি পাস বাক্যাংশ জিজ্ঞাসা করবে।


0

আমি অন্য দিন এই সমস্যা মধ্যে দৌড়ে। বিশেষত, আমি একটি মেশিন থেকে অন্য মেশিনে একটি প্রাইভেট এডাব্লুএস কী অনুলিপি / আটকানোর চেষ্টা করছিলাম।

আমার প্রথম বা শেষ চরিত্রটি হারিয়ে যাওয়ার অভ্যাস রয়েছে। দেখা যাচ্ছে যে আপনি যদি আপনার ব্যক্তিগত কী-এর শেষে প্রতিটি হাইফেন ধরেন না - যদিও কীটির নিজস্ব পাঠ্যটির সাথে এর কোনও যোগসূত্র নেই – আপনাকে প্রাইভেট কী থেকে পাসফ্রেজের জন্য অনুরোধ করা হবে যতক্ষণ না প্রতিটি অক্ষর যুক্ত হয় আপনি কীটি অনুলিপি করেছেন (আমার ক্ষেত্রে এর অর্থ কীটির শেষে একটি সিঙ্গল হাইফেন যুক্ত করা))

আমি মনে করি এর অর্থ হল যে টার্মিনাল উইন্ডোগুলির মধ্যে অনুলিপি করার চেষ্টা করার পরিবর্তে তারের পার্শ্ববর্তী পাঠ্য ফাইলটি এসএসএইচ করা সবচেয়ে ভাল অনুশীলন।


0

ওএসএক্সে আমি কেবল চালাতে সক্ষম হয়েছি:

$ ssh-add ~/.ssh/id_rsa Enter passphrase for /Users/me/.ssh/id_rsa: `Identity added: /Users/mikekilmer/.ssh/id_rsa (/Users/mikekilmer/.ssh/id_rsa)

অ্যাপ্লিকেশন> ইউটিলিটিস ফোল্ডারে থাকা পাসওয়ার্ডটি কেচেইন অ্যাক্সেস অ্যাপ্লিকেশন দ্বারা সংরক্ষণ করা হয়েছিল। আমি সবেমাত্র id_অনুসন্ধানের ক্ষেত্রটিতে প্রবেশ করেছি ।


0

সার্ভারে লগ ফাইলগুলি দেখার চেষ্টা করুন। / Var / log / auth লগটি দেখুন (যেমন, ওপেনএসএইচের জন্য / var / লগ / লেখক, যদিও আমি কিছু অপারেটিং সিস্টেমগুলি পোর্টেবল ওপেনএসএইচ ব্যবহার করে এবং /var/log/auth.log ব্যবহার করেছি) এবং ফাইলটির শেষটি পরীক্ষা করে দেখুন।

আমি যে সর্বাধিক সাধারণ কারণগুলি দেখেছি সেগুলি হ'ল অনুমতিগুলি ( টিডি 1 এর উত্তর দ্বারা উল্লিখিত ) হ'ল যদিও অন্যান্য সমস্যাগুলি জনসাধারণের কী (সার্ভারে সঞ্চিত) সঠিক ফাইলটিতে না থাকায় বা সেই কীটি মন্তব্য করা হচ্ছে না বা একটি ভুল বানান ব্যবহারকারীর নাম।

অ্যাকাউন্টটি অস্থায়ীভাবে একটি পাসফ্রেজ প্রদান করা (সমস্যা সমাধানের জন্য) সহায়ক হতে পারে, কেবলমাত্র যখন আপনি এটি করেন তখন অ্যাকাউন্টটি সফলভাবে লগ ইন করা যায় কিনা তা যাচাই করতে।

যদি লগ ফাইলটি দেখার দ্রুত আপনাকে কোনও সমাধানের দিকে নিয়ে না যায়, তবে আমি একটি নতুন প্রশ্ন পোস্ট করার পরামর্শ দিই (যেহেতু এটি একটি দুর্দান্ত সাধারণ প্রশ্ন) যা লগ ফাইল থেকে সুনির্দিষ্ট বিবরণ অন্তর্ভুক্ত করে, যাতে আরও নির্দিষ্ট দিকনির্দেশ সরবরাহ করা যায়।


0

আমার দলে, যখন এটি হয় এটি স্থানীয়ভাবে কোনও সমস্যা নয়। ব্যবহারকারীর ssh কী এবং / অথবা অ্যাক্সেসটি তারা যে সার্ভারে সংযুক্ত হচ্ছে তা সঠিকভাবে কনফিগার করা হয়নি (আমাদের ক্ষেত্রে একটি হোস্টিং প্ল্যাটফর্ম)। কিছু কারণে এটি অ-অস্তিত্বের এসএস কী-এর জন্য একটি প্রম্পট ট্রিগার করে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.