ऐसा नहीं है कि इसे बदलने के लिए एक बहुत अच्छा विचार है, लेकिन मज़े के लिए। के अनुसार इस पद, अभी भी में प्रविष्टियों को बदलने के बाद भी कुछ समस्याएं हैं /etc/passwd
, /etc/shadow
और /etc/sudoers
। कोई सुझाव?
ऐसा नहीं है कि इसे बदलने के लिए एक बहुत अच्छा विचार है, लेकिन मज़े के लिए। के अनुसार इस पद, अभी भी में प्रविष्टियों को बदलने के बाद भी कुछ समस्याएं हैं /etc/passwd
, /etc/shadow
और /etc/sudoers
। कोई सुझाव?
जवाबों:
सैद्धांतिक रूप से, इसे बदलना /etc/passwd
और यह /etc/shadow
सब आपको 'नाम बदलने' की आवश्यकता होगी। समस्या इसलिए होती है क्योंकि अस्तित्व में यूनिक्स सॉफ्टवेयर का हर एक टुकड़ा मानता है कि उपयोगकर्ता नाम 'रूट' मौजूद है और यह सुपरयूजर - मेल एलियासेस, विभिन्न डेमॉन, क्रोन ...
यदि आप वास्तव में नरक की कोशिश कर रहे हैं, find /etc -type f -exec grep -l root {} +
तो आपको हर उस कॉन्फ़िगर फ़ाइल की एक सूची ढूंढने की एक अच्छी शुरुआत होनी चाहिए , जिसे आपको संभवतः बदलना होगा - लेकिन जैसा कि आपने पहले ही कहा था, लगभग हर बोधगम्य स्थिति में यह वास्तव में बुरा विचार है।
संपादित करें एक और विचार - यदि आपके पास पहले से ही (जो आपके पास नहीं होना चाहिए ), सुनिश्चित करें कि /etc/aliases
इसमें एक प्रविष्टि root
और एक उपयोगकर्ता नाम मौजूद है या एक ईमेल पता है जो सही मूल्यांकन करता है। बहुत से स्वचालित सिस्टमवाइड कार्य ( cron
उदाहरण के लिए) ईमेल द्वारा अपना आउटपुट भेजते हैं root
, जो पारंपरिक रूप से उस सिस्टम के संचालन के लिए जिम्मेदार सिस्टम एडमिनिस्ट्रेटर (ओं) को दिया जाता है।
chown root …
से एक शेल स्क्रिप्ट में लिखे हैं।
यह सब कहते हुए डर लगता है, "यह मत करो!" हास्यास्पद है। एक समय पर, हाँ, यह शायद बहुत बुरी तरह से लिखी गई स्क्रिप्टों को तोड़ता था, लेकिन मुझे संदेह है कि वे अब इतने सामान्य नहीं हैं; कम से कम मानक वितरण में नहीं।
हमें लिनक्स सर्वर के सबसेट पर रूट अकाउंट का नाम बदलने के लिए कहा गया है। इसलिए, शोध करने का प्रयास करने के बाद कि यह कैसे सही ढंग से करने के बारे में है, मैंने, इसके बजाय कई, कई पोस्ट कहा, "यह मत करो!" यदि आप ऐसा करने के लिए चुनते हैं, तो "खराब सामान" की सख्त चेतावनी के साथ। लेकिन, मुझे अभी तक "खराब सामान" के ठोस उदाहरणों के साथ कोई भी नहीं मिला है जो हो सकता है।
इसलिए, मुझे वापस जाने और समझाएं कि मैं कहां हूं और हम यहां कैसे पहुंचे। हम एक PCI अनुरूप वातावरण का निर्माण कर रहे हैं, और एक उपकरण जो हमें उन "आवश्यकताओं" को पूरा करने में मदद करता है, हमें बता रहा है कि हमें रूट और एडमिनिस्ट्रेटर और अतिथि खातों का नाम बदलकर कुछ और करने की आवश्यकता है। पीसीआई के बारे में अशिक्षित लोगों के लिए, आपके पास दिशानिर्देशों का पालन करने या दस्तावेज़ बनाने का विकल्प है कि आप या तो उस दिशानिर्देश का पालन नहीं कर सकते हैं या नहीं, और सिस्टम को सुरक्षित रखने के लिए आपको कितनी नीरस रणनीति का उपयोग करना है। इसलिए, मैं अधिकांश स्थानों के दस्तावेज़ों की कल्पना करता हूं कि वे अपने रूट खातों का नाम बदलने के लिए क्यों नहीं जा रहे हैं, हालांकि, हमारे समूह ने फैसला किया है कि, अगर हम बिना समस्या के विंडोज़ व्यवस्थापक खातों का नाम बदल सकते हैं, तो लिनक्स रूट खातों का भी नाम बदलने जा रहे थे।
मैं "सुरक्षा में अस्पष्टता के तर्क" से अच्छी तरह से वाकिफ हूं; मुझे पता है कि रूट खाता नाम बदलने से वास्तव में सुरक्षा में बहुत सुधार नहीं होता है, रूट को SSH में अक्षम किया जाना चाहिए, आदि, मुझे पता है, यह बात नहीं है, मैं और अधिक सुनने में दिलचस्पी नहीं रखता हूं। मैं भी अधिक "आकाश गिर जाएगा" चेतावनियों में दिलचस्पी नहीं है। मैं इस तरह के बयानों की तलाश कर रहा हूं: "> यह बुरी चीज <> इस मानक पैकेज के साथ होगा <(जब तक आप ऐसा नहीं करते हैं <)।"
अब तक मेरे पास 3 सेंटोस (आरएचईएल) सिस्टम हैं जो कि मूल रूप से रूट अकाउंट का नाम बदलने के साथ कोई समस्या नहीं है। यहाँ मैंने क्या किया: मैंने / etc / passwd, / etc / shadow, / etc / group, और / etc / gshadow में खाता नाम बदल दिया। फिर / etc / में नाम रूट के लिए grepped और पोस्टफ़िक्स उपनाम फ़ाइल को संशोधित किया ताकि रूट हमारे नए खाते के नाम के लिए एक उपनाम था, इसे rojotoro कहें। (अन्य ईमेल प्रणालियों के लिए कुछ ऐसा ही किया जाना चाहिए)। मुझे यह भी पता चला कि मुझे लॉग इन करने के लिए कुछ कॉन्फ़िगरेशन को बदलने की आवश्यकता है, जब यह वर्णन किया जाए कि कौन फ़ाइलों को स्वयं बनाना चाहिए। और यह सब मैं अब तक बदल गया है।
मैंने कई init.d स्क्रिप्ट्स को देखा है, लेकिन कुछ भी नहीं बदला है, और सब कुछ बूट पर ठीक शुरू करने के लिए प्रतीत होता है। मुझे sudo का उपयोग करते समय नया खाता निर्दिष्ट करना होगा: "sudo -u rojotoro vim / etc / passwd" उदाहरण के रूप में, लेकिन मुझे वास्तव में sudoers फ़ाइल के भीतर कुछ भी बदलने की आवश्यकता नहीं थी। मुझे उम्मीद थी कि शायद सेलिनक्स के साथ कुछ मुद्दे जो हमारे पास हैं और लागू कर रहे हैं, लेकिन इस प्रकार मुझे उस प्रणाली को छूने की आवश्यकता नहीं है।
मैं यह भी देख सकता हूं कि mkdev या mkfs स्क्रिप्ट्स को समायोजित करने की आवश्यकता हो सकती है, लेकिन मैं उन का उपयोग करने की योजना नहीं बनाता, इसलिए मैंने उनकी जांच के योग्य नहीं देखा।
अगर यह सच में एक सेलेनक्स सक्षम प्रणाली पर कोई बुरा प्रभाव नहीं के साथ बदलना आसान है, तो सभी भय की निरंतरता क्यों?
rpm -Va
कि उन सिस्टम पर क्या कहते हैं जहाँ रूट अकाउंट का नाम बदला गया है? अधिकतम आरपीएम गाइड के अनुसार "उपयोगकर्ता और समूह के पहचानकर्ता गैर-संख्यात्मक होने चाहिए" इसलिए किसी भी आरपीएम जो निर्दिष्ट करता है कि फ़ाइलों को रूट द्वारा स्वामित्व में होना चाहिए, स्थापित समय पर ऐसा करने में असमर्थ होगा। बस सोच रहा था कि आपके सिस्टम इससे कैसे निपटेंगे।
सुझाव: ऐसा मत करो।
कुछ उपकरण यूआईडी के माध्यम से रूट करने के लिए बात करने की कोशिश करते हैं, वहां आपको समस्याएं नहीं होनी चाहिए। कुछ उपकरण मानते हैं कि आपका रूट खाता रूट कहलाता है, और टूट जाएगा। जब तक आप अपने सिस्टम को "मज़े के लिए" आधा करने के लिए तैयार नहीं होते हैं, तब तक, बस कोशिश न करें।
मेरे दिमाग में, UID 0 और /root
घर के साथ एक नया उपयोगकर्ता (उपनाम) बनाना सबसे आसान काम है ।
आप अपने रूट के डिफ़ॉल्ट शेल को ( /bin/false
या /sbin/nologin
तो कोई भी इसमें लॉगिन नहीं कर सकता है, लेकिन सिस्टम अभी भी इसका उपयोग करता है) और बनाए गए नए उपनाम के लिए लॉगिन क्यों नहीं करता?
razvan@naboo ~ $ head -2 /etc/passwd
root:x:0:0:root:/root:/bin/nologin
root2:x:0:0:root:/root:/bin/bash
razvan@naboo ~ $ su -
Password:
su: Authentication failure
razvan@naboo ~ $ su root2
Password:
naboo razvan # whoami
root
यदि आप रूट के शेल को कोलोन में बदलते हैं, तो सूडो, मेल या एफडब्ल्यू क्षतिग्रस्त नहीं होंगे।
/bin/false
या /sbin/nologin
यह किसी भी सेवा को शुरू करने में असमर्थ है। तो उन सभी को फिर से जोड़ना होगा। प्लस पूरा उद्देश्य सुरक्षा में सुधार करना था, "रूट" अनुमतियों के साथ एक दूसरा खाता जोड़ना शायद ही सुरक्षा में सुधार करता है।
लिनक्स विंडोज नहीं है और वर्तमान में अज्ञात भविष्य की समस्याएं पैदा किए बिना रूट का नाम आसानी से नहीं बदला जा सकता है।
रिमोट और यहां तक कि स्थानीय लॉगिन को रूट के रूप में अक्षम करना एक सुरक्षित दृष्टिकोण है क्योंकि यह खाता रूट को सक्रिय रूप से अक्षम करता है! UBUNTU अनिवार्य रूप से ऐसा करता है और रूट एक्सेस के बजाय sudo को बाध्य करता है।
मूल रूप से कोई भी आपके सिस्टम पर हमला करने के लिए रूट खाते का उपयोग नहीं कर सकता है क्योंकि यह सिस्टम में लॉगिन करने के लिए उपयोग नहीं किया जा सकता है!
यह अच्छा होगा अगर एक मानक तरीका आसानी से दोनों रूट खाते के नाम को संशोधित करने के साथ-साथ स्थापना पर अपने यूआईडी को आसानी से उत्पन्न करने के लिए बनाया गया था और यदि संभव हो तो यूआईडी लक्ष्यीकरण को रोकने के लिए हर ठंड शुरू होने पर लेकिन वर्तमान में मौजूद नहीं है।
समायोजन / etc / passwd रूट को संशोधित करें: x: 0: 0: root: / root: / bin / nologin
केवल EMERGENCY USE के लिए एक सिंगल फ़ॉलबैक व्यवस्थापक खाता बनाएं! fallbackadmin: एक्स: 0: 0: जड़: / जड़: / bin / bash
सभी प्रवेशों के लिए sudo लागू करें ताकि परिवर्तन लॉग ऑडिटिंग को सटीक रूप से ट्रैक करने के लिए लागू किया जा सके जो जवाबदेही के लिए परिवर्तन करता है!
यह PCI US Gov आवश्यकताओं को डिफ़ॉल्ट व्यवस्थापक / अतिथि खातों को अक्षम करने और एकल आपातकालीन उपयोग व्यवस्थापक खाता बनाने के लिए लागू करता है।
ऑडिटिंग के लिए लॉग को संग्रहीत करने का एक तरीका यह है कि यदि केंद्रीयकृत AAA लागू नहीं किया गया है, तो सभी उपयोगकर्ता से sudo खाता एक्सेस के साथ टर्मिनल इतिहास एकत्र करें।
केवल व्यवस्थापक को लागू करने का एक उपाय केवल एक उपयोगकर्ता केवल खाता और एक sudo सक्षम खाता बनाना है, तब उपयोगकर्ता को व्यवस्थापकीय पहुँच के लिए अपने sudo सक्षम खाते पर मुकदमा करने के लिए बाध्य करना होगा।
आप स्मार्ट कार्ड प्रमाणीकरण को भी लागू कर सकते हैं यदि आप बेहतर सुरक्षा चाहते हैं तो जीएनयू / लिनक्स के लिए समाधान उपलब्ध हैं जो दो सामान्य प्रमाणीकरण के लिए यूएस कॉमन एक्सेस कार्ड सीएसी समाधान की तुलना करते हैं।