Doas एक विशेषाधिकार वृद्धि कार्यक्रम है जो sudo के समान है। इसे यथासंभव हल्का और सरल बनाने के लिए डिज़ाइन किया गया है। यह OpenBSD के लिए डिफ़ॉल्ट विशेषाधिकार वृद्धि कार्यक्रम है, लेकिन OpenDoas प्रोग्राम के माध्यम से अन्य UNIX- जैसे ऑपरेटिंग सिस्टम के लिए भी उपलब्ध है।
सुडो के साथ समस्या
इन वर्षों में, UNIX दुनिया में sudo वास्तविक विशेषाधिकार वृद्धि कार्यक्रम बन गया है। हालांकि, इसका मतलब है कि सूडो को यूनिक्स जैसी मशीन का उपयोग करने वाले प्रत्येक व्यक्ति के लिए प्रत्येक उपयोग-मामले को पूरा करना होगा। कार्यक्रम के विकास में इस दृष्टिकोण ने सूडो को एक बोझिल कार्यक्रम बना दिया जिसे समझना कठिन और उपयोग में कठिन है।
उदाहरण के लिए, सूडो के व्यवहार को संशोधित करने के लिए, आपको visudo
. नामक एक कमांड चलाने की आवश्यकता है . यह एक विशेष लोडर प्रोग्राम है जो "/etc/sudoers" फ़ाइल को "सुरक्षित मोड" में खोलता है।
Visudo कुछ चीजें करता है:यह नियमित रूप से "/ etc / sudoers" फ़ाइल में सिंटैक्स त्रुटियों की जांच करता है और "/ etc / sudoers" फ़ाइल को लॉक कर देता है ताकि वर्तमान उपयोगकर्ता के अलावा कोई भी फ़ाइल को संपादित न कर सके। ये सतह पर उपयोगी प्रतीत हो सकते हैं, लेकिन विसुडो सूडो की बढ़ती जटिलता का एक लक्षण है।
इसका मतलब है कि sudoers फ़ाइल का सिंटैक्स इतना जटिल हो गया है कि संभावित सिंटैक्स त्रुटियों की जाँच करना आवश्यक हो गया है। इसका यह भी अर्थ है कि sudo को एकल-उपयोगकर्ता और बहु-उपयोगकर्ता दोनों वातावरणों को पूरा करना है, इसलिए वर्तमान उपयोगकर्ता के लिए sudoers फ़ाइल को लॉक करने की आवश्यकता है।
सुडो एक अद्भुत कार्यक्रम है। इसका जटिल कॉन्फ़िगरेशन सिंटैक्स विस्तृत अनुमति सिस्टम बना सकता है जो एक अनुभवी सिस्टम व्यवस्थापक के लिए संभावित रूप से उपयोगी हो सकता है।
अधिकांश उपयोगकर्ताओं के लिए, हालांकि, हम प्रोग्राम को स्थापित करने और अपने सिस्टम के साथ छेड़छाड़ करने के लिए रूट शेल चलाने के लिए केवल sudo का उपयोग करते हैं। इसलिए, सूडो की जटिलता उन मामलों में एक विशेषता के बजाय एक बाधा के रूप में अधिक प्रतीत होती है।
doas का उपयोग क्यों करें?
दोआस का इरादा सूडो की जटिलता को हल करना है। इसे ओपनबीएसडी के लिए विकसित किया गया था और इसे लगभग किसी भी लिनक्स सिस्टम में जल्दी से पोर्ट किया गया था। इसका उद्देश्य त्वरित और उपयोग में आसान होना है, लेकिन बनाए रखना और सुरक्षित करना भी आसान है।
दोस का वाक्य-विन्यास भी सूडो से भिन्न है। इसे कॉन्फ़िगर करना सादे अंग्रेजी में लिखने के समान है। सूडो में, उदाहरण के लिए, ग्रुप व्हील के किसी भी उपयोगकर्ता को बिना किसी पासवर्ड के रूट के रूप में निष्पादित करने की अनुमति देने के लिए सिंटैक्स है:
%wheel ALL=(ALL) NOPASSWD: ALL
दोआस में, इस बीच, वाक्य रचना को समझना कहीं अधिक आसान है:
permit nopass :wheel as root
इसके अलावा, doas को इसके कॉन्फ़िगरेशन को संशोधित करने के लिए visudo जैसे किसी विशेष लोडर प्रोग्राम की आवश्यकता नहीं है। उपयोगकर्ता को केवल किसी पाठ संपादक के साथ कॉन्फ़िगरेशन फ़ाइल को संपादित करने की आवश्यकता है, और जब तक उपयोगकर्ता के पास पर्याप्त विशेषाधिकार हैं, वे कॉन्फ़िगरेशन में परिवर्तन करने में सक्षम होंगे।
इससे doas को समझना और समझना आसान हो जाता है। विशेषाधिकार प्राप्त उपयोगकर्ता और समूह बनाने के लिए इसका सरल और सादा दृष्टिकोण उपयोगकर्ता के लिए प्रक्रिया को पारदर्शी और त्रुटि मुक्त बनाता है।
सुडो के साथ doas कैसे सेट करें
यदि आप एक Linux सिस्टम का उपयोग कर रहे हैं, तो एक अच्छा मौका है कि आप पहले से ही अपने विशेषाधिकार वृद्धि कार्यक्रम के रूप में sudo का उपयोग कर रहे हैं, और यह doas को अपेक्षाकृत सरल बनाता है।
डेबियन और उबंटू में, आप उपयुक्त का उपयोग करके doas स्थापित कर सकते हैं:
sudo apt install doas
आर्क लिनक्स में, आप पॅकमैन का उपयोग कर सकते हैं:
sudo pacman -Syu opendoas
फेडोरा के साथ, आप dnf का उपयोग कर सकते हैं:
sudo dnf install opendoas
Void Linux के लिए, आप xbps का उपयोग कर सकते हैं:
sudo xbps-install opendoas
मेरे मामले में, मैं Void Linux पर doas इंस्टॉल कर रहा हूं, इसलिए मैं XBPS का उपयोग कर रहा हूं।
Doas कॉन्फ़िगरेशन फ़ाइल
doas स्थापित होने के साथ, अब आप su का उपयोग करके रूट उपयोगकर्ता पर स्विच करके "/etc/doas.conf" फ़ाइल को संपादित कर सकते हैं।
su --command="nano /etc/doas.conf"
सु आपका रूट पासवर्ड मांगेगा, और उसके बाद, यह नैनो का उपयोग करके या तो खुल जाएगा या कॉन्फ़िगरेशन फ़ाइल बना देगा।
एक बार हो जाने के बाद, आप देख सकते हैं कि "doas.conf" खाली है। यह विसुडो की तुलना में पूरी तरह से अलग है। लेकिन जैसा कि हमने पहले चर्चा की, doas को कॉन्फ़िगर करना अपेक्षाकृत तुच्छ है।
कॉन्फ़िगरेशन सिंटैक्स
doas.conf का सिंटैक्स इस प्रकार है:
permit|deny [options] identity [as target] [cmd command [args ...]]
- परमिट और अस्वीकार करें निर्धारित करेगा कि क्या doas नियम की अनुमति देगा।
- विकल्प doas के लिए अतिरिक्त कॉन्फ़िगरेशन हैं। नियमित उपयोगकर्ता के लिए सबसे उपयोगी विकल्प हैं जारी रखें और नोपास ।
- पहचान वह उपयोगकर्ता या समूह है जो doas क्रियान्वित कर रहा है।
- के रूप में लक्ष्य वह उपयोगकर्ता है जिसे "पहचान" चला सकता है या नहीं चला सकता है।
- cmd वह आदेश है जिसे "पहचान" "लक्ष्य के रूप में" चला सकता है या नहीं चला सकता है। डिफ़ॉल्ट सभी प्रोग्राम हैं, लेकिन आप इस क्षेत्र में एक विशेष प्रोग्राम निर्दिष्ट कर सकते हैं।
- तर्क वे तर्क हैं जो आपके द्वारा इंगित कमांड के लिए विशिष्ट हैं।
उदाहरण के लिए, निम्नलिखित लिखने से व्हील समूह में कोई भी उपयोगकर्ता कमांड को रूट के रूप में निष्पादित करने में सक्षम हो जाएगा। विंडो बंद होने तक रूट शेल भी बना रहेगा।
permit persist :wheel as root
आप एक ऐसा नियम भी बना सकते हैं जो किसी विशिष्ट कमांड के लिए केवल एक विशिष्ट उपयोगकर्ता को लक्षित करता है। उदाहरण के लिए, आप उपयोगकर्ता "बॉब" को "उपयुक्त" प्रोग्राम को बिना किसी पासवर्ड के रूट के रूप में चलाने की अनुमति देने के लिए निम्न नियम का उपयोग कर सकते हैं।
permit nopass bob as root cmd apt
मेरे मामले में, मैं चाहता हूं कि समूह "पहिया" बिना किसी पासवर्ड के रूट के रूप में चले। मैं यह भी नहीं चाहता कि उपयोगकर्ता आगा, जो पहिया समूह का हिस्सा है, किसी भी आदेश को रूट के रूप में चलाने के लिए। इसलिए मैं अपने “/etc/doas.conf” में निम्नलिखित लिखूंगा:
permit nopass :wheel as root deny aga as root
पोस्ट-कॉन्फ़िगरेशन
उसके बाद, आपको यह सुनिश्चित करने के लिए कुछ कमांड निष्पादित करने होंगे कि doas इरादे के अनुसार काम कर रहा है। सबसे पहले, आपको doas.conf के मालिक को रूट पर ठीक से सेट करना होगा:
sudo chown -c root:root /etc/doas.conf
आपको यह सुनिश्चित करने के लिए कॉन्फ़िगरेशन फ़ाइल की फ़ाइल अनुमतियों को 0644 पर सेट करना होगा कि फ़ाइल केवल रूट उपयोगकर्ता के लिए ही पहुंच योग्य होगी।
sudo chmod -c 0644 /etc/doas.conf
अंत में, आपको कॉन्फ़िगरेशन के भीतर किसी भी सिंटैक्स त्रुटियों के लिए स्वयं doas की जांच करनी होगी। ऐसा करने के लिए, निम्न आदेश चलाएँ:
sudo doas -C /etc/doas.conf && echo "OK" || echo "ERROR"
बधाई हो! आपने अपने सिस्टम के लिए सफलतापूर्वक doas स्थापित और कॉन्फ़िगर किया है। अब आप sudo के विकल्प के रूप में doas का उपयोग करना शुरू कर सकते हैं या अपनी doas.conf फ़ाइल को अपनी पसंद के अनुसार ठीक कर सकते हैं। Linux में सिस्टम व्यवस्थापन के बारे में अधिक जानकारी के लिए, आप इस लेख को पढ़ सकते हैं।
अक्सर पूछे जाने वाले प्रश्न
<एच3>1. मेरा कॉन्फ़िगरेशन काम नहीं कर रहा है। मैंने एक विशिष्ट उपयोगकर्ता और एक सामान्य नियम के लिए एक नियम जोड़ा है लेकिन उपयोगकर्ता के लिए नियम काम नहीं कर रहा है।doas कॉन्फ़िगरेशन फ़ाइल सबसे सामान्य नियम से लेकर सबसे विशिष्ट नियम तक काम करती है। आपके कॉन्फ़िगरेशन के काम करने के लिए, आपको पहले वह नियम निर्दिष्ट करना होगा जो सभी उपयोगकर्ताओं पर लागू होता है। फिर आप इसके नीचे एक एकल उपयोगकर्ता को लक्षित करने वाला नियम निर्दिष्ट कर सकते हैं।
<एच3>2. क्या sudo और doas को एक ही सिस्टम में रखना संभव है?हां! दोआस और सूडो दो अलग-अलग कार्यक्रम हैं। वे एक दूसरे के साथ संघर्ष नहीं करते हैं, और सिस्टम पर सूडो छोड़ना और दोस का उपयोग करना ठीक है।
<एच3>3. क्या doas का उपयोग करके रूट शेल प्राप्त करना संभव है?
हां, बशर्ते आपने अपनी कॉन्फ़िगरेशन फ़ाइल को ठीक से कॉन्फ़िगर किया हो। आप doas -s
. चलाकर एक रूट शेल शुरू कर सकते हैं ।