আমি আমার বিকল্প গবেষণা চেষ্টা করেছি, কিন্তু, আমি এটা প্রয়োজন বেশ কিছু কাজ করে। সর্বাধিক সহায়ক তথ্য এখানে পাওয়া যায়: মধ্যবর্তী হোস্ট মাধ্যমে scp ফাইল
আমার নিম্নলিখিত সেটআপ আছে: আমি মেশিন এ আছি। আমার মেশিন বুটে সেট আছে (ssh এজেন্ট সক্ষম করে) যা আমাকে মেশিন সি অ্যাক্সেস দেয়। (সরাইয়া হিসাবে, এই কনফিগারেশনের কারণ হল মেশিন B তে অ্যাক্সেস অত্যন্ত সীমিত, সহ দুটি ফ্যাক্টর প্রমাণীকরণ, এবং প্রতিটি অন্যান্য মেশিন শুধুমাত্র এই মেশিন থেকে এসএসএইচ রুট অ্যাক্সেসের অনুমতি দেয়।)
ইস্যুটি হল যে ssh-এজেন্ট কোডটি শুধুমাত্র লগইন শেলগুলির জন্য সঞ্চালিত হয়, যখন কমান্ডগুলি ssh এ চালানো হয় না, তাই এটি মেশিন সি এ অ্যাক্সেস করার জন্য মেশিন B তে অবস্থিত কীটি ব্যবহার করার চেষ্টা করে না। এই কোডটি আমার .bashrc
এবং .profile
:
export SSH_AUTH_SOCK=~/.ssh/ssh-agent.$HOSTNAME.sock
ssh-add -l 2>/dev/null >/dev/null
if [ $? -ge 2 ]; then
ssh-agent -a "$SSH_AUTH_SOCK" >/dev/null
fi
আদর্শভাবে, আমি কিছু কমান্ডের উদ্বোধন করতে সক্ষম হব যাতে আমি এটি স্কপের মতো চালাতে পারি (উদাঃ। scpproxy localfile user@MachineC:/root/remotefile
)। আমার বর্তমান সমাধান, মেশিন বি থেকে, scp -3 user@MachineA:localfile user@MachineC:remotefile
(যেখানে -3
scp কে স্থানীয় যন্ত্রটিকে মধ্যবর্তী হোস্ট হিসাবে ব্যবহার করতে দেয়, ডিফল্ট পরিবর্তে এটি সরাসরি সি থেকে কপি করার চেষ্টা করে) যা নিখুঁত থেকে কম।
কোন সাহায্য প্রশংসা করা হয়!