मान लीजिए कि मेरे पास अन्य चाबियों के साथ जीथब के लिए एक कुंजी है। मैंने ssh-add -L
अपने घर के कंप्यूटर पर अपने ssh एजेंट ( बहुत सारी लाइनें लौटाता है) में बहुत सी कुंजियाँ जोड़ी हैं । मेरे में .ssh/config
मैंने यह सेट किया है कि किस होस्ट के साथ किस कुंजी का उपयोग करना है, इसलिए जैसे
ssh -T -vvv git@github.com 2>&1 | grep Offering
देता है
debug1: Offering RSA public key: /Users/doxna/.ssh/id_rsa.github
केवल एक कुंजी की पेशकश की जाती है, जैसा कि अपेक्षित है। लेकिन फिर कुछ मेजबान बी के साथ एसएस-आईएनजी ForwardAgent yes
और उसी कमांड को दोहराते हुए, मुझे मिलता है
debug1: Offering RSA public key: /Users/doxna/.ssh/id_rsa.linode2
debug1: Offering RSA public key: /Users/doxna/.ssh/id_rsa.helium
debug1: Offering RSA public key: /Users/doxna/.ssh/id_rsa.github
अर्थ यह मेरी सभी कुंजी की कोशिश करता है। यह समस्याग्रस्त है क्योंकि सर्वरों की वापसी से पहले सीमित संख्या में कुंजियों को आज़माया जा सकता है Too many authentication failures
। इसलिए मैंने .ssh/config
होस्ट बी को शामिल करने के लिए संपादन की कोशिश की
Host github.com
IdentityFile /Users/doxna/.ssh/id_rsa.github
IdentitiesOnly yes
लेकिन तब मुझे कोई महत्वपूर्ण प्रसाद नहीं मिलता, बल्कि मिलता है
debug2: key: /Users/doxna/.ssh/id_rsa.github ((nil))
जो मुझे लगता है कि कुंजी नहीं मिली (और?) का अर्थ है कि आखिरकार, कुंजी मेरे घर के कंप्यूटर ए पर स्थित है, मेजबान बी नहीं है, इसलिए सवाल यह है कि मेजबान बी में इसे कैसे देखें? आशा है कि मैं सवाल समझाने में कामयाब रहा।