সমস্যা: আমার কিছু 20-30 ssh-agent
পরিচয় রয়েছে। বেশিরভাগ সার্ভারগুলি এতে প্রমাণীকরণ অস্বীকার করে Too many failed authentications
, কারণ এসএসএইচ সাধারণত আমাকে লগ ইন করতে 20 টি ভিন্ন কী চেষ্টা করতে দেয় না।
এই মুহুর্তে, আমি প্রতিটি হোস্টের জন্য ম্যানুয়ালি, IdentityFile
এবং IdentitiesOnly
নির্দেশটি ব্যবহার করে পরিচয় ফাইলটি উল্লেখ করছি , যাতে এসএসএইচ কেবল একটি কী ফাইল চেষ্টা করবে, যা কাজ করে।
দুর্ভাগ্যক্রমে, মূল কীগুলি আর উপলভ্য না হওয়ায় এটি কাজ করা বন্ধ করে দেয়। ssh-add -l
আমাকে প্রতিটি কী ফাইলের জন্য সঠিক পাথগুলি দেখায় এবং সেগুলি রাস্তাগুলির সাথে মেলে .ssh/config
তবে এটি কার্যকর হয় না। স্পষ্টতই, এসএসএচ ফাইলের নাম দ্বারা নয়, পাবলিক কী স্বাক্ষর দ্বারা ইন্ডেন্টিটি নির্বাচন করে, যার অর্থ আসল ফাইলগুলি উপলব্ধ থাকতে হবে যাতে এসএসএইচ পাবলিক কীটি বের করতে পারে।
এটির সাথে দুটি সমস্যা রয়েছে:
- আমি কীগুলি ধরে থাকা ফ্ল্যাশ ড্রাইভটি প্লাগ লাগানোর সাথে সাথে এটি কাজ করা বন্ধ করে দেয়
- মূল ফাইলগুলি দূরবর্তী হোস্টে উপলব্ধ না হওয়ায় এটি এজেন্ট ফরোয়ার্ডিংকে অকেজো রেন্ডার করে
অবশ্যই, আমি আমার পরিচয় ফাইলগুলি থেকে সর্বজনীন কীগুলি বের করতে এবং এগুলি আমার কম্পিউটারে সঞ্চয় করতে এবং প্রতিটি দূরবর্তী কম্পিউটারে আমি সাধারণত লগইন করতে পারি। যদিও এটি কোনও পছন্দসই সমাধানের মতো দেখায় না।
আমার যা প্রয়োজন তা হ'ল ফাইলের নাম দ্বারা এসএসএইচ-এজেন্ট থেকে একটি পরিচয় নির্বাচন করার সম্ভাবনা, যাতে আমি সহজেই ব্যবহার করে .ssh/config
বা পাস দিয়ে সঠিক কীটি নির্বাচন করতে পারি -i /path/to/original/key
, এমনকি আমি যে দূরবর্তী হোস্টে এসএসএইচ করতে চাইছি তাও। এটি আরও ভাল হবে যদি আমি কীগুলি "ডাকনাম" করতে পারতাম যাতে আমাকে এমনকি পুরো পথটি নির্দিষ্ট করতে না হয়।
authorized_keys
ফাইল যা ব্যবহৃত কী-র উপর নির্ভর করে সরাসরি শেল অ্যাক্সেসের অনুমতি না দিয়ে বিভিন্ন কমান্ড কার্যকর করে।