Vsftpd সহ কেবলমাত্র / var / www এ FTP অ্যাক্সেস সীমাবদ্ধ করুন


41

আমি আমার লিনাক্স (রাসবিয়ান) এ এফটিপি সার্ভার হিসাবে vsftpd চালাচ্ছি, আমি রুট ব্যবহারকারী হিসাবে মেশিনে লগ ইন করি।

আমি কেবলমাত্র / var / www ব্যবহার করে লক হয়ে থাকতে চাই, আমি কীভাবে এটি পূরণ করতে vsftpd কনফিগার করতে পারি?


1
chroot বিকল্পগুলি চেক করুন vsftpd.confএবং যার জন্য হোমডির সেট করা আছে তার জন্য একটি পৃথক ব্যবহারকারী তৈরি করুন /var/www
jirib

উত্তর:


65

পদ্ধতি 1: ব্যবহারকারীর হোম ডিরেক্টরি পরিবর্তন করা

নিম্নলিখিত লাইন বিদ্যমান আছে তা নিশ্চিত করুন

chroot_local_user=YES

ব্যবহারকারীর হোম ডিরেক্টরিটি এতে সেট করুন /var/www/, আপনি যদি বিদ্যমান ব্যবহারকারীর জন্য পরিবর্তন করতে চান তবে আপনি ব্যবহার করতে পারেন:

usermod --home /var/www/ username

তারপরে প্রয়োজনীয় অনুমতি সেট করুন /var/www/

পদ্ধতি 2: ব্যবহার করুন user_sub_token

আপনি যদি ব্যবহারকারীর হোম ডিরেক্টরি পরিবর্তন করতে না চান তবে আপনি ব্যবহার করতে পারেন:

chroot_local_user=YES
local_root=/ftphome/$USER
user_sub_token=$USER

সম্পর্কে user_sub_token:

একটি টেম্পলেট ভিত্তিক প্রতিটি ভার্চুয়াল ব্যবহারকারীর জন্য স্বয়ংক্রিয়ভাবে একটি হোম ডিরেক্টরি তৈরি করুন। উদাহরণস্বরূপ, যদি গেস্ট_উজারনেমের মাধ্যমে নির্দিষ্ট প্রকৃত ব্যবহারকারীর হোম ডিরেক্টরিটি / ftphome / $ USER হয় এবং ব্যবহারকারী_সুব_ টোকেনটি $ USER তে সেট করা থাকে তবে ভার্চুয়াল ব্যবহারকারী পরীক্ষায় যখন লগ ইন হয় তখন সে শেষ হয়ে যাবে (সাধারণত chroot () 'এডি) ডিরেক্টরি / ftphome / পরীক্ষা। যদি স্থানীয়_রূটতে ব্যবহারকারী_সুব_ টোকেন থাকে তবে এই বিকল্পটিও প্রভাব ফেলবে।

ডিরেক্টরি তৈরি করুন এবং অনুমতি সেট আপ করুন:

mkdir -p /ftphome/{test,user1,user2}
chmod 770 -R /ftphome
chown -R ftp. /ftphome
usermod -G ftp test

একবার পুনরায় চালু করুন vsftpdএবং আপনার সেটআপ পরীক্ষা করুন।

নমুনা সাফল্য আউটপুট:

[root@mail tmp]# ftp localhost
Connected to mail.linuxian.local.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root): test
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> mput vhosts
mput vhosts? 
227 Entering Passive Mode (127,0,0,1,146,41)
150 Ok to send data.
226 File receive OK.
24 bytes sent in 3.3e-05 seconds (7.1e+02 Kbytes/s)
ftp> ls -rlt
227 Entering Passive Mode (127,0,0,1,97,90)
150 Here comes the directory listing.
-rw-r--r--    1 787      787            24 Oct 11 19:57 vhosts
226 Directory send OK.
ftp> 221 Goodbye.

2
নোট তোমার পরে একটি প্রত্যয় থাকতে পারে $USERজন্য local_rootযেমন /home/$USER/ftp(যা ব্যবহারকারীদের chroot হবে ftpতাদের বাড়িতে Dir এর সাব)।
বেনোইট ডাফেজ

ব্যবহারকারীর লগ ইন দ্বারা ফোল্ডার লিখনযোগ্য সম্পর্কে ক্রুটিং সম্পর্কিত বনামফ্টপ এফএকিউ-র মন্তব্যসমূহ নোট করুন user ব্যবহারকারীর local_rootপ্রকৃত হোম ডিরেক্টরিতে রাখার ক্ষেত্রে এটি অত্যন্ত সম্ভাব্য ।
টমাস আরবান

"Chroot_local_user = YES" বিদ্যমান আছে তা কোথায় নিশ্চিত করবেন?
ওয়ান

4

তুমি এটি করতে পারো:

usermod --home /var/www/ username

5
এক থেকে দুই লাইনের উত্তরগুলি প্রায়শই নিম্ন মানের হিসাবে বিবেচিত হয়। লিঙ্ক বা ডকুমেন্টেশন সহ আপনার প্রস্তাবনাটি কী করে তার কিছু ব্যাখ্যার সাথে আপনার পোস্টটি প্রসারিত করার বিষয়টি বিবেচনা করুন যা আপনার সমস্যার প্রস্তাবটি আসলে সমস্যার সমাধান করার ক্ষমতা প্রস্তাব করে।
HalosGhost

2

আমি উপরে রাহুল পাতিলের পরামর্শটি ব্যবহার করেছি:

chroot_local_user=YES
local_root=/home/$USER/www-data
user_sub_token=$USER

তবে আমি বুঝতে পারি না কেন আমি কেবল একজন ব্যবহারকারীর সাথে লগ ইন করতে পেরেছি। তারপরে আমি দেখতে পেলাম যে আমরা একটি মূল ডিরেক্টরিতে (এই ক্ষেত্রে /home/$USER/www-data) ক্রোট করতে পারি না যার লেখার অ্যাক্সেস রয়েছে। সুতরাং আমি এর সাথে লেখার অ্যাক্সেসটি সরিয়েছি:

# chmod a-w /home/$USER/www-data

দ্রষ্টব্য:$USER আপনার ব্যবহারকারীর সাথে পরিবর্তন করুন।


1

chrootবিকল্পগুলি চেক করুন vsftpd.confএবং যার জন্য হোমডির সেট করা আছে তার জন্য একটি পৃথক ব্যবহারকারী তৈরি করুন /var/www


আমি এটি সম্পর্কে ভালভাবে অবগত, আমি একটি পৃথক ব্যবহারকারী তৈরি করব। আমি হয়তো আমার প্রশ্ন তারপর রূপের উচিত আমি একজন সীমিত করতে পারেন ব্যবহারকারী পৃথক পথে শুধুমাত্র
বদর হরি

ওপেনএসএইচ থেকে এসএফটিপি ব্যবহার করুন। অভ্যন্তরীণ sftp এর জন্য man sshd_config দেখুন, তারপরে 'ফোর্সকম্যান্ড' এবং 'ক্রুটডাইরেক্টরি' দেখুন। সর্বাধিক ওপেনএসএসএইচএসএফপি-সার্ভারের জন্য একটি নির্দিষ্ট পথে স্যুইচ করার বিকল্প যোগ করেছে, সুতরাং ক্রুটডাইরেক্টরির সংমিশ্রণে আপনি এটি করতে পারেন: chroot -> / पथ -> গন্তব্য -> 'কেবলমাত্র' = / chroot / onlyhere
jirib
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.