मैंने अक्सर सुना है कि रूट यूजर के रूप में सीधे लॉग इन करने के बजाय र पर मुकदमा करना बेहतर है (और निश्चित रूप से लोग यह भी कहते हैं कि सुडोल का उपयोग करना भी बेहतर है)। मैं वास्तव में कभी नहीं समझ पाया कि एक दूसरे से बेहतर क्यों है, अंतर्दृष्टि?
मैंने अक्सर सुना है कि रूट यूजर के रूप में सीधे लॉग इन करने के बजाय र पर मुकदमा करना बेहतर है (और निश्चित रूप से लोग यह भी कहते हैं कि सुडोल का उपयोग करना भी बेहतर है)। मैं वास्तव में कभी नहीं समझ पाया कि एक दूसरे से बेहतर क्यों है, अंतर्दृष्टि?
जवाबों:
आक्षेप केवल su
या sudo
जब आवश्यक हो।
अधिकांश रोज़मर्रा के कार्यों के लिए एक रूट शेल की आवश्यकता नहीं होती है। अतः आपके डिफ़ॉल्ट व्यवहार के रूप में एक अनपेक्षित खोल का उपयोग करना अच्छा है और तब केवल विशेष कार्यों को करने की आवश्यकता होने पर जड़ तक बढ़ जाता है।
ऐसा करके आप अपने द्वारा उपयोग किए जाने वाले किसी भी एप्लिकेशन से खतरनाक गलतियों (खराब स्क्रिप्टिंग, गलत वाइल्डकार्ड आदि) और कमजोरियों के लिए गुंजाइश कम कर रहे हैं। विशेष रूप से जो इंटरनेट से जुड़ते हैं - पुराने विज्ञापन देखें "रूट के रूप में आईआरसी मत करो" ।
sudo
अक्सर सिफारिश की जाती है क्योंकि यह आपको ठीक अनाज और ऐसे विशेषाधिकारों के उपयोग की अनुमति देता है।
इन प्रथाओं का अवलोकन करके आप दूरस्थ रूट लॉगिन को निष्क्रिय करने की स्थिति में हैं। यह किसी भी-हमलावर के लिए प्रवेश की बार बढ़ाता है, क्योंकि उन्हें दोनों नियमित उपयोगकर्ता खाते से समझौता करने की आवश्यकता होगी जो "पहिया" समूह का सदस्य था और आदर्श रूप से केवल SSH सार्वजनिक कुंजी द्वारा अधिकृत था, फिर रूट खाता ही।
sudo
बेहतर है, su
आपको -m
रूट टर्मिनल में पर्यावरण चर रखने के लिए ध्वज का उपयोग करने की अनुमति भी देता है । कुछ भी नहीं मुझे और अधिक bonkers ड्राइव su
करने के लिए एक बिट के लिए, केवल ~
निर्देशिका नाम के साथ कुछ करने के लिए और यह काम नहीं किया है।
मुख्य कारण ऑडिट ट्रेल बनाना है। यदि आपको एक नियमित उपयोगकर्ता के रूप में एक सिस्टम में प्रवेश करने की आवश्यकता है और फिर su, यह ट्रेस करना संभव है कि दिए गए कार्यों के लिए कौन जिम्मेदार है।
sudo भी स्वचालित रूप से हर कमांड को syslog में लॉग करता है और आप प्रत्येक उपयोगकर्ता के उपयोगकर्ता को कमांड को परिभाषित कर सकते हैं।
sudo vim foo.txt
फिर वीम के भीतर से एक शेल को छोड़ दें आपको नियमित सूडो लॉगिंग के बिना एक रूट शेल देगा।
sudo -i
एक संवादात्मक सत्र प्राप्त करने के लिए ...
यदि आप एक ऑडिट ट्रेल बनाना चाहते हैं, और "सुडो सु -" या "सुदो विम foo.txt" समस्याओं का शिकार नहीं होना चाहते हैं, तो आप यहाँ पर "सूदोश" का उपयोग कर सकते हैं। Sudo के माध्यम से रूट एक्सेस को सौंपें, लेकिन "sudosh" को चलाने के लिए एकमात्र स्वीकार्य कमांड बनाएं।
sudosh एक लॉगिंग शेल है, और आप पूरे टर्मिनल सत्र को बाद की तारीख में फिर से दिखा सकते हैं, यह दिखाते हुए कि उपयोगकर्ता ने अपने टर्मिनल पर क्या देखा था।
आपको गहराई से सुरक्षा का अभ्यास करना चाहिए।
दूरस्थ रूट एक्सेस (या पासवर्ड के माध्यम से कम से कम रूट एक्सेस) को अस्वीकार करें। (यदि आप कुंजियों के माध्यम से रूट एक्सेस की अनुमति देते हैं, तो सावधानीपूर्वक उन कुंजियों को नियंत्रित करें, या बेहतर अभी तक केबरोस जैसी किसी चीज़ का उपयोग करें जो कुंजी के केंद्रीकृत निरस्तीकरण की अनुमति देता है)।
मैं su को अक्षम कर दूंगा और sudo का उपयोग करूंगा। इस तरह, उपयोगकर्ता सिस्टम का उपयोग करने के लिए कुंजियों (अधिमानतः एन्क्रिप्टेड) का उपयोग करते हैं फिर वे केवल विशेषाधिकार बढ़ाने के लिए अपने पासवर्ड का उपयोग करते हैं। आप सूडो के साथ किन कार्यक्रमों में लोगों को एक्सेस कर सकते हैं, लेकिन ज्यादातर आप रूट पासवर्ड को जानने वाले लोगों तक पहुंच को सीमित कर सकते हैं।
एक आदर्श दुनिया में, आपको इंटरनेट पर अपने रूट पासवर्ड प्रकाशित करने में सक्षम होना चाहिए और इससे कोई फर्क नहीं पड़ेगा, भले ही आपने लोगों को अपनी मशीन तक पहुंच दी हो (लेकिन / / / sudoers फ़ाइल में उन्हें नहीं डाला था)। बेशक, आपको रूट पासवर्ड प्रकाशित नहीं करना चाहिए , लेकिन विचार यह है कि आप सुरक्षा की केंद्रित परतों के साथ अपने सिस्टम की रक्षा करते हैं।
यदि आप नियमित रूप से रूट का उपयोग कर रहे हैं, तो आपकी अनुमतियां गलत हो सकती हैं या आपको फ़ाइलों या निर्देशिकाओं को r / w / x करने के लिए sudo अधिकार या एक नया समूह अधिकार देने की आवश्यकता हो सकती है।
अच्छी अनुमतियाँ योजनाएँ कुछ समय के लिए भी होती हैं, जब लिनक्स उपयोगकर्ता गलत हो जाते हैं, या उन्हें उस दायरे का एहसास नहीं होता है।
क्या मुझे भी उबंटू ने शुरू नहीं किया!