मेरे पास नेटवर्क नेमस्पेस (नेटन्स) का उपयोग करके एक आर्किटेक्चर है। मैं नियमित उपयोगकर्ताओं को इन नेटों में कुछ संचालन करने की अनुमति देना चाहूंगा।
मैं एक स्क्रिप्ट लिख सकता हूं netns-exec.sh, जो इस पोस्ट से प्रेरित है , जिसके साथ निष्पादित किया गया है sudo:
ip netns exec $1 su $USER -c "$2"
और मेरे sudoer फ़ाइल में जोड़ें:
user ALL=(ALL) /path/to/netns-exec.sh
लेकिन मुझे लगता है कि यह बहुत बदसूरत है मैं पूरी तरह से इसके बारे में बुरे सपने हो सकता है। क्या नियमित उपयोगकर्ताओं को नेमस्पेस का उपयोग करने की अनुमति देने के लिए एक बेहतर समाधान है? क्या कुछ उपयोगी समूहों के लिए उपयोगकर्ताओं को रखना संभव है? मैंने इसके बारे में खोज की लेकिन कुछ नहीं मिला।
sudoएक है suकि मुझे गुस्सा दिलाता है, स्क्रिप्ट ही नहीं। वैसे भी मैं बात को लपेटने के लिए एक स्क्रिप्ट लिखूंगा। यह 2 उपयोगकर्ता स्विच बनाता है, यह वास्तव में बदसूरत है, आपको नहीं लगता?
sudoएक विशिष्ट चर प्रदान किया गया $SUDO_USER, जो सुरक्षित है। लेकिन यह अभी भी बदसूरत है।
Cmd_Alias CMD_NETNS = ip netns exec [regexp matching your namespace] su [regexp matching allowed used] -c [regexp matching allowed namespace command]अपने sudoers फ़ाइल में परिभाषित क्यों नहीं करते हैं और फिर एक समूह बनाते हैं जिसमें आप अपने अनुमत उपयोगकर्ताओं को रखते हैं, और इस समूह को इस कमांड उपनाम के साथ जोड़ते हैं।