এসএসএইচ গেটওয়ে সংযোগের মাধ্যমে এসসিপি


8

আমার নেটওয়ার্ক লেআউটটি এরকম কিছু:

এখন এলিসের সাথে এসএসএইচ গেটওয়ে (এখন থেকে কেবল গেটওয়ে) অ্যাক্সেস রয়েছে:

ssh alice@external.ip

এবং গেটওয়েতে অনুমোদিত কীগুলি ফাইলটি এর মতো দেখায়

#/home/Alice/.ssh/authorized_keys
command="ssh -t alice@web" ssh-rsa ABCD...E== alice@somehost

সুতরাং যখন অ্যালিস তার প্রাইভেট কীটির সাথে গেটওয়েতে সংযোগ স্থাপন করার চেষ্টা করবে, তখন সে আসলে ওয়েব সার্ভারের সাথে সংযুক্ত হয়ে যায় (গেটওয়ে পিসি একটি পাসওয়ার্ডহীন ব্যক্তিগত কী দিয়ে ওয়েব সার্ভারের সাথে সংযোগ স্থাপন করতে পারে, যাতে স্বচ্ছ থাকে)।

প্রশ্নটি

  1. আমি কীভাবে এটি সেট আপ করতে পারি যাতে অ্যালিসও ওয়েব সার্ভারে জিনিসগুলি স্ক্র্যাপ করতে সক্ষম হয়?

  2. আমি জানি এটি একটি পৃথক সংযোগ তৈরি করে, তবে এর জন্য কোনও সাধারণ এসএস হিসাবে কাজ করার কোনও উপায় আছে যাতে এমন কি কিছু -R12345:localhost:22কাজ করতে পারে ?

উত্তর:


10

আপনি যদি অন্য ssh সার্ভারের পিছনে কোনও ssh সার্ভার অ্যাক্সেস করতে চান তবে কেবল "প্রক্সিকম্যান্ড" ব্যবহার করুন। উদাহরণ: .ssh / config এ যুক্ত করুন

Host Alice  
   User myLoginAtAlice # optional 
   ProxyCommand ssh -o Compression=no gateway netcat -w 90 %h %p
   ServerAliveInterval 30
   Compression yes

Host gateway
   HostName gateway.public.ip
   User myLoginAtTheGateway # optional 
   Compression yes

তারপরে, আপনি হোস্টনাম হিসাবে সরাসরি "অ্যালিস" ব্যবহার করে সরাসরি "ssh Alice" বা "rsync" বা "scp" করতে পারেন। যাদুটি ক্লায়েন্টের কাছে লুকিয়ে রয়েছে।

এটি আপনার নেটওয়ার্ক টপোলজি / কনফিগারেশন পরিবর্তনের ক্ষেত্রে আপনার এসএসকে দ্রুত পুনরায় কনফিগার করতে সহায়তা করে এবং প্রতিটি স্ক্রিপ্ট পরিবর্তনের পরিবর্তে .ssh / কনফিগারেশন পরিবর্তন করে।

ব্যাখ্যা: ssh সরাসরি টিসিপি সংযোগের পরিবর্তে পরিবহন হিসাবে "প্রক্সি কমান্ড" হিসাবে প্রদত্ত কমান্ডটি ব্যবহার করে। নেটক্যাট একটি নেটওয়ার্ক সরঞ্জাম যা (কয়েক মিলিয়ন অন্যান্য বৈশিষ্ট্যগুলির মধ্যে) কেবল তার স্টিডিন / স্টডআউটকে নির্দিষ্ট দূরবর্তী হোস্টে পুনঃনির্দেশ করে। সুতরাং, "ssh গেটওয়ে এনসি sshserver 22" আপনাকে সেই মেশিনের ssh সার্ভারের সাথে সংযুক্ত করে। % h হল হোস্টনাম এবং% p হ'ল বন্দর। এই জাতীয় সেটআপ আপনাকে প্রক্সিকম্যান্ড লাইন পরিবর্তন না করে পোর্ট পরিবর্তন করতে "পোর্ট এন" নির্দিষ্ট করার অনুমতি দেয়।

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


আরও একটি প্রশ্ন, rysnc এর মতো কাজ করে না যদি আমার গেটওয়ে মেশিনে কাস্টম পোর্ট থাকে। যে কোনও চিন্তা।
zidarsk8

.Ssh / কনফিগারেশনের সংশ্লিষ্ট বিভাগে "পোর্ট পোর্ট_নম্বার" যুক্ত করুন। দয়া করে ssh_config এবং sshd_config ম্যান পৃষ্ঠা পড়ুন। এগুলি প্রচুর পরিমাণে তথ্য এবং তারা আপনার জন্য প্রচুর অনুপ্রেরণা আনতে পারে।
রাউল সালিনাস-মন্টেইগুডো

আমি বলতে চাইছি, আলাদা পোর্ট নির্দিষ্ট করা থাকলে আরএসসিএনসি কাজ করে না। আমি বন্দরটি এমনভাবে কনফিগার করেছি যাতে সংযোগটি স্বাভাবিকভাবে কাজ করে তবে আরএসসিএনসি আমার সমস্যা তৈরি করে।
zidarsk8

3

আমার ঠিক ঠিক তেমন সমস্যা ছিল তবে আমি সবকিছুকে আমূল পরিবর্তন না করে কাজ করতে পেলাম।

আমি যা করেছি তা হ'ল $ SSH_ORIGINAL_COMMAND গেটওয়ে অনুমোদিত_কিগুলিতে চেইনের নিচে যে কোনও কিছু দিয়ে চূড়ান্ত সার্ভারে যাওয়ার জন্য যুক্ত করা হয়েছে।

আমার স্নাতকের:

#/home/Alice/.ssh/authorized_keys
command="ssh -t alice@web" ssh-rsa ABCD...E== alice@somehost

হয়ে:

#/home/Alice/.ssh/authorized_keys
command="ssh -q -t alice@web $SSH_ORIGINAL_COMMAND" ssh-rsa ABCD...E== alice@somehost

-Q টি শেষ পয়েন্ট মেশিন থেকে সংযোগ বন্ধ হওয়া বার্তাটি দমন করতে ব্যবহৃত হয় যাতে স্থানীয়ভাবে পুনঃনির্দেশ ব্যবহার করা হলে এটি স্থানীয় আউটপুটে শেষ না হয়।

তারপরে আপনি এই জাতীয় স্ক্যাপ ব্যবহার করতে পারেন:

scp localFileName alice@exernal.ip:/path/on/end/point/remoteFileName

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

উদাহরণ স্বরূপ:

ssh -t alice@external.ip "ls -l" > tmp

এটি কাজ করে কারণ মনে হচ্ছে যে sshd পরিবেশের পরিবর্তনশীল pop SSH_ORIGINAL_COMMAND এবং এসএসএস ক্লায়েন্ট দ্বারা নির্দিষ্ট কমান্ডকে পপুলেট করে তবে আমি নিশ্চিত নই কেন এই অলৌকিকভাবে স্ক্রিপকে এন্ডপয়েন্ট মেশিনের পাশাপাশি কমান্ডগুলির মধ্য দিয়ে যেতে দেয়।


0

দুর্ভাগ্যক্রমে পোর্ট-ফরওয়ার্ডিং অ্যালিসের ওয়ার্কস্টেশন থেকে সরাসরি ওয়েব সার্ভারে ফাইলগুলি অনুলিপি করতে সহায়তা করবে না scp। ইন এই তাই পোস্ট আমি কেন SSH ব্যাখ্যা (এবং scp কমান্ড যেমন একই প্রমাণীকরণ প্রক্রিয়া সদ্ব্যবহার) SSH ব্যবহার সংযোগ পোর্ট-ফরওয়ার্ড জন্য কাজ করবে না।

বিকল্পটি হ'ল এসএসএইচ গেটওয়ে হিসাবে মেশিনে একটি ভিপিএন সার্ভার স্থাপন করা হবে, এর সাথে সংযোগ স্থাপন করুন এবং তারপরে ফায়ারওয়ালের পিছনে যে কোনও মেশিনের সরাসরি প্রবেশাধিকার পাবেন।

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