क्या कोई कारण है कि / etc / passwd विश्वव्यापी पठनीय होना चाहिए? यह पासवर्ड हैश की तरह नहीं है जिसे उजागर नहीं किया जाना चाहिए, मैं सिर्फ यह जानना चाहता हूं कि क्यों।
क्या कोई कारण है कि / etc / passwd विश्वव्यापी पठनीय होना चाहिए? यह पासवर्ड हैश की तरह नहीं है जिसे उजागर नहीं किया जाना चाहिए, मैं सिर्फ यह जानना चाहता हूं कि क्यों।
जवाबों:
/etc/passwd
कभी-कभी उपयोगकर्ता डेटाबेस कहा जाता है। यह हमें इस बात का संकेत देना चाहिए कि क्यों इसे सभी को पढ़ने की आवश्यकता है। फ़ाइल मेटाडेटा का निरीक्षण करने वाली किसी भी उपयोगिता को कर्नेल और उसके सबसिस्टम द्वारा उपयोग की जाने वाली संख्यात्मक आईडी को हल करने में सक्षम होने के लिए /etc/passwd
(और /etc/group
) पढ़ने की आवश्यकता होती है, जिस पर हम मानव-निर्भर नाम रखते हैं। आपके होम डायरेक्टरी (मेल डिलीवरी एजेंट आदि) को खोजने के लिए जिन टूल की आवश्यकता होती है, वे उस जानकारी को देखते हैं /etc/passwd
, और inet
मिनिसर्वर्स जैसे fingerd
आपके विवरण को देखते हैं /etc/passwd
।
जैसा कि कहीं और इंगित किया गया है, फ़ाइल में कोई विशेष रूप से संवेदनशील डेटा नहीं है, क्योंकि आधुनिक सिस्टम ने पासवर्ड हैश को एक छाया पासवर्ड फ़ाइल में रखा है, जो केवल रूट द्वारा पठनीय है।
passwd
जब वास्तव में यह नाम प्रतिबिंबित नहीं करता है कि फाइल में क्या है?
/etc/passwd
(पहली बार में अनएन्क्रिप्टेड!)। जब तक पासवर्ड हैश को एक छाया फ़ाइल में स्थानांतरित किया गया, तब तक कई उपयोगिताओं पहले से मौजूद थीं जो जानकारी के अन्य टुकड़ों पर निर्भर थीं /etc/passwd
, इसलिए नाम अटक गया।
/etc/passwd
पासवर्ड हैश शामिल नहीं है (तो यह एक बड़ा मुद्दा नहीं है)। /etc/shadow
पासवर्ड हैश शामिल है और यह केवल जड़ (और छाया समूह) द्वारा पठनीय है
~user
उपयोगकर्ता के घर निर्देशिका में विस्तार करना जानता है/etc/passwd
, तो यह वास्तव में ऊपर देख रहा है , इसलिए सभी शेल को ऊंचा अधिकार देने के बजाय यह पठनीय है।