मैं SELinux को अनुमेय मोड में कैसे सेट करूँ?

How Do I Set Selinux Permissive Mode



SELinux या Security-Enhanced Linux, यानी Linux-आधारित सिस्टम का सुरक्षा तंत्र डिफ़ॉल्ट रूप से Mandatory Access Control (MAC) पर काम करता है। इस एक्सेस कंट्रोल मॉडल को लागू करने के लिए, SELinux एक सुरक्षा नीति का उपयोग करता है जिसमें एक्सेस कंट्रोल से संबंधित सभी नियम स्पष्ट रूप से बताए गए हैं। इन नियमों के आधार पर, SELinux उपयोगकर्ता को किसी वस्तु की पहुँच प्रदान करने या अस्वीकार करने के संबंध में निर्णय लेता है।

आज के लेख में, हम आपको इसके महत्वपूर्ण विवरणों के माध्यम से चलने के बाद SELinux को अनुमेय मोड में सेट करने के तरीकों को आपके साथ साझा करना चाहेंगे।







SELinux अनुमेय मोड क्या है?

अनुमेय मोड भी तीन मोड में से एक है जिसमें SELinux संचालित होता है, अर्थात, लागू करना, अनुमति देना और अक्षम करना। ये SELinux मोड की तीन विशेष श्रेणियां हैं, जबकि सामान्य तौर पर, हम कह सकते हैं कि किसी विशेष उदाहरण पर, SELinux या तो सक्षम या अक्षम हो जाएगा। प्रवर्तन और अनुमेय मोड दोनों सक्षम श्रेणी के अंतर्गत आते हैं। दूसरे शब्दों में, इसका मतलब है कि जब भी SELinux सक्षम होता है, यह या तो प्रवर्तन मोड या अनुमेय मोड में काम करेगा।



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



दूसरी ओर, अनुमेय मोड अवांछित पहुंच को अवरुद्ध नहीं करता है, बल्कि, यह केवल लॉग फ़ाइल में ऐसी सभी गतिविधियों को रिकॉर्ड करता है। इसलिए, इस मोड का उपयोग ज्यादातर बग्स को ट्रैक करने, ऑडिट करने और नए सुरक्षा नीति नियमों को जोड़ने के लिए किया जाता है। अब, एक उपयोगकर्ता ए के उदाहरण पर विचार करें जो एबीसी नामक निर्देशिका तक पहुंचना चाहता है। SELinux सुरक्षा नीति में यह उल्लेख किया गया है कि उपयोगकर्ता A को हमेशा ABC निर्देशिका तक पहुंच से वंचित रखा जाएगा।





अब, यदि आपका SELinux सक्षम है और प्रवर्तन मोड में काम कर रहा है, तो जब भी उपयोगकर्ता A एबीसी निर्देशिका तक पहुँचने का प्रयास करेगा, तो पहुँच से इनकार कर दिया जाएगा, और यह घटना लॉग फ़ाइल में दर्ज की जाएगी। दूसरी ओर, यदि आपका SELinux अनुमेय मोड में काम कर रहा है, तो उपयोगकर्ता A को निर्देशिका ABC तक पहुँचने की अनुमति दी जाएगी, लेकिन फिर भी, यह घटना लॉग फ़ाइल में दर्ज की जाएगी ताकि एक व्यवस्थापक को पता चल सके कि सुरक्षा उल्लंघन कहाँ है हुआ।

CentOS 8 . पर SELinux को अनुमेय मोड में सेट करने के तरीके

अब जब हम SELinux के Permissive मोड के उद्देश्य को पूरी तरह से समझ गए हैं, तो हम आसानी से CentOS 8 पर SELinux को Permissive मोड पर सेट करने के तरीकों के बारे में बात कर सकते हैं। हालाँकि, इन तरीकों पर जाने से पहले, डिफ़ॉल्ट स्थिति की जाँच करना हमेशा अच्छा होता है। अपने टर्मिनल में निम्न आदेश चलाकर SELinux का:



$स्थिति

SELinux का डिफ़ॉल्ट मोड नीचे दिखाए गए चित्र में हाइलाइट किया गया है:

CentOS 8 पर अस्थायी रूप से SELinux को अनुमेय मोड में सेट करने की विधि

अस्थायी रूप से SELinux को अनुमेय मोड में सेट करने से, हमारा मतलब है कि यह मोड केवल वर्तमान सत्र के लिए सक्षम किया जाएगा और जैसे ही आप अपने सिस्टम को पुनरारंभ करेंगे, SELinux इसके संचालन के डिफ़ॉल्ट मोड, यानी, लागू करने वाले मोड को फिर से शुरू कर देगा। अस्थायी रूप से SELinux को अनुमति मोड में सेट करने के लिए, आपको अपने CentOS 8 टर्मिनल पर निम्न कमांड चलाने की आवश्यकता है:

$सुडोसेटनफोर्स0

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

अब यह सत्यापित करने के लिए कि SELinux को CentOS 8 में अनुमेय मोड पर सेट किया गया है या नहीं, हम टर्मिनल में निम्नलिखित कमांड चलाएंगे:

$गेटनफोर्स

इस आदेश को चलाने से SELinux का वर्तमान मोड वापस आ जाएगा और वह अनुमेय होगा, जैसा कि नीचे दिखाए गए चित्र में दिखाया गया है। हालाँकि, जैसे ही आप अपने सिस्टम को पुनः आरंभ करेंगे, SELinux वापस प्रवर्तन मोड में आ जाएगा।

CentOS 8 पर स्थायी रूप से SELinux को अनुमेय मोड में सेट करने की विधि

हमने पहले ही विधि # 1 में कहा है कि उपरोक्त विधि का पालन करने से केवल अस्थायी रूप से SELinux को अनुमेय मोड में सेट किया जाएगा। हालाँकि, यदि आप चाहते हैं कि ये परिवर्तन आपके सिस्टम को पुनरारंभ करने के बाद भी हों, तो आपको SELinux कॉन्फ़िगरेशन फ़ाइल को निम्न तरीके से एक्सेस करने की आवश्यकता होगी:

$सुडो नैनो /आदि/सेलिनक्स/कॉन्फ़िग

SELinux की कॉन्फ़िगरेशन फ़ाइल नीचे की छवि में दिखाई गई है:

अब, आपको SELinux वेरिएबल के मान को परमेसिव पर सेट करने की आवश्यकता है, जैसा कि निम्न छवि में हाइलाइट किया गया है जिसके बाद आप अपनी फ़ाइल को सहेज और बंद कर सकते हैं।

अब, आपको यह पता लगाने के लिए एक बार फिर SELinux की स्थिति की जाँच करने की आवश्यकता है कि क्या इसका मोड Permissive में बदल दिया गया है या नहीं। आप अपने टर्मिनल में निम्न आदेश चलाकर ऐसा कर सकते हैं:

$स्थिति

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

अब हमारे परिवर्तनों को प्रभावी बनाने के लिए, हम टर्मिनल में निम्नलिखित कमांड चलाकर अपने CentOS 8 सिस्टम को पुनः आरंभ करेंगे:

$सुडोशटडाउन -आर अभी

अपने सिस्टम को फिर से शुरू करने के बाद, जब आप सेस्टैटस कमांड के साथ SELinux की स्थिति की फिर से जाँच करेंगे, तो आप देखेंगे कि वर्तमान मोड को भी Permissive पर सेट कर दिया गया है।

निष्कर्ष:

इस लेख में, हमने SELinux के एनफोर्सिंग और अनुमेय मोड के बीच अंतर सीखा। फिर हमने आपके साथ CentOS 8 में SELinux को Permissive मोड में सेट करने के दो तरीके साझा किए। पहली विधि अस्थायी रूप से मोड को बदलने के लिए है, जबकि दूसरी विधि मोड को स्थायी रूप से Permissive में बदलने के लिए है। आप अपनी आवश्यकता के अनुसार दोनों विधियों में से किसी एक का उपयोग कर सकते हैं।