SELinux, या सिक्योरिटी-एनहांस्ड लिनक्स, लिनक्स सिक्योरिटी कर्नेल का एक हिस्सा है जो सर्वर पर एक सुरक्षात्मक एजेंट के रूप में कार्य करता है। लिनक्स कर्नेल में, SELinux अनिवार्य एक्सेस कंट्रोल (MAC) पर निर्भर करता है जो उपयोगकर्ताओं को सिस्टम एडमिनिस्ट्रेटर द्वारा निर्धारित नियमों और नीतियों तक सीमित करता है। MAC स्टैंडर्ड डिस्क्रेशनरी एक्सेस कंट्रोल (DAC) की तुलना में एक उच्च स्तर का एक्सेस कंट्रोल है, और केवल उन आवश्यक फ़ाइलों को प्रोसेस करके सिस्टम में सुरक्षा उल्लंघनों को रोकता है जिन्हें एडमिनिस्ट्रेटर पूर्व-अनुमोदित करता है।
SELinux को शुरू में Red Hat और नेशनल सिक्योरिटी एजेंसी के बीच सहयोग के रूप में जारी किया गया था। SELinux को नए लिनक्स वितरण जारी होने पर समय-समय पर अपडेट और परिवर्धन प्राप्त होते हैं। SELinux कर्नेल कर्नेल के अंदर नीति और निर्णयों को अलग करता है ताकि सुरक्षा के स्तर वितरित हो सकें और कुल सुरक्षा उल्लंघन को रोका जा सके।
SELinux लीस्ट-प्रिविलेज मॉडल के तहत कार्य करता है। SELinux केवल तभी एक्सेस देता है जब एडमिनिस्ट्रेटर ऐसा करने के लिए एक विशिष्ट नीति लिखता है।
SELinux मोड
SELinux के तीन मोड हैं: Enforcing, Permissive और Disabled।
- Enforcing मोड इंस्टॉलेशन के समय SELinux का डिफ़ॉल्ट मोड है। यह सिस्टम पर नीतियों को लागू करेगा, एक्सेस से इनकार करेगा और कार्यों को लॉग करेगा।
- Permissive मोड SELinux के समस्या निवारण के लिए सबसे अधिक उपयोग किया जाने वाला मोड है। इस मोड में, SELinux सक्षम होता है लेकिन सुरक्षा नीतियों को लागू नहीं करता है। साथ ही, इसका मतलब है कि कार्यों के परिणामस्वरूप सिस्टम एडमिनिस्ट्रेटर के लिए चेतावनी और लॉग होगा।
- Disabled मोड का अर्थ है कि SELinux बंद है और सुरक्षा नीतियां सर्वर की रक्षा नहीं करती हैं।