ये सिफारिशें मेरे सिर के ऊपर से हैं और व्यापक नहीं हैं।
बैस्टिल को देखें, यह स्क्रिप्ट की एक श्रृंखला है जो लिनक्स में सर्वोत्तम प्रथाओं को लागू करती है।
सादे डेटा पर प्रमाणीकरण डेटा न भेजें। उदाहरण के लिए, FTP को अक्षम करें। यदि आप Apache के माध्यम से प्रमाणीकरण डेटा भेजते हैं, तो SSL का उपयोग करें।
GUI इंटरफ़ेस सहित किसी भी अनावश्यक सॉफ़्टवेयर को अक्षम और हटा दें।
SUID बिट सेट और हटाने के साथ किसी भी फाइल का ऑडिट करें। (यह गैर-रूट क्षमताओं को गंभीर रूप से सीमित कर देगा। प्रत्येक व्यक्तिगत परिवर्तन के निहितार्थ को समझें।)
सार्वजनिक लेखन योग्य निर्देशिकाओं का ऑडिट करें और लिखने योग्य बिट को हटा दें। (अकेला छोड़ दें / tmp।)
किसी भी डेमन को रूट के रूप में चलाने से बचें।
सभी मल्टी-उपयोगकर्ता सॉफ़्टवेयर पर शोध करें जो सुरक्षा सर्वोत्तम प्रथाओं के लिए सॉकेट्स पर विस्तार से सुनते हैं।
सिस्टम में उपयोगकर्ताओं को जोड़ने से बचना सबसे अच्छे तरीकों में से एक है। बहु-उपयोगकर्ता प्रणालियों को विस्तार पर अधिक ध्यान देने की आवश्यकता होती है।
पासवर्ड मानकों को लागू करें। उदाहरण के लिए: अक्षरों और संख्याओं का उपयोग करते हुए न्यूनतम 10 वर्ण, गैर-अल्फ़ान्यूमेरिक वर्ण। यह पासवर्ड फ़ाइल समझौता के मामले में अधिक कठिन मजबूर करने के लिए है। इसे सिस्टम के माध्यम से लागू करें।
कम से कम 10 मिनट के लॉकआउट के साथ 5 असफल प्रमाणीकरण प्रयासों के बाद उपयोगकर्ताओं को लॉक करें। एक पासवर्ड इतिहास बनाए रखें ताकि उपयोगकर्ता पिछले 5 पासवर्ड का उपयोग न कर सकें।
यदि आपके पास एक बड़ा वातावरण है, तो जोखिम को अलग करने के लिए कई सबनेट के साथ नेटवर्क अलगाव का उपयोग करना एक पूर्ण आवश्यकता है। यदि एक छोटा वातावरण, एक्सपोज़र को सीमित करने के लिए स्थानीय सिस्टम पर फ़ायरवॉल चलाने की सिफारिश की जाती है। उदाहरण के लिए, केवल आपके IP को SSH की अनुमति देता है। tcpwrappers का उपयोग एक अतिरिक्त परत के लिए भी किया जा सकता है। (/etc/hosts.allow, /etc/hosts.deny)
और, ज़ाहिर है, सभी सॉफ़्टवेयर को अद्यतित रखते हुए। विशेष रूप से सार्वजनिक सामना करना पड़ा डेमॉन।
SSH के साथ:
- SSH प्रोटोकॉल को अक्षम करें 1
- केवल रूट प्रमाणीकरण की अनुमति दें
without-password
(केवल कीपर)
अपाचे के साथ:
- किसी भी मॉड्यूल को अक्षम करें जिसकी आवश्यकता नहीं है
- .Htaccess और सार्वजनिक निर्देशिकाओं को अक्षम करें
- FollowSymlink और किसी भी अनावश्यक विकल्प को अक्षम करें
- यदि आपको इसकी आवश्यकता नहीं है तो PHP स्थापित न करें।
MySQL के साथ:
- डिफ़ॉल्ट उपयोगकर्ताओं को अक्षम करें।
- वाइल्डकार्ड होस्ट का उपयोग न करें।
- प्रत्येक उपयोगकर्ता के लिए अद्वितीय होस्ट सेट करना सुनिश्चित करें।
- जब तक आवश्यक न हो tcp पर सुनें। (असामान्य रूप से अनुपयोगी।)
- जितना संभव हो उतना एप्लिकेशन उपयोगकर्ता विशेषाधिकार सीमित करें। (सिलेक्ट, INSERT, UPDATE, लिखने के लिए DELETE आदर्श और पढ़ने के लिए सेलेक्ट करें)
मैं विशेष रूप से सुरक्षा के लिए php.ini ट्यूनिंग पर शोध करना चाहूंगा। यह डिफ़ॉल्ट रूप से जोखिम भरा सॉफ्टवेयर है।
Bastille