हर खाते को सामान्य रूप से लॉगिन करने में सक्षम रखें, लेकिन केवल एक समूह को VPN का उपयोग करने दें। PAM दूसरे पासवर्ड भंडार के बिना उस अंतर को व्यक्त कर सकता है, और OpenVPN प्लगइन को ऐसी सेवा पर इंगित किया जा सकता है जिसमें केवल वे जाँचें हों जो आप चाहते हैं। चाल उस सेवा को सिस्टम-व्यापी स्टैक को अनजाने में विरासत में लिए बिना बनाने में है।

यहाँ की यात्रा प्लगइन के सेवा नाम से शुरू होती है, नीति बनाती है और फिर उन तीन परिणामों को जाँचती है जो मायने रखते हैं: एक सदस्य, वैध पासवर्ड वाला बाहरी व्यक्ति और एक खराब क्रेडेंशियल।

अलग PAM सेवा क्यों

auth-pam प्लगइन अपने आर्ग्युमेंट के रूप में सेवा नाम लेता है। वह नाम /etc/pam.d के अंतर्गत एक फ़ाइल चुनता है, और उस फ़ाइल का स्टैक ही VPN लॉगिन के दौरान चलता है। यदि आप वही नाम देते हैं जो सिस्टम-व्यापी लॉगिन उपयोग करता है, तो आप उस स्टैक के हर निर्णय को विरासत में लेते हैं, जिनमें बाद में असंबंधित कारणों से जोड़े गए निर्णय भी शामिल हैं।

इसके बजाय एक समर्पित सेवा बनाएँ। ऐसे कार्यशील स्टैक से शुरू करें जो पहले से इच्छित backend के विरुद्ध प्रमाणीकरण करता हो, जैसे स्थानीय पासवर्ड फ़ाइल, SSSD या निर्देशिका सेवा, फिर पात्रता नियम जोड़ें। खाली फ़ाइल में दो पंक्तियाँ कॉपी करना आम गलती है: पासवर्ड की समाप्ति, खाता लॉक और अन्य जाँचें उस स्टैक में हो सकती हैं जिसे आपने कॉपी नहीं किया।

सेवा को अलग करना क्षति का दायरा भी सीमित करता है। साझा स्टैक में केवल-VPN नियम सभी के लिए SSH या कंसोल प्रवेश अस्वीकार कर सकता है, जो प्रवेश परिवर्तन को व्यवधान में बदल देता है।

समूह नियम लिखना

पात्रता जाँच खाता चरण में आती है, क्रेडेंशियल सत्यापित होने के बाद। account required pam_succeed_if.so user ingroup vpnusers जैसा नियम प्रसंस्करण को तभी जारी रखने देता है जब प्रमाणित उपयोगकर्ता उस समूह का सदस्य हो।

वह पंक्ति एक अंश है, पूर्ण सेवा नहीं। इसे वहाँ एकीकृत करें जहाँ हर स्वीकृत मार्ग पहुँचता है, और इसके आसपास के नियंत्रण फ़्लैग जाँचें। स्टैक में पहले का sufficient या जंप नियंत्रण आपके नियम के चलने से पहले प्रसंस्करण समाप्त कर सकता है, जो प्रतिबंध को केवल सुझाव बना देता है।

आदतवश use_uid न जोड़ें। इसके बिना मॉड्यूल प्रमाणित हो रहे उपयोगकर्ता का मूल्यांकन करता है; इसके साथ मॉड्यूल उस खाते का मूल्यांकन करता है जिसके अंतर्गत OpenVPN प्रक्रिया चलती है, जो सामान्यतः root या सेवा खाता होता है और इसलिए लॉगिन करने वाला व्यक्ति नहीं।

समूह सदस्यता सिस्टम के पहचान समाधान से आती है, आपके पहचाने किसी नाम से नहीं। निर्देशिका उपयोगकर्ताओं के लिए पुष्टि करें कि वही backend उस उपयोगकर्ता के समूह प्रश्नों का उत्तर देता है, क्योंकि परिचित नाम वाला स्थानीय समूह उसी नाम के निर्देशिका समूह से भिन्न वस्तु है।

क्रम और पहचान के जाल

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

दोहरे स्टैक से सावधान रहें। आम पैटर्न एक include है जिसमें पहले से खाता नियम है, उसके बाद आपका अपना समूह नियम, जो वहाँ दो निर्णय उत्पन्न करता है जहाँ आपने एक की अपेक्षा की थी। शामिल फ़ाइल पढ़ें, केवल वह नहीं जिसे आपने संपादित किया। प्रभावी क्रम देखने का तेज़ तरीका फ़ाइल को ऊपर से नीचे पढ़ना और हर नियंत्रण मान को नोट करना है।

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

सदस्यों, बाहरी लोगों और गलत पासवर्ड की जाँच

नीति को पूर्ण मानने से पहले तीन स्थितियाँ जाँचें। सदस्य सफलतापूर्वक जुड़ता है। समूह के बाहर का वैध खाता अपना पासवर्ड प्रमाणित करता है परंतु उसे VPN प्रवेश से वंचित किया जाता है। किसी भी खाते के लिए गलत पासवर्ड प्रमाणीकरण चरण में अस्वीकार होता है, समूह नियम से नहीं।

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

PAM संपादित करते समय दूसरा सत्र खुला रखें, और परिवर्तन के बाद सामान्य SSH लॉगिन भी सत्यापित करें। समर्पित सेवा का उद्देश्य यह है कि सिस्टम लॉगिन अप्रभावित रहना चाहिए, और यह जानने का एकमात्र तरीका इसे जाँचना है।

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

संबंधित लेख