EDIT # 2 जुलाई 23, 2015: एक नए उत्तर की तलाश में है जो नीचे के सेटअप में याद किए गए एक महत्वपूर्ण सुरक्षा आइटम की पहचान करता है या सब कुछ कवर करने पर विश्वास करने का कारण दे सकता है।
EDIT # 3 जुलाई 29, 2015: मैं विशेष रूप से एक संभावित गलतफहमी के लिए देख रहा हूं जैसे कि अनजाने में कुछ ऐसी चीजों की अनुमति देना जो सुरक्षा प्रतिबंधों को कम करने के लिए शोषण किया जा सकता है या अभी तक कुछ व्यापक रूप से खुला छोड़ सकता है।
यह बहु-साइट / साझा होस्टिंग सेटअप है और हम एक साझा अपाचे उदाहरण (यानी एक उपयोगकर्ता खाते के तहत चलाता है) का उपयोग करना चाहते हैं, लेकिन PHP / CGI प्रत्येक वेबसाइट के उपयोगकर्ता के रूप में चल रहा है ताकि यह सुनिश्चित किया जा सके कि कोई साइट किसी अन्य साइट की फ़ाइलों तक नहीं पहुंच सकती है, और हम चाहते हैं यह सुनिश्चित करें कि कुछ भी याद नहीं किया जा रहा है (जैसे कि अगर हम सिमलिंक अटैक की रोकथाम के बारे में नहीं जानते हैं)।
यहाँ मेरे पास अभी तक क्या है:
- सुनिश्चित करें कि PHP स्क्रिप्ट वेबसाइट के लिनक्स उपयोगकर्ता खाते और समूह के रूप में चलती है, और या तो जेल (जैसे CageFS का उपयोग कर) या लिनक्स फाइल सिस्टम अनुमतियों का उपयोग करके कम से कम ठीक से प्रतिबंधित है।
- यह सुनिश्चित करने के लिए suexec का उपयोग करें कि CGI लिपियों को Apache उपयोगकर्ता के रूप में नहीं चलाया जा सकता है।
- यदि सर्वर-साइड की आवश्यकता में समर्थन शामिल है (जैसे कि shtml फ़ाइलों में),
Options IncludesNOEXEC
CGI को चलाने के लिए सक्षम होने से रोकने के लिए उपयोग करें जब आप इसकी अपेक्षा नहीं करते हैं (हालांकि यह suexec का उपयोग करते समय एक चिंता का विषय नहीं होना चाहिए)। - एक जगह हैकर हमले से सुरक्षा कर सकते हैं ताकि एक हैकर एपाचे को किसी अन्य वेबसाइट की फाइलों को प्लेनटेक्स्ट के रूप में पेश न कर सके और डीबी पासवर्ड जैसी शोषणकारी जानकारी का खुलासा कर सके।
- कॉन्फ़िगर करें
AllowOverride
/AllowOverrideList
केवल किसी भी निर्देश की अनुमति दें जो एक हैकर शोषण नहीं कर सकता है। मुझे लगता है कि यह एक चिंता का विषय है अगर उपरोक्त वस्तुओं को ठीक से किया जाता है।
अगर यह इतना धीमा नहीं होता और रूट के रूप में नहीं चलता, तो मैं MPM ITK के साथ जाता, लेकिन हम विशेष रूप से एक साझा Apache का उपयोग करना चाहते हैं, फिर भी सुनिश्चित करें कि यह सुरक्षित रूप से किया गया है।
मैंने http://httpd.apache.org/docs/2.4/misc/security_tips.html पाया , लेकिन यह इस विषय पर व्यापक नहीं था।
यदि यह जानना उपयोगी है, तो हम CageFS और mod_lsapi के साथ CloudLinux का उपयोग करने की योजना बना रहे हैं।
क्या इसके बारे में कुछ और सुनिश्चित करना है या जानना है?
EDIT 20 जुलाई 2015: लोगों ने कुछ अच्छे वैकल्पिक समाधान प्रस्तुत किए हैं जो सामान्य रूप से मूल्यवान हैं, लेकिन कृपया ध्यान दें कि यह प्रश्न केवल एक साझा अपाचे सेटअप की सुरक्षा के बारे में लक्षित है। विशेष रूप से ऐसा कुछ नहीं है, जो किसी साइट को किसी अन्य साइट की फ़ाइलों तक पहुँचने या अन्य साइटों को किसी भी तरह से समझौता करने दे सकता है?
धन्यवाद!