Ssh-id-copy का उपयोग करने के लिए आपको id_rsa.pub और id_rsa दोनों की आवश्यकता है?


19

मैं एक मित्र के लिए दूसरी एक्सेस ssh कुंजी सेटअप करने का प्रयास कर रहा हूं। उसने मुझे अपना id_rsa.pub भेजा।

ssh-copy-id -i id_rsa.pub root@123.123.123.123
/usr/local/bin/ssh-copy-id: ERROR: failed to open ID file './id_rsa': No such file or directory

क्या मुझे उसे दोनों फाइलें भेजने की आवश्यकता है?


1
.Pub पर्याप्त है। और ध्यान रखें कि आप हमेशा अपनी निजी कुंजी को अलग रखें (हर समय!)। एक नई कुंजी जोड़ने के लिए आप अपने अधिकृत_कीप के लिए .pub की सामग्री को जोड़ सकते हैं।
दिगंबर

2
@ डिएग आपको एक निजी कुंजी को गुप्त रखने की आवश्यकता नहीं है, आपको इसे सुरक्षित रखने की आवश्यकता है।

Ssh-प्रति-आईडी स्क्रिप्ट यहाँ कि विशेष रूप से त्रुटि संदेश फेंकना प्रतीत नहीं होता है। मुझे लगता है कि आपकी ssh-copy-id स्क्रिप्ट / usr / स्थानीय / बिन में है। यह कमांड के आमतौर पर उपयोग किए जाने वाले संस्करण से भिन्न हो सकता है।
केनस्टर

जवाबों:


12

ssh-copy-idOpenSSH से आदेश विफल रहता है अगर वहाँ उपलब्ध एक ही नाम के साथ कोई निजी कुंजी फ़ाइल है, क्योंकि यह अगर वह पहले से दूरस्थ सर्वर पर मौजूद है की जाँच करने के निर्दिष्ट कुंजी के साथ लॉगिन करने की कोशिश करता।

हाल के संस्करणों में आप -fस्विच ("मजबूर मोड") के साथ इस व्यवहार को ओवरराइड कर सकते हैं ।

से आदमी पेज :

-f

    मजबूर मोड: यह जाँच नहीं करता है कि क्या कुंजी रिमोट सर्वर पर मौजूद है। इसका मतलब है कि इसे निजी कुंजी की आवश्यकता नहीं है। बेशक, यह रिमोट सिस्टम पर स्थापित की जा रही कुंजी की एक से अधिक कॉपी कर सकता है।


1
सिर, मापदंडों का क्रम सख्त है। -fकेवल के रूप में की उम्मीद काम करता है अगर आप इसे पारित करने से पहले-i तर्क। ssh-copy-id -i mykey.pub -f otheruser@hostसिर्फ शिकायत करता है, जब तक कि आप आगे-आगे नहीं बढ़ें।
init_js

5

.pubपर्याप्त है। आप सही फ़ोल्डर में नहीं हैं।

आप यह कोशिश कर सकते हैं:

ssh-copy-id -i /root/.ssh/id_rsa.pub root@123.123.123.123

(रूट उपयोगकर्ता के लिए: अनुशंसित नहीं, यह सिर्फ एक उदाहरण है)।

यह फ़ाइल .sshउपयोगकर्ता फ़ोल्डर पर फ़ोल्डर के नीचे है ।


4
मैक पर इसकी जरूरत है -fअगर आपके पास निजी कुंजी नहीं है, तो मुझे लगता है
स्टीवी जी


1

जैसा कि यहां बताया गया है कि यह एक बग है।

वैसे भी आप इसे काम करने के लिए बस एक खाली फाइल बना सकते हैं। आपके मामले में:

$ touch ./id_rsa
$ ssh-copy-id -i id_rsa.pub root@123.123.123.123

मेरे पास एक ही मुद्दा था और इसने मेरे लिए काम किया and


-1

यह मेरे लिए काम करता है सवाल यह है कि जब यह पूछें "फाइल दर्ज करें जिसमें कुंजी (/User/xiaoyu/.ssh/id_rsa) को बचाने के लिए:" u आपको id_rsa टाइप करना चाहिए

और कमांड "ssh-copy-id -i ~ / .ssh / id_rsa.pub polytech@192.168.0.102" का उपयोग करें

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