मैं समय-समय पर याद करते हुए सूडो पासवर्ड कैसे बढ़ाऊं?


61

मैं पहले से ही जानता हूं कि मुझे फ़ाइल को ट्यून करने के लिए / etc / sudoers की जरूरत है लेकिन मैं पूरी जानकारी देखना चाहता हूं और एक ऐसा समाधान भी चाहिए जिससे मुझे viसंपादक का उपयोग करने की आवश्यकता न पड़े ।

अपडेट: कभी भी, फ़ाइल को किसी अन्य चीज़ से संपादित करने की कोशिश न करें visudo


1
आप EDITOR env var सेट कर सकते हैं, जबकि visudo का उपयोग भी कर सकते हैं :: sudo env EDITOR = nano visudo
अच्छा व्यक्ति

जवाबों:


86

sudo visudoइस पंक्ति को चलाएं और जोड़ें:

Defaults    timestamp_timeout=-1

देख लो man 5 sudoers-1पासवर्ड कभी भी समय समाप्त होने का कारण नहीं बनता है। आप मिनटों में अपनी पसंद के अनुसार संख्या बदल सकते हैं।

इसके लिए मैन पेज sudoकहता है कि sudo -v"एक और 5 मिनट के लिए सूडो टाइमआउट का विस्तार करता है"।

फ़ाइल को संपादित करने के बजाय 'sudo visudo' चलाने से सिस्टम में बदलाव आने से पहले sudoers फ़ाइल को मान्य करने का कारण बनता है। उदाहरण के लिए, यदि आप किसी भटके हुए चरित्र को कहीं छोड़ देते हैं, जब आप बचते हैं और बाहर निकलते हैं, तो यह कहेगा कि "सुडोयर्स फ़ाइल में कोई त्रुटि है, आप क्या करना चाहेंगे?" ... इसलिए आपको वापस अंदर जाने और संपादित करने का मौका दे रहा है। यह वास्तव में मेरे साथ सिर्फ 10 मिनट पहले हुआ था।


20
हां, लेकिन visudoबचत करने से पहले sudoers फ़ाइल पर कुछ बुनियादी पवित्रता जांच चलाता है। यदि आप viसीधे फ़ाइल का उपयोग करके गड़बड़ करते हैं तो आप अपने आप को sudo का उपयोग करने से रोक सकते हैं जिससे परिवर्तन को पूर्ववत करना बहुत मुश्किल हो जाता है।
nohillside

4
विशेषाधिकार अन्य प्रणालियों पर समान हैं, इसलिए Apple के साथ कुछ भी नहीं करना है। visudoसिस्टम डिफॉल्ट एडिटर के चारों ओर लपेटता है (यदि रूट डिफॉल्ट को ओवरराइड कर दिया है तो मैं रूट यूजर डिफॉल्ट का अनुमान लगाऊंगा), इसलिए इसका वी बार नाम से कोई लेना-देना नहीं है। मेरे सिस्टम पर (सेब btw नहीं) मुझे नैनो मिलता है। कोशिश करें export EDITOR='/bin/nano'या जो भी संपादक आपको पसंद हो, उसका प्रयोग करें।
क्रिस

4
उम ... आप इसे सही करने के लिए रूट का उपयोग नहीं कर सकते, क्योंकि आप रूट नहीं कर सकते, क्योंकि आपने अपनी sudo फ़ाइल भर दी है ... यह पूरी बात है।
डेव्यूलेस

1
एक पेशेवर भूमिका में आप sudo तक पहुँच सकते हैं, लेकिन रूट पासवर्ड नहीं है। आपका सर्वर देश भर के एक डेटासेन्ट में हो सकता है, जिससे एकल उपयोगकर्ता मोड का उपयोग करना कठिन हो जाता है। लेकिन, अगर आपको पेशेवर कहा जाता है, तो आपको शायद ऐसी चेतावनी नहीं दी जाएगी। मुद्दा यह है कि आपको पेशेवरों से सीखना चाहिए। अच्छी आदतें बनाने से बचने के तरीकों की तलाश न करें। फिर हमें स्टैक एक्सचेंज और आईआरसी पर आपके उन्मत्त रोने को सुनना होगा।
ब्रूनो ब्रोंस्की

1
(शायद यह सभी के लिए स्पष्ट है, लेकिन जोड़ना): टाइमस्टैम्प_टाइम मिनट में है, इसमें एक भिन्नात्मक घटक शामिल हो सकता है।
उपयोगकर्ता

3

बनें वास्तव में संशोधित करने के बारे में सावधान /etc/sudoersसीधे!

उदाहरण के लिए, मैंने ऊपर दिए गए सुझाव को सीधे आज़माया:

sudo sh -c 'echo "\nDefaults timestamp_timeout=-1">>/etc/sudoers'

जो मेरी /etc/sudoersफ़ाइल (एक CentOS वर्चुअलबॉक्स VM पर) गड़बड़ कर दी । होना चाहिये था:

sudo sh -c 'echo -e "\nDefaults timestamp_timeout=-1">>/etc/sudoers'

सौभाग्य से, मेरे पास रूट खाते तक पहुंच थी, रूट के रूप में लॉग इन किया, visudoसमस्या का इस्तेमाल किया और मरम्मत की! इसलिए, मैं visudoइसके बजाय w / उपरोक्त टिप्पणियों का उपयोग करने के लिए सहमत हूं ।


1

कमांड के साथ sudoers की सभी जानकारी टर्मिनल से पाई जा सकती है

man sudoers

आप फ़ाइलों को संपादित करने के लिए सरल पाठ को भी उपयोगकर्ता कर सकते हैं, हालांकि निजी लोग इसे मुश्किल बनाते हैं। सूदखोर है-r--r----- (Octal 0440)

यह इंगित करता है कि Apple वास्तव में आपको फ़ाइल के साथ खिलवाड़ नहीं करना चाहता है। यह वास्तव में OS की मुख्य सुरक्षा है।

संपादन के लिए विकल्प vi, emacs या मेरे व्यक्तिगत पसंदीदा BBEdit हैं।


5
एक कारण है कि उन विशेषाधिकार निर्धारित हैं। वे visudoफ़ाइल को स्वयं संपादित करने के बजाय आपको उपयोग करने के लिए बाध्य करने के प्रयास में सेट हैं । इसके अलावा, ओएस एक्स के साथ इसका कोई लेना-देना नहीं है। यह मानक * निक्स है। इसके अलावा, यदि आप एक गैर-डिफ़ॉल्ट संपादक का उपयोग करना चाहते हैं, तो $EDITORकॉल करने से पहले पर्यावरण चर सेट करें visudo। उदा EDITOR=nano sudo visudo
डेविएल्स

1

इस आदेश के साथ sudo टाइमआउट को अक्षम करें:

sudo sh -c 'echo "\nDefaults timestamp_timeout=-1">>/etc/sudoers'

इस विधि के साथ sudo मध्यांतर को फिर से सक्षम करने के लिए:

sudo sed -i "/Defaults timestamp_timeout=-1/d" /etc/sudoers

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

@Matteo वैसे तो आप अपनी पसंद की संपत्ति पर कुछ भी कर सकते हैं, बशर्ते आपको परिणामों की जानकारी हो। कुछ स्थितियों में यह ठीक है, उदाहरण के लिए मैं इसे ताजे मैक बिल्ड पर उपयोग करता हूं जिनके पास स्वचालन स्क्रिप्ट के भाग के रूप में उन पर कोई मूल्यवान डेटा नहीं है। मैंने चेतावनी देने के लिए इस उत्तर को संपादित करने का सुझाव दिया है। आदर्श रूप में sudoएक फ़ाइल को संपादित किए बिना इसे बदलने के लिए एक-लाइनर तरीका होना चाहिए!
samthebest

1
खबरदार, यह खतरनाक सलाह है। इसके बजाय विस्कोस का उपयोग करें।
विल शेपार्ड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.