मैं एसएसएच के लिए सार्वजनिक कुंजी प्रमाणीकरण कैसे सेटअप करूं?मैं सार्वजनिक-कुंजी प्रमाणीकरण कैसे सेटअप करूं?
उत्तर
आप SSH स्थापित किया है, तो आप को चलाने के लिए सक्षम होना चाहिए ..
ssh-keygen
फिर चरण के माध्यम से जाना है, तो आप एक आप रिमोट मशीन पर कॉपी - 'करूँगा दो फ़ाइलों, id_rsa
और id_rsa.pub
(पहले अपनी निजी कुंजी है, दूसरी आपकी सार्वजनिक कुंजी है एस)
फिर, उस दूरस्थ मशीन से कनेक्ट करें जिसे आप लॉग इन करना चाहते हैं, ~/.ssh/authorized_keys
फ़ाइल में id_rsa.pub
फ़ाइल की सामग्री जोड़ें।
ओह, और chmod 600
सभी id_rsa*
फ़ाइलें (दोनों स्थानीय और दूरस्थ), इसलिए कोई अन्य उपयोगकर्ताओं के लिए उन्हें पढ़ सकते हैं:
chmod 600 ~/.ssh/id_rsa*
इसी तरह, यह सुनिश्चित दूरस्थ ~/.ssh/authorized_keys
फ़ाइल भी chmod 600
है:
chmod 600 ~/.ssh/authorized_keys
फिर, जब आप ssh remote.machine
करते हैं, यह आप कुंजी का पासवर्ड, नहीं रिमोट मशीन के लिए पूछना चाहिए।
यह अच्छे उपयोग करने के लिए बनाने के लिए, आप ssh-agent
उपयोग कर सकते हैं स्मृति में decrypted कुंजी पकड़ करने के लिए - इसका मतलब है आप हर बार अपने कुंजीयुग्म का पासवर्ड टाइप करने के लिए नहीं है। एजेंट का शुभारंभ करने के लिए आप (बैक-टिक उद्धरण, जो ssh-agent
आदेश के उत्पादन में eval सहित) चलाने
`ssh-agent`
कुछ distros पर, ssh-एजेंट स्वचालित रूप से शुरू कर दिया है। यदि आप echo $SSH_AUTH_SOCK
चलाते हैं और यह एक पथ दिखाता है (संभवतः/tmp /) यह पहले से ही सेटअप है, तो आप पिछली कमांड को छोड़ सकते हैं।
फिर अपने कुंजी जोड़ने के लिए, आप
ssh-add ~/.ssh/id_rsa
करते हैं और अपने पासफ़्रेज़ दर्ज करें। जब तक आप इसे हटा नहीं देते हैं तब तक यह संग्रहीत होता है (ssh-add -D
कमांड का उपयोग करके, जो एजेंट से सभी चाबियाँ हटा देता है)
खिड़कियों this के लिए एक अच्छा परिचय और गाइड
यहाँ linux के अलावा अन्य सिस्टम के लिए कुछ अच्छे ssh-एजेंट कर रहे हैं।
- विंडोज - pageant
- ओएस एक्स - SSHKeychain
यदि आपको .ssh फ़ोल्डर बनाना है तो इसे मेरे जैसे 600 पर सेट न करें या आपको बुरा समय होगा । इसके बजाय इसे 700 पर सेट करें। :-) –
क्या मैं ज्ञात/कॉन्फ़िगर किए गए क्लाइंट के लिए सर्वर से संवाद करने के लिए जेनरेट की गई निजी कुंजी का उपयोग कर अज्ञात मशीन से लॉगिन कर सकता हूं? मेरा मतलब है, क्या यह निजी कुंजी पोर्टेबल है और आपातकालीन जरूरतों के मामले में, अन्य मशीनों से सर्वर पर प्रमाणित करने के लिए इस्तेमाल किया जा सकता है ?? –
@ user01 हां, आप निजी कुंजी को कई सिस्टम में कॉपी कर सकते हैं और किसी अन्य सर्वर तक पहुंच सकते हैं जिसमें संबंधित सार्वजनिक कुंजी है। –