ইন্টারমিডিয়েট হোস্ট মাধ্যমে এসসিপি


1

আমি আমার বিকল্প গবেষণা চেষ্টা করেছি, কিন্তু, আমি এটা প্রয়োজন বেশ কিছু কাজ করে। সর্বাধিক সহায়ক তথ্য এখানে পাওয়া যায়: মধ্যবর্তী হোস্ট মাধ্যমে 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 কে স্থানীয় যন্ত্রটিকে মধ্যবর্তী হোস্ট হিসাবে ব্যবহার করতে দেয়, ডিফল্ট পরিবর্তে এটি সরাসরি সি থেকে কপি করার চেষ্টা করে) যা নিখুঁত থেকে কম।

কোন সাহায্য প্রশংসা করা হয়!

উত্তর:


1

জন্য কনফিগারেশন scp এবং ssh মধ্যবর্তী হোস্ট মাধ্যমে (মূলত) একই। জন্য অনেক অন্যান্য উত্তর scp, ssh অথবা এমনকি rsync একই প্রসঙ্গে আপনার জন্য কাজ করা উচিত। মৌলিকভাবে, আপনি মেশিন "বি" থেকে "সি" পেতে ব্যবহার করার জন্য মেশিন "এ" থেকে "B" অ্যাক্সেস পেতে একই কীটি ব্যবহার করা উচিত। তবে, "সি" অ্যাক্সেস পেতে "B" এ অবস্থিত পাসফ্রেজ-কম কীগুলি ব্যবহার করার জন্য আপনি টাইিং করতে পারেন। সেই পাসফ্রেজ-কম কীগুলির (খারাপ) সুরক্ষা প্রভাবগুলিকে সরানো ছেড়ে দিলে, আমি আপনাকে পরিবর্তে "A" এ থাকা আপনার কী (আশাব্যঞ্জক পাসফ্রেজ সুরক্ষিত) ব্যক্তিগত কীটি একই জায়গায় রাখতে পরামর্শ দেব ~/.ssh/authorized_keys "সি" ফাইল। এইভাবে, আপনাকে যা করতে হবে তা এই রকম কিছু:

scp -o "ProxyCommand ssh -A B -W %h:%p" C:file .

এটি হোস্ট "B" এর মাধ্যমে প্রক্সি / হপ সেটআপ করবে, "সি" -এ আপনার হোম ডিরেক্টরিতে ফাইলের নাম 'ফাইল' আনবে এবং এটি "A" এর বর্তমান কার্যকারী ডিরেক্টরিতে অবতরণ করবে।

উপরন্তু আপনি আপনার মধ্যে যে codify করতে পারেন ~/.ssh/config ফাইল:

Host C
  ProxyCommand ssh -A B -W %h:%p

তারপর, আপনি সহজেই পারেন:

scp C:file .

তাছাড়া, এটির জন্য আপনার জন্য এটির কোনটি উদীয়মান বা স্ক্রিপ্টের প্রয়োজন নেই। আপনি শুধু ব্যবহার করুন scp সরাসরি।

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