लिनक्स में उपयोगकर्ता फ़ोल्डर की पहुंच सीमित करें [डुप्लिकेट]


1

संभावित डुप्लिकेट:
प्रत्येक उपयोगकर्ता को केवल अपने स्वयं के होम फ़ोल्डर में सीमित करें

मेरे पास एक वेब सर्वर है जो 10.04 LTS पर चल रहा है और सर्वर प्रशासन की दुनिया में एक नौसिखिया के रूप में, मैं एक बाँध में हूँ।

मैं आपसे विनम्रतापूर्वक पूछूंगा कि आप प्रश्न को डायवर्ट नहीं करते हैं। मुझे पता है कि मेरे पास कुछ चीजें गलत हैं जैसे कि रूट सक्षम होना, लेकिन यही कारण है कि मैं यहां पोस्ट नहीं कर रहा हूं। धन्यवाद = डी


परिस्थिति

अभी, मेरे तीन उपयोगकर्ता हैं। रूट, जिसमें स्पष्ट रूप से सब कुछ तक पहुंच है, और दो अन्य उपयोगकर्ता हैं जो प्रत्येक वेबसाइट के मालिक हैं।

इन दो उपयोगकर्ताओं के लिए, उनकी वेबसाइट उनके संबंधित होम फोल्डर में एक अतिरिक्त फ़ोल्डर में स्थित होती है, जिसमें से प्रत्येक में उनके पास Read, Write & Execute अनुमतियां होती हैं। यह एकमात्र फ़ोल्डर है जिसे वे लिख सकते हैं। वे इसे हटा नहीं सकते हैं, या फ़ोल्डर के बाहर कुछ भी नहीं बदल सकते हैं।

अब तक अच्छा है, इसके अलावा डिफ़ॉल्ट रूप से, वे सिस्टम में किसी भी फ़ाइल को भी पढ़ सकते हैं, जिसका अर्थ है कि वे मेरी अन्य वेबसाइटों के फ़ोल्डर में नेविगेट कर सकते हैं और उदाहरण के लिए, वर्डप्रेस कॉन्फिग फाइलों से डेटाबेस पासवर्ड पढ़ सकते हैं।

यह स्पष्ट रूप से समस्याग्रस्त है।

उपयोगकर्ता अपनी फ़ाइलों और फ़ोल्डरों को फ़ाइलज़िला के साथ SSH के माध्यम से एक्सेस करते हैं।

सवाल

  • मैं इन उपयोगकर्ताओं को संवेदनशील डेटा पढ़ने से कैसे रोक सकता हूं, अर्थात मैं केवल उनके होम फ़ोल्डर तक उनकी पहुंच कैसे सीमित कर सकता हूं?

आवश्यकताएँ

  1. उपयोगकर्ताओं को फ़ाइलहिला के साथ SSH के माध्यम से लॉगिन करना जारी रखना चाहिए (अर्थात कोई FTP समाधान नहीं)

  2. अपाचे को अभी भी उपयोगकर्ता के फ़ोल्डरों तक पहुंचने में सक्षम होना चाहिए (यानी 750 तक नहीं जा सकता है)

ज्ञात समस्याएँ

  • कमांड लाइन टूल (/ बिन / बैश I थिंक) वाले फ़ोल्डर को संभवतः उपयोगकर्ता के होम फ़ोल्डर में सिमिलिंक करना होगा? कृपया इसे करने का तरीका बताएं।

यदि आपके पास एक उत्तर है, तो मैं सराहना करूंगा कि क्या आप इसे इस तरह से लिख सकते हैं कि मान लें कि मुझे कमांड लाइन के बारे में कुछ नहीं पता है। मैं इन उपयोगकर्ताओं को पसंद करता हूं जो लिनक्स T_T पर कमांड लाइन को छोड़कर, विंडोज में किसी फाइल को कॉपी करना नहीं जानते हैं

धन्यवाद = डी


जवाबों:


1

डेटाबेस विन्यास को विश्व-पठनीय न रखें। उन्हें www-dataउपयोगकर्ता और / या समूह तक सीमित करें । वास्तव में, पूरे होम निर्देशिका को उनके स्वामी और www-dataसमूह तक सीमित करें ।

chgrp -R www-data /home/user
chmod -R u=rwX,g=rXs,o= /home/user

( g=sबिट www-dataसमूह में सभी नई बनाई गई फ़ाइलें बना देगा ।) डिफ़ॉल्ट ओम्स्क ( /etc/profileया पीएएम के माध्यम से) को भी सेट करें 027, जो डिफ़ॉल्ट रूप से "अन्य" तक पहुंच से इनकार करता है।

बेशक, यह बाईपास करना आसान है। एक को केवल एक वेबपेज (PHP या समान) लिखना होगा जो अन्य उपयोगकर्ताओं के कॉन्फ़िगरेशन को पढ़ता है। एक बेहतर समाधान suPHP को स्थापित करना होगा , जो CGI वेबपृष्ठों को उनके मालिक के खाते में चलाता है; suPHP के साथ आपको समूह के स्वामित्व की आवश्यकता नहीं है www-data- बस सभी फ़ाइलों को उनके स्वामी ( u=rwX,go=) तक सीमित करें । हालांकि, यह संभवतः एक अलग सुरक्षा छेद पेश कर सकता है - वर्डप्रेस ने अब पूरी वेबसाइट पर अनुमतियाँ लिखी होंगी, और WP के सुरक्षा इतिहास को देखते हुए, यह बुरा है।


प्रणाली के आराम के लिए के रूप में - /var, /usr, /etc- इसमें से अधिकांश है नहीं संवेदनशील। जो टुकड़े हैं, वे पहले से ही मानक अनुमतियों द्वारा संरक्षित हैं। बाकी को छिपाने की जहमत न करें।


क्या www-data समूह एक डिफ़ॉल्ट है जो Apache के साथ आता है? यदि मैं www-डेटा समूह के स्वामित्व और suPHP दोनों का उपयोग करता हूं, तो क्या मैं WP सुरक्षा छेद को समाप्त कर सकता हूं?
इटियेन लेवेस्क गुइटार्ड 17

@ Itselftienne: मुझे लगता है कि यह उबंटू के साथ ही आता है ... कम से कम डेबियन पर यह निश्चित रूप से करता है। // यदि आप suPHP का उपयोग करते हैं, तो www-data समूह वास्तव में कभी उपयोग नहीं किया जाता है - suPHP पूरी तरह से फ़ाइल स्वामी के खाते में स्विच करता है।
ग्रेविटी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.