উত্তর:
এসএসএইচ একটি এসএফটিপি ব্যবহারকারীকে স্থানীয়ভাবে ক্রুটিং সমর্থন করে। আপনার কেবল সরবরাহ করা দরকার
ChrootDirectory
আপনার sshd কনফিগারেশন ফাইলে, এবং sshd পুনরায় আরম্ভ করুন।
আপনি যদি কেবল sftp করছেন, তবে আপনাকে আরও কিছু করতে হবে না। দুর্ভাগ্যক্রমে, এটি scp এর জন্য কাজ করে না। ইন্টারেক্টিভ শেলের জন্য, আপনাকে বাইনারিগুলি এবং / দেব নোডগুলি ক্রোটে অনুলিপি করতে হবে।
একটি কনফিগারেশন, কেবলমাত্র একক ব্যবহারকারীর জন্য, পরীক্ষক:
Match User testuser
ChrootDirectory /home/testuser
ForceCommand internal-sftp
Sshd_config ম্যান পৃষ্ঠা থেকে কয়েকটি বিষয় সম্পর্কে সচেতন হতে হবে:
পথের সমস্ত উপাদান অবশ্যই মূল-মালিকানাধীন ডিরেক্টরিগুলি নয় be
অন্য কোনও ব্যবহারকারী বা গোষ্ঠী দ্বারা লিখনযোগ্য। ক্রুটের পরে, sshd (8) পরিবর্তন করে
ব্যবহারকারীর হোম ডিরেক্টরিতে ওয়ার্কিং ডিরেক্টরি।
আরও তথ্যের জন্য পুরুষ sshd_config এ ক্রুটডাইরেক্টরি অনুসন্ধান করুন।
Subsystem sftp /usr/lib/openssh/sftp-serverলাইনSubsystem sftp internal-sftp -f AUTH -l VERBOSE
Matchবিভাগ পর্যন্ত ।
একটি ক্রুট একটি যুক্তিসঙ্গত সহজ পদ্ধতি। যেহেতু অপারেটিং সিস্টেমটিতে ইতিমধ্যে এই সুরক্ষা বৈশিষ্ট্য রয়েছে, ডেমন লেখকরা এটি পুনরায় প্রয়োগের চেষ্টা করবেন না।
আরএসএস একটি ক্রুট জেল স্থাপনের জন্য গাইড নিয়ে আসে। এটা এর CHROOTউৎস বিতরণে ফাইল। সংক্ষেপে, আপনার প্রয়োজন:
/usr/bin/scp, /usr/libexec/openssh/sftp-server,/usr/bin/rssh_chroot_helper{/usr,}/lib/lib*.so.[0-9]তারা যে লাইব্রেরিগুলি ব্যবহার করে ( ) সেগুলিও অনুলিপি করে/etc/passwd(সম্ভবত সম্ভবত একটি অনুলিপি নয় তবে মাস্টার থেকে প্রাপ্ত)/dev/null, /dev/tty, এবং এছাড়াও একটি /dev/logলগিং জন্য সকেট (এবং আপনি যে সকেট শুনতে আপনার syslog- র ডেমন বলতে চাই)আরএসএস ডকুমেন্টেশনে নেই এমন অতিরিক্ত টিপ: ক্রুট কারাগারে অ্যাক্সেসযোগ্য হওয়ার জন্য আপনার যদি কিছু ফাইলের প্রয়োজন হয় তবে আপনি জেলের বাইরে থেকে অতিরিক্ত ডিরেক্টরি শ্রেণিবদ্ধ করতে বাইন্ডফ বা লিনাক্স ব্যবহার করতে পারেন mount --bind। bindfsপুনঃনির্দিষ্ট ডিরেক্টরিটিকে আরও নিয়ন্ত্রিত অনুমতি থাকতে দেয়, উদাহরণস্বরূপ কেবল পঠনযোগ্য। ( mount --bindআপনি কার্নেল প্যাচ প্রয়োগ না করলেই হয় না; পূর্ব লেবানিতে দেবিয়ান এই প্যাচটি অন্তর্ভুক্ত করেছেন তবে বেশিরভাগ অন্যান্য বিতরণে ২০১১-তে নেই n't)