नेटवर्क से दूर होने पर LDAP उपयोगकर्ता प्रमाणीकरण और NFS होम निर्देशिका शेयरों का क्या होता है?


9

वर्तमान में मेरे पास होम नेटवर्क पर कई मशीनें हैं जो स्टैटिक डेस्कटॉप और लैपटॉप का मिश्रण हैं। यह मेरे लिए असहनीय हो रहा है और उन सभी के लिए अव्यवहारिक है, जिनके पास स्थानीय घर निर्देशिकाएं, सेटिंग्स और सुरक्षा है इसलिए मैं साझा उपयोगकर्ता निर्देशिकाओं के लिए सामान्य उपयोगकर्ता प्रबंधन और एनएफएस के लिए एलडीएपी का उपयोग करने पर विचार कर रहा हूं।

क्या होता है जब लैपटॉप में से एक सड़क पर होता है? घर नेटवर्क पहुंच से बाहर है इसलिए स्थानीय विफल हो जाएगा और स्थानीय भंडारण में वापस आ जाएगा? इसके अलावा, जब लैपटॉप रिटर्न एनएफएस सर्वर के लिए घर के भंडारण को फिर से सिंक करने का एक तरीका है?

जवाबों:


6

न तो एनएफएस और न ही एलडीएपी डिस्कनेक्ट किए गए ऑपरेशन का समर्थन करते हैं: यानी, जब लैपटॉप सर्वर तक नहीं पहुंच सकता है, तो यह किसी भी एनएफएस-माउंटेड डायरेक्ट्री तक नहीं पहुंच पाएगा और न ही यह उपयोगकर्ता के लुकअप को कर पाएगा। मूल रूप से, यह अटक जाएगा।

कुछ वर्कअराउंड निम्नलिखित हो सकते हैं।

एनएफएस के माध्यम से घर निर्देशिकाओं को मिटाने के बजाय, आप स्थानीय निर्देशिकाओं को केंद्रीय सर्वर पर एक के साथ सिंक्रनाइज़ करने के लिए एक उपयोग एक साथ रख सकते हैं । आप क्रॉन से एकसमान चला सकते हैं, एक परीक्षण द्वारा संरक्षित है जो ऑपरेशन को निरस्त करता है यदि सर्वर अनुपलब्ध है। AskUbuntu पर यह पोस्ट और यह अन्य एक सिंक्रनाइज़ेशन के विषय और कुछ उपयोगी सुझावों पर चर्चा प्रदान करता है।

उपयोगकर्ता प्रमाणीकरण / प्राधिकरण समस्या के बारे में, समाधान libnss-dbउपयोगकर्ता जानकारी के लिए स्रोत के रूप में उपयोग करते हुए घूमते हैं:

  • स्थापित करें libnss-db, फिर नियमित के अलावा स्रोत /etc/nsswitch.confको देखने के लिए कॉन्फ़िगर करें :dbfiles

    पासवार्ड: फाइलें डीबी समूह: फाइलें डीबी छाया: फाइलें डीबी

    dbस्रोत फ़ाइलों में स्थित हैं /var/lib/misc ( /var/lib/misc/passwd.dbआदि)। फिर आप अपने केंद्रीय सर्वर पर इन फ़ाइलों की एक मास्टर कॉपी रख सकते हैं और ग्राहकों को rsync+ के साथ सिंक्रनाइज़ कर सकते हैं cron। नुकसान: सर्वर पर db फ़ाइलों को प्रबंधित करने के लिए कोई तैयार प्रबंधन स्क्रिप्ट नहीं हैं (जो मुझे पता है), साथ ही आप एक सिंक्रोनाइज़ेशन देरी rsyncको रोकते हैं और मास्टर सर्वर से कनेक्ट करने के लिए एक तरीका सेटअप करते हैं।

  • nss-updatedbऔर libpam-ccredsसाथ: संकुल सेट करने के लिए एक क्लीनर तरीका प्रदान करते हैं nss-updatedbआप स्थानीय रूप से पुन: कर सकते हैं passwd.dbऔर group.db, जबकि shadowजानकारी द्वारा किया जाता है libpam-ccredsREADMEपैकेज के साथ आने वाली फ़ाइलों में ये सेट करने के निर्देश दिए जा सकते हैं।


@ जॉर्ज: इस सुझाव के लिए बहुत बहुत धन्यवाद! मैंने उत्तर पाठ को अपडेट कर दिया है।
रिकार्डो मुर्री

2

फ़ाइलें

फ़ाइलों के लिए, मैं सामान्य फ़ाइलों के लिए नेट आधारित सिंक के लिए जाऊंगा ( उबंटू वन या ड्रॉपबॉक्स ) और फिर बड़ी फ़ाइलों (शायद संगीत, फ़ोटो, वीडियो और उबंटू आईएसओ) के लिए एक साझा फ़ोल्डर है। यह एक एनएफएस माउंट हो सकता है, कि जब यह विफल होता है तो यह बहुत ज्यादा मायने नहीं रखता है, या सांबा शेयर, या शायद कई अन्य तकनीकों में से एक है।

एलडीएपी

LDAP विफल होना निश्चित रूप से परेशानी का कारण बनता है। आपके द्वारा अनजाने में किए गए सिस्टम खातों के सभी प्रकारों का अनुवाद नहीं किया जा सकता (नाम <-> आईडी नंबर) और सिस्टम, सबसे अच्छा, बार-बार एक मिनट के लिए बार-बार लटकाए जाने से पहले LDAP सर्वर से प्रतिक्रिया का इंतजार कर सकता है स्थानीय प्रणाली में वापस गिर रहा है। या सिस्टम सिर्फ लॉक हो सकता है और पूरी तरह से विफल हो सकता है।

इसके आस-पास कुछ तरीके हैं । आप एक स्थानीय प्रति सेट कर सकते हैं और इसे सिंक कर सकते हैं, विभिन्न तरीकों से - इस प्रश्न के अन्य उत्तर और जुड़े हुए प्रश्न देखें। आप LDAP को सिस्टम उपयोगकर्ताओं को LDAP निर्देशिका से नहीं, बल्कि स्थानीय फ़ाइलों से प्राप्त करने के लिए भी कह सकते हैं। हमारे सर्वर पर हमने निम्नलिखित को अपने अंत में रखा हैldap.conf

# We need to ensure that various things can work without LDAP being available
# for example: booting, ssh in as root, apache ...
nss_initgroups_ignoreusers avahi,avahi-autoipd,backup,bin,daemon,dhcp,dhcpd,games,gdm,gnats,haldaemon,hplip,irc,klog,libuuid,list,lp,mail,man,messagebus,munin,mysql,nbd,news,ntp,nut,polkituser,proxy,pulse,root,sshd,statd,sync,sys,syslog,uucp,www-data

आप यह सुनिश्चित करना चाहेंगे कि सभी सिस्टम उपयोगकर्ता उस सूची में हों। तब भी यह लैपटॉप उपयोग के लिए पर्याप्त नहीं है।

से nss_ldap आदमी पेज

nss_initgroups_ignoreusers <user1,user2,...,userN>
          This option directs the nss_ldap implementation of initgroups(3)
          to return NSS_STATUS_NOTFOUND if called with a listed  users  as
          its argument.

इसलिए मूल रूप से एलडीएपी दिखावा करता है कि यह उन उपयोगकर्ताओं को मास्टर सर्वर से संपर्क किए बिना नहीं जानता है, इसलिए एनएसएस स्थानीय उपयोगकर्ताओं पर वापस आ जाता है और सिस्टम ठीक काम करता है।

एक अंतिम विचार यह है कि यदि आप LDAP सीखने में समय बिताने के इच्छुक हैं, तो आप इसके बजाय कुछ बुनियादी कठपुतली सीख सकते हैं और इसका उपयोग कर सकते हैं कि अपने सभी उपयोगकर्ताओं को सभी प्रणालियों में समान रखें - उदाहरण के लिए इस कठपुतली नुस्खा को देखें। कठपुतली आपको बहुत सी अन्य चीजों को करने की अनुमति देगी - सामान्य पैकेज स्थापित करना, विभिन्न पहलुओं का सामान्य सेट ...

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