আমি কীভাবে ssh * দূরবর্তী * পোর্ট ফরওয়ার্ডিং সীমাবদ্ধ করতে পারি?


22

কোন পোর্ট দূরবর্তী থেকে ssh -Rকোনও ব্যবহারকারী দ্বারা ফরোয়ার্ড করা যেতে পারে তা সীমাবদ্ধ করতে হবে ।

আমি permitopenঅনুমোদিত_কিজের বিকল্প সম্পর্কে জানি , তবে এটি ম্যান পেজে যেমন বলেছে এটি কেবল স্থানীয় ' ssh -L' পোর্ট ফরওয়ার্ডিংকে সীমাবদ্ধ করে

এখানে আলোচিত হিসাবে একজন ব্যবহারকারী একই netcatবা একই রকম পাবেন তবে এই ক্ষেত্রে ব্যবহারকারীর শেল অ্যাক্সেস নেই

আমি এই থ্রেডটিও পেয়েছি যা সেলিনাক্স ব্যবহার করার কথা বলেছিল বা LD_PRELOAD, তবে আমি সেলিনাক্সকে আগে কনফিগার করেছিলাম এবং কীভাবে এটি করতে হয় তার তথ্য খুঁজে পাই না LD_PRELOAD

যে কেউ বাস্তবায়নের জন্য ওপেনশ্যাশের জন্য কোনও প্যাচ তৈরি করেছেন?

সম্পাদনা: আমি এই বাগ রিপোর্টটি পেয়েছি তাই আমার ধারণা এটি এখনও কার্যকর হয়নি


আপনি কি এর জন্য কোনও সমাধান খুঁজে পেয়েছেন?
alex88

আমি করিনি, আমি অনুমান করি যে উপরের বাগটি বন্ধ না হওয়া বা এটি প্রয়োগের জন্য কেউ কোনও প্যাচ লেখার আগে পর্যন্ত এটি করা সম্ভব নয়
Lluís

উত্তর:


3

এটি 2018-08-24 প্রকাশিত ওপেনএসএসএইচ 7.8p1 এ প্রয়োগ করা হয়েছে। রিলিজ নোট থেকে উদ্ধৃতি:

sshd_config (5) এ একটি পারমিটলিস্টন নির্দেশিকা যুক্ত করুন এবং সংশ্লিষ্ট পারমিটেলস্টন = অনুমোদিত_কিগুলি বিকল্প যা অ্যাড্রেস এবং পোর্ট নম্বর শোনায় তা নিয়ন্ত্রণ করে দূরবর্তী ফরোয়ার্ডিং (এসএসএস -আর ...) ব্যবহার করা যেতে পারে।


4

no-port-forwardingআপনি ব্যবহার করতে পারেন এমন একটি বিকল্প রয়েছে যা সমস্ত পোর্ট ফরওয়ার্ডিংয়ে বাধা দেয়। কমপক্ষে ওপেনএসএসএইচ 4.3 পি 2 হিসাবে উপস্থাপিত করুন (সেন্টোস 5.3 - আমার মধ্যে প্রাচীনতম মেশিনটি অ্যাক্সেস রয়েছে)। আপনি যে জায়গাটি রেখেছিলেন তা একই জায়গায় রাখুন permitopen


13
সম্পূর্ণরূপে পোর্ট ফরওয়ার্ডিং অক্ষম করা ওভারকিল বলে মনে হচ্ছে এবং প্রশ্নের উপযুক্ত নয়। আমি ধরে নিলাম ওপি এটি সীমাবদ্ধ করতে চায় , তবুও কিছু নির্দিষ্ট দূরবর্তী পোর্ট ফরওয়ার্ডিংকে অনুমতি দেয় allowing
gertvdijk

2
হ্যাঁ, আমাকে কিছু বন্দর ফরওয়ার্ডিংয়ের অনুমতি দেওয়া দরকার
Lluís

0

Ssh ব্যবহার করে এটি সীমাবদ্ধ করা সম্ভব নয়। সম্ভবত সেলিনাক্স বা iptables ব্যবহার শেষ হতে পারে। তবে, একটি বিকল্প কৌশল রয়েছে যা আপনার প্রয়োজন অনুসারে বা নাও পারে। ইউনিক্স সকেটে বাঁধাই ব্যবহার করুন। এটি উন্মুক্ত সংস্করণ 6.8 থেকে শুরু হওয়া উচিত available

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

বিপরীত প্রকাশকরা পুনরায় সংযোগ করার চেষ্টা করার কারণে ইউনিক্স সকেটগুলি ঝুঁকিপূর্ণ সকেট ফাইল পরিচালনা করার সাথে সমস্যা হতে পারে। আমার এই সমস্যাটির আরও একটি প্রশ্ন (এবং উত্তর) রয়েছে। সংক্ষেপে আপনি সম্ভবত এটি ব্যবহার করতে চান StreamLocalBindUnlink yes:

সংযোগ বন্ধ হয়ে যাওয়ার পরে কীভাবে এসএসএইচ রিভার্স টানেল সকেট পরিষ্কার করবেন?


-1

সদৃশ: /superuser/516417/how-to-restrict-ssh-port-forwarding-without-denying-it

দেখে মনে হচ্ছে আপনি নিচেরটি ব্যবহার করতে পারেন?

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

সম্পাদনা করুন: সুতরাং সার্ভার কনফিগারেশনে নিম্নলিখিতগুলি যুক্ত করুন

পারমিটওপেন হোস্ট: পোর্ট

পারমিটওপেন IPv4_addr: পোর্ট

পারমিটওপেন [IPv6_addr]: বন্দর


1
কেবলমাত্র U&L এ নকল হিসাবে চিহ্নিত করা যায়।
GAD3R

1
প্রশ্নে বলা হয়েছে, এটি -L এর জন্য এবং এটি ইতিমধ্যে একটি অ-সমাধান হিসাবে পরিচিত
alex88

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