আমি কীভাবে ssh সংযোগগুলি chroot করতে পারি?


20

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

আমি ডিবিয়ান ইচ চালাচ্ছি

উত্তর:


13

আমি এই উদ্দেশ্যে আরএসএস ব্যবহার করছি।

আপনার ঠিক আছে এটি করার একটি নতুন উপায় আছে এবং এটি সাম্প্রতিক ssh সংস্করণগুলির একটি অন্তর্নির্মিত বৈশিষ্ট্য।

এখানে Undeadly উপর একটি নিবন্ধ আছে ।


6

আমাকে কেবল এমন এক ব্যবহারকারীকে সেটআপ করতে হয়েছিল যিনি ssh এবং ssh এর মাধ্যমে অন্য সার্ভারে লগ ইন করতে সক্ষম হবেন (যা বাইরের বিশ্বের সাথে সরাসরি সংযুক্ত নয়)। সিস্টামাস এবং এরিকমায়োর লিঙ্কগুলি একটি ভাল শুরু ছিল।

মূলত, আমি / etc / ssh / sshd_config এ নিম্নলিখিতগুলি যুক্ত করেছি:

ইউজার মাইউজার ম্যাচ করুন
  ক্রুটডাইরেক্টরি / ক্রুট / মাইউসার

সেখান থেকে, আমাকে কেবল / ক্রুট / মাইউজারের নীচে ক্রুট পরিবেশ তৈরি করতে হয়েছিল। আমি অনুলিপি করেছি / বিন / বাশ এবং / ইউএসআর / বিন / এসএসএস এবং তাদের ভাগ করা লাইব্রেরিগুলি প্রয়োজন (এলডিডি সেগুলি প্রদর্শন করবে)। বৃহত্তর পরিবেশের জন্য, সম্ভবত প্রয়োজনীয় নির্বাহীগুলির স্ট্যাটিকালি লিঙ্কিত সংস্করণগুলি সংকলন করার জন্য এটি বোধগম্য হবে।

বাশ এখনই কাজ করেছে, এসএসএস কাজ করার জন্য, আমাকে .ssh ডিরেক্টরিটি তৈরি করতে হয়েছিল, অনুলিপি / ইত্যাদি / পাসডাব্লুড, /etc/nsswitch.conf এবং / lib / libnss_ * তৈরি করতে হবে এবং / দেব / নাল, / দেব / টিটি এবং তৈরি করতে হবে / দেব / ইউরানডম মাধ্যমে এমকেএনড।


2
mkdir /chroot
mkdir -p /chroot/home/<user_name>

mkdir /chroot/home/<user-name>/bin  
cp -pr /bin/bash /chroot/home/<user_name>/bin/.  
cp -pr /bin/ls /chroot/home/<user_name>/bin/.  
cp -pr /lib64 /chroot/home/<user_name>/.

আপনাকে / etc / sshd_config ফাইলটি সম্পাদনা করতে হবে এবং যুক্ত করতে হবে

ChrootDirectory /chroot/%h

এবং এসএসডি ডিমন পুনরায় চালু করুন।

সমস্ত বলা হচ্ছে, আমি সত্যই যে sftp একটি ভাল বিকল্প মনে করি।

এছাড়াও, আমি এই ইউআরএলটি সহায়ক হলে খুঁজে পেয়েছি।

http://www.techrepublic.com/blog/opensource/chroot-users-with-openssh-an-easier-way-to-confine-users-to-their-home-directories/229


1

আপনি যদি সার্বজনীন-কী প্রমাণীকরণ ব্যবহার করছেন তবে আপনি ক্রুট জেল সেটআপ করতে অনুমোদিত কীগুলিতে "কমান্ড" বিকল্পটি ব্যবহার করতে পারেন।

~ / .Ssh / authorized_keys -র:

command="/path/to/the/chroot/script" ssh-dss keydata.....keydata... user@host

আমি পাবলিক কী প্রমাণীকরণ ব্যবহার করছি না, প্রমাণীকরণ একটি পাসওয়ার্ড এবং ব্যবহারকারীর নাম দ্বারা সম্পন্ন হয়
ম্যালফিস্ট

0

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

ডেবিয়ান এ্যাচ-এর জন্য এখানে কিছু ফাইল রয়েছে: http://debian.home-dn.net/etch/ssh/

এখানে অন্যান্য সমাধান রয়েছে: ক্রুটাশ সহ http://www.debian.org/doc/manouts/securing-debian-howto/ap-chroot-ssh-env.en.html


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