(कुछ) अपलोड / डाउनलोड तक पहुंच को प्रतिबंधित करने के लिए सरल समाधान


11

प्रारंभिक स्थिति

एक साइट के लिए, जो मैं स्थापित कर रहा हूं मैं अपलोड / डाउनलोड हासिल करने और उपयोगकर्ता भूमिकाओं / क्षमताओं के आधार पर उन तक पहुंच को सीमित करने के पूरे क्षेत्र में देख रहा था। निश्चित रूप से मैंने (सामान्य) विषय से संबंधित पिछले कुछ प्रश्नों को यहाँ पढ़ा है, संदर्भ कारणों के लिए जो सबसे महत्वपूर्ण / दिलचस्प हैं:

अनुपूरक नोट

आम तौर पर अपने वर्डप्रेस इंस्टॉलेशन की सुरक्षा में सुधार करना एक बुरा विचार नहीं है - उदाहरण के लिए आपकी रक्षा करना wp-config.php- ऐसी बहुत सी चीजें हैं जो आपको करनी चाहिए और करनी चाहिए। वहाँ कैसे वहाँ यह करने के लिए जानकारी का एक टन है। मैं इस प्रश्न के संदर्भ में ज्यादातर अपने अपलोड / डाउनलोड के बारे में सहमत हूं।

Wordpress अपलोड सुरक्षित नहीं हैं, हर कोई uploadsफ़ोल्डर ब्राउज़ कर सकता है , जब तक कि आप इसे एक के साथ नहीं रोकते .htaccess:

Options All -Indexes

.htaccessफ़ाइल के अंदर रखा जाना है uploadsफ़ोल्डर। लेकिन यह वास्तव में उन्हें हासिल नहीं कर रहा है, यह सिर्फ फाइलों को खोजने के लिए कठिन बनाता है। इसके अतिरिक्त, आप इसे रोक सकते हैं hotlinking, संभवतः इसके आधार पर पहुंच को प्रतिबंधित कर सकते हैं referrer- हालांकि यह थोड़ा अलग मामला है, मुझे लगा कि मैं इसका उल्लेख करता हूं, मैं आगे विस्तृत नहीं हूं, आप इसके बारे में बहुत सारी जानकारी पा सकते हैं।

बेशक पोस्ट को निजी बनाने या उस पोस्ट प्रकार को निजी बनाने के लिए उपयुक्त टेम्पलेट फ़ाइलों के साथ एक कस्टम पोस्ट प्रकार बनाने की संभावना है, लेकिन यह आपकी फ़ाइलों को सुरक्षित नहीं करता है। उसी तरह is_user_logged_in()या सशर्त में फ़ाइलों को लपेटने के लिए भी कहा जा सकता है is_admin()

एक सिडनोट पर बहुत सारे प्लग-इन हैं जो आपकी फ़ाइलों को सुरक्षित और संरक्षित करने का वादा कर रहे हैं, लेकिन उनमें से कई ऐसा करने का सिर्फ दिखावा कर रहे हैं, कुछ कारण ऊपर हैं। मैं सिर्फ इसलिए कविता कर रहा हूं क्योंकि मुझे पूरा यकीन है कि इसे हर व्यक्ति द्वारा नहीं जाना जाता है - इसलिए, इससे अवगत रहें।

उद्देश्य

मेरा इरादा क्रमशः (कुछ) अपलोड और डाउनलोड तक पहुँच को प्रतिबंधित करने में सक्षम होना था। और यह सुनिश्चित करने के लिए कि कोई भी अवांछित उनके पास नहीं पहुंच सकता है, न कि संयोग से या अगर किसी को फ़ाइल नाम पता था, तो फाइलें वास्तव में निजी और सुरक्षित होनी चाहिए। आखिरकार कुछ अपवादों के बिना कुछ लोगों की पहुंच होनी चाहिए।

इसके अतिरिक्त मुझे पूरी साइट का निजीकरण करने की कोई आवश्यकता नहीं थी, वास्तव में यह प्रतिशोधात्मक होगा - इसका उपयोग सार्वजनिक प्रस्तुति उद्देश्यों के लिए किया जाता है। इसके अलावा, मैं चाहता था कि समाधान आसानी से प्रयोग करने योग्य हो, इस सरल कारण के लिए कि इसके साथ काम करने वाले कुछ लोग बिल्कुल कंप्यूटर विशेषज्ञ नहीं हैं, जैसा कि अक्सर होता है।

सवाल

इसलिए सवाल, क्या (कुछ) अपलोड और संबंधित डाउनलोड तक पहुंच को प्रतिबंधित करने का एक (अपेक्षाकृत) सरल तरीका है? और जैसे मैंने किया, इसका मतलब है कि वास्तव में उन्हें सुरक्षित और सुरक्षित करने का एक तरीका है?


आपको अपने समाधान को प्रश्न में एम्बेड करने के बजाय एक उत्तर के रूप में जोड़ना चाहिए।
s_ha_dum

और कृपया उचित ऊपरी / निचले अक्षरों का उपयोग करें। एक चैट की तरह पढ़ता है ...
kaiser

रचनात्मक आलोचना के लिए धन्यवाद, मैं इसे जल्द ही कुछ समय में संपादित और पुनर्गठन करूंगा।
निकोलई

जवाबों:


8

मैं इसके द्वारा अपने प्रश्न का उत्तर दे रहा हूं, क्योंकि मुझे एक समाधान मिला है, लेकिन मैं वास्तव में इसके प्रति आपकी राय में दिलचस्पी रखता हूं। या हो सकता है कि आपके पास एक बेहतर समाधान हो, यदि हां, तो मैं वास्तव में इसके बारे में यहां बताना चाहूंगा।

अनुसंधान परिणाम

मेरे शोध परिणाम थे:
1. दस्तावेज़ रूट, wwwफ़ोल्डर के बाहर की फाइलें प्राप्त करें ;
2. फ़ाइलों से युक्त फ़ोल्डर में किसी भी सीधी पहुंच को रोकना;
3. एक स्क्रिप्ट फ़ाइलों के अनुरोधों को संभालने दो;
उन बिंदुओं के स्रोत हैं - कम से कम ज्यादातर - मेरे प्रश्न में शामिल हैं।

उपाय

  1. मैंने प्लगइन स्थापित किया » wp-downloadmanager «
    • नामक एक फ़ोल्डर प्रक्रिया में filesअंदर बनाया जाएगा wp-content;
  2. मैंने .htaccessनए filesफ़ोल्डर में एक फ़ाइल जोड़ी :
    • की सामग्री .htaccess:
      Options All -Indexes
      Order Deny,Allow
      Deny from all
  3. मैंने प्लगइन का एक महत्वपूर्ण विकल्प बदला:
    • मेरा मतलब विकल्प है download method;
    • मैंने इसे बदल दिया output file;
  4. मैंने प्लगइन इंटरफ़ेस पर कुछ फाइलें जोड़ीं:
    • नामक एक विकल्प है allowed to download;
    • जो उपयोगकर्ता की भूमिका / क्षमता के आधार पर पहुंच को प्रतिबंधित करने की अनुमति देता है;
  5. मैंने कुछ परीक्षण किया:
    • फ़ाइलों तक कोई सीधी पहुँच नहीं - एड्रेसबार या विजेट पर नहीं;
    • सार्वजनिक डाउनलोड उनके पेरालिंक्स के माध्यम से पहुँचा जा सकता है - मैं चुनता हूँ »अच्छा पर्मलिंक्स: हाँ« और »डाउनलोड url: फ़ाइल आईडी« विकल्प पैनल पर - एड्रेसबार / wget भी काम कर रहा है;
    • सही भूमिका / क्षमताओं के साथ उपयोगकर्ता के रूप में लॉग इन होने पर संरक्षित, प्रतिबंधित डाउनलोड केवल सुलभ हैं;

विचारों का समापन

मैं सोच रहा हूं कि समाधान बहुत अधिक शोध परिणामों का अनुसरण करता है। इसके अलावा फाइलों को बाहर रखना। लेकिन डायरेक्ट्री / डायरेक्ट्री तक पहुंच को सीमित करना और एक स्क्रिप्ट हैंडल फाइल रिक्वेस्ट फुलफिल करना। पहुँच का प्रतिबंध .htaccessइस मामले में और स्क्रिप्ट द्वारा नियंत्रित किया जाता है wp-downloadmanger

अनुपूरक नोट

  • इसे बदलना नितांत आवश्यकdownload method हैoutput file
  • और निश्चित रूप से यह जरूरी है कि .htaccessफ़ाइल जगह पर हो

  • इस तथ्य की जांच करने के लिए कि प्लगइन स्क्रिप्ट की भूमिका को लेता है, पर एक नज़र डालें wp-downloadmanger.php- लगभग 207 से 227 (संस्करण 1.6.1); यह लिंक की गई जानकारी के पूरक बिंदु के रूप में है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.