वास्तव में ssh-add क्या करता है?


15

मैंने हाल ही में अपने लैपटॉप को फिर से इंस्टॉल किया और पाया कि 'गिट क्लोन' काम नहीं कर रहा था। मुझे लगातार Permission denied (publickey).त्रुटियाँ मिल रही थीं।

फिक्स को GitHub के SSH मुद्दों पृष्ठ पर प्रलेखित किया गया है : ssh-addGHHub पर प्रमाणित करने के लिए मैं जिस कुंजी का उपयोग करना चाहता हूं, उसके बारे में SSH को बताने के लिए उपयोग करें।

मेरा सवाल है: हुड के तहत, ssh-addवास्तव में क्या करता है?

मैं थोड़ी देर के लिए SSH की अपनी समझ का विस्तार करने का अर्थ कर रहा हूं, और यह शुरू करने के लिए एक अच्छा बहाना है। :-)

जवाबों:


21

ssh-add~/.sshप्रमाणीकरण एजेंट ( ssh-agent) के लिए निजी कुंजी पहचान (आपकी निर्देशिका से) जोड़ता है , ताकि ssh एजेंट आपके लिए प्रमाणीकरण का ध्यान रख सके, और आपके पास टर्मिनल पर पासवर्ड टाइप न हो।


मैं ईमानदार रहूंगा, इसने मुझे थोड़ी देर के लिए भ्रमित कर दिया। मुझे लगा कि ssh क्लाइंट ने हमेशा आपकी ~/.sshनिर्देशिका में कुंजी का उपयोग किया है । क्या कुछ डिस्ट्रोस ssh-addस्वचालित रूप से बराबर करते हैं ? शायद इसीलिए मैं उलझन में था?
ब्लोंग

4
ssh~/.sshनिर्देशिका में कुंजी का उपयोग करता है , लेकिन यदि कुंजी पासफ़्रेज़ द्वारा सुरक्षित है, तो यह पासफ़्रेज़ किसी बिंदु पर दर्ज किया जाना चाहिए। यदि आप उपयोग करते हैं ssh-agentऔर ssh-add, आप इस पासफ़्रेज़ को एक बार टाइप करते हैं। अन्यथा आपको हर बार आपके द्वारा उपयोग किए जाने वाले पासफ़्रेज़ को टाइप करना होगा ssh। ध्यान दें कि यदि कुंजी पासवर्ड संरक्षित नहीं है, तो आप sshपासफ़्रेज़ के लिए पूछे बिना उपयोग कर सकते हैं।
पीटर जॉन एकलाम

इसमें कई ssh कीज़ ~/.sshहो सकती हैं और यह एसओ और बिटबकेट डॉक्स
फ्रैंक Nocke

0

जीथब में इस लेख के आधार पर , कुछ लिनक्स वितरणों पर कुछ समय के बाद भी जब आप सब कुछ ठीक से सेट करते हैं तो यह त्रुटि दिखाई देती है:

Agent admitted failure to sign using the key.
debug1: No more authentication methods to try.
Permission denied (publickey).

और आपको ssh-addसमस्या को हल करने के लिए चलना चाहिए ।

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