2011-12-28 14 views
60

मैं रिमोट सिस्टम में ssh और rysnc करने में असमर्थ हूं।उबंटू-एसएसएच - चेतावनी: रिमोट होस्ट पहचान बदल दी गई है

WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!  

IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! 
Someone could be eavesdropping on you right now (man-in-the-middle attack)! 
It is also possible that a host key has just been changed. 
The fingerprint for the RSA key sent by the remote host is 
a3:8f:7c:07:c9:12:d8:aa:cd:c2:ba:b3:27:68:bc:c2. 
Please contact your system administrator. 
Add correct host key in /root/.ssh/known_hosts to get rid of this message. 
Offending RSA key in /root/.ssh/known_hosts:8 
RSA host key for xxx.xxx.xxx.xxx has changed and you have requested strict checking. 
Host key verification failed. 
rsync: connection unexpectedly closed (0 bytes received so far) [sender] 
rsync error: unexplained error (code 255) at io.c(601) [sender=3.0.8] 

मैं /home/user/.ssh से authorized_keys फ़ाइल को हटा दिया है: यह इस त्रुटि संदेश दे रही रखता है।

+0

इसके अलावा rsync त्रुटि संदेश की जाँच करें, ssh: xxx.xxx.xxx.xxx बंदरगाह 22 की मेजबानी करने के लिए कनेक्ट: कनेक्शन ने rsync से इनकार कर दिया: कनेक्शन अप्रत्याशित रूप से बंद (अब तक 0 बाइट प्राप्त हुए हैं) [प्रेषक] rsync त्रुटि: io.c (601) पर अनपेक्षित त्रुटि (कोड 255) [प्रेषक = 3.0.8] – thiyagu114

+0

यदि यह उत्पादन प्रणाली नहीं है तो आप कर सकते हैं truncate -s 0 /root/.ssh/known_hosts – AMB

+0

https://in.godaddy.com/help/ssh-login-warning-remote-host-identification-has-changed-12161 – NandhaKumar

उत्तर

63

संदेश कहता है "/root/.ssh/known_hosts" अधिकृत_की नहीं। उस फ़ाइल को हटाएं (या कम से कम इसी कुंजी) और आप फिर से जा सकते हैं! लेकिन ध्यान रखें कि: कुंजी बदलने का एक कारण होना चाहिए। क्या सिस्टम पुनर्स्थापित किया गया था? सुनिश्चित करें कि आप इसे जांचें या एसएसएच का पूरा विचार शून्य है।

बीटीडब्ल्यू .: क्या आपके पास रूट के रूप में ssh है?

+0

संबंधित निकालना कुंजी '' 'ssh-keygen -R {server.name.com}' '' | '' 'ssh-keygen -R {ssh.server.ip.address}' '' | '' $ ssh-keygen -R server.example.com''' – DaddyMoe

+0

@ निकोडेमस हे, जब मैं 'ssh-keygen -f" /root/.ssh/known_hosts "-R instance_ip को हटा देता हूं तो यह अब त्रुटि दिखाता है 'अनुमति अस्वीकार (publickey, gssapi-keyex, gssapi-with-mic)।' मुझे इसके साथ कैसे निपटना चाहिए? – awhitesong

20

संदेश ही व्याख्या नहीं करता:

  • दूरस्थ होस्ट कि मेजबान के लिए कुंजी की एक प्रमुख
  • आपकी पिछली प्रति के साथ ही पहचान अलग
  • तो इस बात की संभावना है कि दूरस्थ होस्ट वे जो कहते हैं वे

आप रिमोट होस्ट पर विश्वास करते हैं, तो आप लाइन 8 अपने /root/.ssh/known_hosts और ssh के लिए कहेगा से यह नया कुंजी अगली बार जोड़ सकते हैं, तो नष्ट कर सकते हैं कर रहे हैं नहीं है आप

यदि आप दूरस्थ होस्ट पर भरोसा नहीं करते हैं, तो आपको यह पता लगाने के लिए होस्ट प्रशासकों से संपर्क करना होगा कि वे एसएस कुंजी को क्यों और क्यों बदलते हैं। इसका मतलब है कि वे नहीं है, तो अपने यातायात रोक दिया जा रहा है

दूसरी ओर, यदि आप वास्तव में वास्तव में रिमोट होस्ट पर भरोसा (जैसे यह किसी इंट्रानेट पर है), तो आप

-oBatchMode=yes -oStrictHostKeyChecking=no 
6

साथ ssh चला सकते हैं बस इस कार्य करें:

mv .ssh/known_hosts .ssh/known_hosts_old 
+1

अब तक का सबसे अच्छा जवाब! – Jim

+12

समस्या पूरी होने पर पूरी फ़ाइल को हटाने का कोई कारण नहीं है। – Jian

+2

यह किसी ऐसे व्यक्ति को सलाह देने के लिए एक मूर्ख बात की तरह लगता है जो एसएसएच और मेजबान कुंजी कैसे काम करता है उससे अपरिचित है। क्या आप इसके जवाब में अधिक जानकारी जोड़ सकते हैं कि यह करने के लिए क्या प्रभाव हैं? –

120

निम्न आदेश जो .ssh से पुराने कुंजी को हटा का उपयोग/known_hosts फ़ाइल

ssh-keygen -R <host> 
+4

अगर Google ने आपको यहां भेजा है, तो जवाब देने के लिए कि आप अचानक अपने योनि बॉक्स तक क्यों नहीं पहुंच सकते हैं, यह उत्तर सबसे अधिक मदद करेगा। एक नया और अलग वानर बॉक्स शुरू करते समय, वह बॉक्स एक नई आरएसए-कुंजी उत्पन्न कर सकता है जो उसी स्थानीय होस्ट के लिए पहले पंजीकृत आरएसए-कुंजी से अलग होगा। यदि यह मामला है, तो आप भरोसा कर सकते हैं कि परिवर्तन केवल एक उपद्रव है, और आप पुराने अमान्य कुंजी – andkrup

+1

को केवल वग्रेंट के लिए नहीं हटा सकते हैं, अगर आप अपनी मशीन को पुनर्स्थापित करते हैं तो कुंजी बदल जाएगी। यह सबसे साफ और सबसे सुरक्षित समाधान की तरह लगता है। –

+0

क्या यह कोशिश करने के लिए कोई विचार है कि यह काम नहीं करता है ?! – Stefan

11

आप अपने known_hosts फ़ाइल से लाइन 8 पर हमलावर कुंजी को दूर करने के एसईडी का उपयोग कर सकते हैं:

sed -i -e 8d /root/.ssh/known_hosts 
+0

हटाया नहीं गया है, यह: मेरे लिए यह किया ! :-) sed -i -e 36d ज्ञात_होस्ट – Darby

+0

मेरे लिए बहुत अच्छा काम किया –

संबंधित मुद्दे