SSH कुंजी के लिए केंद्रीकृत प्रबंधन प्रणाली?


27

हम SSH लॉगिन के मुख्य-आधारित प्रबंधन पर स्विच करना चाहते हैं, और आश्चर्य होता है कि क्या कोई कुंजी-प्रबंधन प्रणाली है जो हमें दुनिया भर में एक्सेस कुंजियों के केंद्र का प्रबंधन करने की अनुमति देगा।

सिस्टम को आदर्श रूप से प्रति क्लाइंट कुंजी जारी करने की अनुमति देनी चाहिए, और यदि आवश्यक हो तो उन्हें रद्द करना, फ्लाई पर सर्वर मशीन कुंजी को अपडेट करना।

क्या किसी को ऐसी प्रणाली का पता है, या तो वाणिज्यिक या खुला स्रोत?

नोट: स्पष्ट करने के लिए, हमें क्लाउड सर्वर (EC2-like) और सेवा उपयोगकर्ताओं की एक छोटी राशि के लिए महत्वपूर्ण प्रबंधन की आवश्यकता है। मुझे लगता है कि LDAP + पैच का सुझाव नीचे जाने का तरीका हो सकता है।


7
क्या यह केवल मुझे लगता है कि "निजी-चाबियाँ और बादल" "पेय और ड्राइव" की तरह हैं। दोनों अलग-अलग मस्ती करते हैं लेकिन कभी साथ नहीं जाते।
मेल्क

1
"क्लाउड" शायद गलत शब्द है - यह लगता है कि वे क्या चाहते हैं केंद्रीकृत प्रमाणीकरण, दुनिया भर में स्थिरता के साथ।
voretaq7

नमस्ते। बिल्कुल - कि हम क्या देख रहे हैं।
सिनियरिटी

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

Userify कवर आप के लिए (देखें जो खोज रहे हैं serverfault.com/questions/647797/... )
जेमीसन बेकर

जवाबों:


8

ऐसा करने के बहुत सारे तरीके हैं। LDAP कुंजी संग्रहण को कई बार उल्लेख किया गया है, और मैंने वह किया है और यह काम करता है, जहाँ तक यह करता है। LDAP की अपनी प्रबंधन जिज्ञासाएँ हैं, हालाँकि, जो कुछ सीख देती हैं।

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


यह दृष्टिकोण निश्चित रूप से एक अच्छा है, और जैसा कि Womble बताते हैं कि इसका फायदा यह है कि सर्वर में रहने और चलने (और सुलभ) की घटना में LDAP डाउन है - हर LDAP- समर्थित प्रणाली को (मुझे जो कहने की हिम्मत होनी चाहिए ) है कम से कम एक उपयोगकर्ता जिसकी कुंजियों को Womble का वर्णन किया जाता है। नकारात्मक पक्ष यह है कि आपको उपयोगकर्ताओं को डी-अधिकृत करने के लिए एक कॉन्फ़िगर रन करना होगा। केवल कुछ अधिकृत उपयोगकर्ताओं के साथ "आपातकालीन खाते" के लिए कोई समस्या नहीं है। बड़ी संख्या में खातों के लिए बड़ी समस्या :)
voretaq7

1
आपके पास वास्तव में वैसे भी बड़े पैमाने पर कॉन्फ़िगर रन को ट्रिगर करने का एक तरीका है, इसलिए इसे एक खाता परिवर्तन के लिए करना एक बड़ी बात नहीं होनी चाहिए।
Womble

मैं सहमत हूं, दुर्भाग्य से व्यवसाय की जरूरतें / मानसिकताएं नहीं हैं: कई स्थानों पर व्यामोह (मेरा शामिल) यह निर्धारित करता है कि ऑफ-
ऑवर्स के

1
तो आप एक व्यावसायिक दिन के लिए टूटे हुए सामान को छोड़ने के लिए खुश हैं क्योंकि आप दिन के दौरान एक कॉन्फ़िगर पुश नहीं चला सकते हैं? सिर्फ इसलिए कि यह आम है, इसका मतलब यह नहीं है कि यह बेवकूफ नहीं है।
Womble

2
नमस्ते। तो एक अच्छा विचार इस के लिए कठपुतली का उपयोग किया जाएगा, उदाहरण के लिए?
SyRenity

23

उपयोगकर्ता द्वारा मुख्य जोड़े उत्पन्न किए जाने चाहिए।

उपयोगकर्ता निजी आधा रखता है - आपको इसे कभी नहीं देखना चाहिए। यदि आपके पास किसी की निजी कुंजी इस रूप में है जहाँ आप उसे पढ़ / उपयोग कर सकते हैं तो आप सुरक्षा को गलत कर रहे हैं।

सार्वजनिक आधा आपको दिया जाता है (आप जो भी तंत्र चाहते हैं: वेब फ़ॉर्म, ईमेल, दे-इट-टू-मी-ऑन-ए-सीडी), जिसे आप चाहते हैं, केंद्रीकृत किया जाएगा। कुछ स्थान LDAP में सार्वजनिक कुंजी संग्रहीत करते हैं। अन्य लोग authorized_keysअपनी परिनियोजन प्रणाली का उपयोग करके फ़ाइलों को बाहर निकालते हैं ।


मेरे वातावरण में जिन उपयोगकर्ताओं को शेल एक्सेस की आवश्यकता होती है, वे मुझे अपनी सार्वजनिक कुंजी देते हैं। इन कुंजियों को हमारे LDAP सिस्टम में जोड़ा जाता है, और LDAP सार्वजनिक कुंजी पैच केsshd माध्यम से उन्हें प्रमाणित करने के लिए प्रत्येक उपयोगकर्ता के लिए सूचीबद्ध सार्वजनिक कुंजी (ओं) को संरक्षित करता है
जब किसी को अतिरिक्त कुंजी जोड़ने या किसी मौजूदा कुंजी को रद्द करने की आवश्यकता होती है, तो वे एक व्यवस्थापक को बता देते हैं, और हम इसका ध्यान रखते हैं। आखिरकार जैसे ही हम पैमाना बनाते हैं, मैं एक ऐसी प्रणाली लागू करूंगा, जिससे लोग अपनी सार्वजनिक कुंजियों को घुमा सकें।

हमारी प्रत्येक साइट में LDAP सर्वरों की एक जोड़ी है, जो LDAP प्रतिकृति के साथ हमारे मास्टर के समतुल्य है, जो प्रत्येक स्थान पर डेटा को सुसंगत (और सुलभ) रखता है।


मैंने जो कुछ भी वर्णित किया है, वह ओपन-सोर्स सॉफ़्टवेयर के साथ किया जा सकता है। वाणिज्यिक उत्पाद भी हैं जो समान काम करते हैं।
आपको उपलब्ध विकल्पों पर अधिक शोध करने और यह तय करने की आवश्यकता है कि कौन सा आपके वातावरण के लिए सबसे अच्छा है। यदि आपके पास और अधिक (अधिक विशिष्ट) प्रश्न हैं, तो हम संभवतः अधिक सहायक हो सकते हैं।


तो मूल रूप से, आप एलडीएपी बुनियादी ढांचे का उपयोग करने का सुझाव देते हैं, पैचेड ओपनएसएसएच के साथ जो एलडीएपी के साथ काम करेगा? उत्पादन में यह कितना अच्छा है? क्या यह बड़ी मात्रा में मशीनों का समर्थन कर सकता है? हमें केवल थोड़ी मात्रा में सेवा उपयोगकर्ताओं का समर्थन करने की आवश्यकता है।
SyRenity

1
@ साक्षरता: LDAP प्रतिकृति और क्लस्टरिंग का समर्थन करता है इसलिए यह बहुत अच्छी तरह से तराजू है
ह्यूबर्ट करियो

@SyRenity सैद्धांतिक रूप से आप असीमित संख्या में स्थानों पर असीमित संख्या में मशीनों का समर्थन कर सकते हैं (सोचें "वास्तव में बड़ी सक्रिय निर्देशिका परिनियोजन" - AD मूल रूप से कुछ फैशनेबल सामान के साथ LDAP है)। सेवा उपयोगकर्ताओं के लिए मेरा सुझाव है कि आप उन्हें अपने वातावरण में मानकीकृत करें /etc/passwdऔर मानकीकृत और /etc/groupफ़ाइलों को बाहर धकेलें (मशीनों को सामान्य रूप से संचालित करने और संबद्ध सेवाओं को शुरू करने / चलाने के लिए अनुमति देता है, भले ही LDAP उपलब्ध न हो)
voretaq7

@ voretaq7 अर्थ सेवा उपयोगकर्ताओं को विन्यास प्रबंधन के माध्यम से LDAP से अलग से प्रबंधित किया जाएगा?
सिनारेनिटी

@SyRenity Yes - और अधिक महत्वपूर्ण रूप से उन सेवाओं के लिए उपलब्ध है जो एलडीएपी डाउन होने पर उनका उपयोग करते हैं । विफलताओं की योजना बनाएं या आप आपदाओं का अनुभव करेंगे।
voretaq7

9

Keypairs कहीं भी उत्पन्न नहीं होना चाहिए, लेकिन प्रत्येक उपयोगकर्ता के कंप्यूटर पर। निजी कुंजियों को इस कारण से नाम दिया गया है।

उस ने कहा, मैं उपयोगकर्ताओं की सार्वजनिक कुंजी के कुछ प्रकार के केंद्रीकृत भंडार के लिए एक उपयोग मामला देख सकता था। OpenLDAP में सार्वजनिक कुंजी संग्रहीत करने के लिए एक विकल्प होगा - OpenSSH के हाल के संस्करण LDAP से बाहर चाबियाँ पढ़ सकते हैं।


2
क्या एलडीएपी पब्लिक की सामान मेनलाइन ओपनएसएसएच में है? मुझे केवल एलपीके पैच का पता है (जिसके लिए मैं वाउच कर सकता हूं - यह बहुत अच्छा काम करता है)। निजी कुंजी को निजी रखने के लिए भी +1।
voretaq7

@ voretaq7 मुझे लगता है मैंने सुना है कि यह मेनलाइन में विलय हो रहा था, लेकिन मैंने अभी तक खुद को सत्यापित नहीं किया है। हम एनएफएस के माध्यम से घर निर्देशिकाओं को साझा करते हैं, ताकि हमारे लिए हमारे महत्वपूर्ण वितरण का ख्याल रखा जाए।
21

+1 अच्छी तरह से मुझे नहीं पता था कि। कि मुझे मुसीबत का एक गुच्छा बचा लेगा। अब देखने के लिए चीजों की मेरी सूची पर thats।
टॉम एच

1

मैं जानता हूं कि यह थोड़ा पुराना सवाल है, लेकिन इस तरह की चीज की तलाश में गूगल इसे काफी ऊंचा लौटाता है।

हम में से जो एलडीएपी के अलावा एक समाधान की तलाश कर रहे हैं, मुझे सिर्फ "SKM" प्रोजेक्ट मिला: https://sites.google.com/site/jeromeboismartel/code-s-corner/ssh-key-management-with-skimp


1

बहुत सारे वाणिज्यिक और खुले स्रोत समाधान हैं, जैसे कि Userify [1] (जहां मैं काम करता हूं), यूनिवर्सल की मैनेजर [2], SSH की बॉक्स [3], आदि। यह इस बात पर निर्भर करता है कि आपकी जरूरतें क्या हैं और क्या हैं किसी चीज़ की तलाश करना जो ऑपरेशन को विकेंद्रीकृत करते समय प्रबंधन को केंद्रीकृत करता है (ताकि आपके सर्वर लॉग इन करने के लिए एक केंद्रीय प्राधिकरण पर भरोसा न करें। उस स्थिति में, आप अपने किसी भी सर्वर में लॉग इन करने में सक्षम नहीं हो सकते हैं, अगर, कहते हैं, तो आपका LDAP सर्वर नीचे है!)

  1. https://userify.com

  2. https://www.ssh.com/products/universal-ssh-key-manager/

  3. https://www.sshkeybox.com

यह तिरछी चर्चा भी देखें:

https://www.slant.co/topics/8010/~managers-for-ssh-keys

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