"Ssh_exchange_identification: कैसे ठीक करें: पियर द्वारा कनेक्शन रीसेट" त्रुटि को ठीक करने के लिए?


21

मैं अपने कंप्यूटर का उपयोग करते हुए ssh के माध्यम से अपने सर्वर से कनेक्ट नहीं कर सकता, लेकिन मैं अपने सेल फ़ोन के माध्यम से टर्मिअस ऐप का उपयोग करके इस सर्वर से जुड़ सकता हूं। मैंने जाँच की है /etc/hosts.allowऔर /etc/hosts.denyमेरे iptables, और मैंने Google को खोजा है, ऐसा लगता है कि इस समस्या का कोई जवाब नहीं है। मुझे नहीं पता कि इसे कैसे हल किया जाए, यहाँ ssh -v 183.17.228.80आउटपुट है

debug1: Connecting to 183.17.228.80 [183.17.228.80] port 22.
debug1: Connection established.=======================   
debug1: permanently_set_uid: 0/0   
debug1: SELinux support disabled  
debug1: key_load_public: No such file or directory    
debug1: identity file /root/.ssh/id_rsa type -1    
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_rsa-cert type -1      
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_dsa type -1   
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_dsa-cert type -1   
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_ecdsa type -1  
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_ecdsa-cert type -1   
debug1: key_load_public: No such file or directory  
debug1: identity file /root/.ssh/id_ed25519 type -1   
debug1: key_load_public: No such file or directory  
debug1: identity file /root/.ssh/id_ed25519-cert type -1  
debug1: Enabling compatibility mode for protocol 2.0  
debug1: Local version string SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.2   
ssh_exchange_identification: read: Connection reset by peer

मैं इस सर्वर को पिंग कर सकता हूं, यहां टेलनेट है

telnet 183.17.228.29 22  
Trying 183.17.228.29...  
Connected to 183.17.228.29.  
Escape character is '^]'.                                                                 
Connection closed by foreign host.

अगर आप DenyHosts को स्थापित कर चुके हैं, तो जांचना चाहते हैं, DenyHosts की अपनी अनुमति है और मेजबानों की फाइलों को अस्वीकार करना है।
रॉबी 1212

क्या आप सुनिश्चित हैं कि पीसी पर आपके द्वारा चलाए जा रहे सॉफ़्टवेयर सभी SSH एन्क्रिप्शन मोड के साथ संगत हैं?
थरका देविंदा

जैसा कि मैंने उल्लेख किया है, मैंने मेजबान फाइलों की जांच की है, DenyHosts के लिए नहीं
user3054879

मुझे यकीन नहीं है, शायद एनक्रीप्शन एल्गोरिथ्म अलग था, लेकिन मेरा क्लाइंट पोटीन था .... लेकिन मैं IOS पर टर्मिनस द्वारा एक ही सर्वर पर ssh कर सकता हूं
user3054879

कुंजी फ़ाइलों के पथ से मुझे लगता है कि आप के रूप में कनेक्ट कर रहे हैं root। यह आमतौर पर सक्षम नहीं है; अपने sshd विन्यास को देखें। ssh -vvvआप अधिक जानकारी दे सकते हैं।
'12:01

जवाबों:


14

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


1
मूल कारण नहीं मिल सका, लेकिन रिबूटिंग ने मेरे लिए काम किया।
राघवेंद्र एन

2
मैं उसी मुद्दे में भाग गया जब मेरे नि: शुल्क सर्वर के लिए AWS पर ssh। यह सर्वर के कारण होता है स्मृति से बाहर है। रिबूट काम करता है।
लियोन

@thistleknot, रिबूटिंग मेरे लिए काम करता है और यह एक आसान क्विक फिक्स है। उसके बारे में कुछ भी भयानक नहीं है। वास्तव में मुझे नहीं पता कि समस्या क्या थी, लेकिन रिबूटिंग ने कुछ ठीक किया।
CousinCocaine

अगर रिबूटिंग ने काम किया है तो शायद यह कॉन्फ़िगरेशन समस्या नहीं है, बल्कि एक संसाधन मुद्दा है। शायद ssh की प्राथमिकता में वृद्धि ने चालबाजी की होगी।
JohnRos

1
रिबूट सर्वर एक बहुत ही खराब सुझाव है।
होसैन वतानी

8

वास्तव में इसका मतलब है कि सर्वर द्वारा आपके आईपी को ब्लैकलिस्ट कर दिया गया है। लॉगिन करने में सक्षम होने के लिए अपने आईपी पते को श्वेतसूची में लाने का प्रयास करें। आपके सर्वर का आईपी पता बदल गया है या नहीं यह देखने के लिए आप / etc / host की सूची देख सकते हैं।


9
यह वास्तव में जरूरी नहीं है कि मामला है।
सेम्पाइस्कुबा

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

कुछ घंटों के बाद समस्या गायब हो गई, मुझे पता नहीं क्यों लेकिन मुझे पुनरारंभ करने की आवश्यकता नहीं थी।
सेलम एफ

टिप्पणी के लिए धन्यवाद फिर से: "Cloudways सर्वर ने मेरे घर आईपी को ब्लैकलिस्ट कर दिया था" - यह सिर्फ हमारे साथ हुआ था - मैन्युअल रूप से श्वेतसूची में और जाने के लिए सभी अच्छे।
जूल्स मैथ्यूज

2

जिस तरह से मैंने समस्या को हल किया वह है मैं मेजबान मशीन पर गया और कुछ कमांड चला।

sudo mkdir /var/run/sshd
sudo chmod 755 -R /var/run/sshd
sudo service ssh restart

मैं उसके बाद मशीन से जुड़ गया।


1

उपरोक्त त्रुटि तब होती है जब आपके पास सर्वर को प्रमाणित करने की असफल कोशिश की सीमा होती है और आपके पास अपने क्लाइंट पर बहुत अधिक ssh कीज़ होती हैं (MaxAuthTries के मान से अधिक)

आप जो प्रयास कर सकते हैं वह MaxAuthTries के मूल्य को बढ़ाने और sshd डेमॉन को पुनरारंभ करना है। या आप अपनी ~/.sshनिर्देशिका में कुंजी की संख्या को सीमित कर सकते हैं और ~/.ssh/configहोस्ट के मेजबान / समूह के अनुसार कुंजी को परिभाषित करने के लिए उपनिर्देशिका और फ़ाइल का उपयोग कर सकते हैं


मैंने यह कोशिश की है, लेकिन असफल रहा, वास्तव में मैंने लगभग हर वह तरीका आज़माया जो मुझे इंटरनेट पर मिल सकता है, मुझे लगता है कि कुंजी एन्क्रिप्शन नेगियोटेशन एल्गोरिथ्म थी, लेकिन मैं इसे ठीक नहीं कर रहा हूं
user3054879

2
आपने क्या प्रयास किया? कृपया अपना प्रश्न अपडेट करें
रोमियो निनोव

1

मेरे पास भी यही बात थी, और ssh -v 'ip addr' की आवश्यकता थी और फिर मैंने देखा कि मुझे प्रमाणपत्र स्वीकार करने की आवश्यकता है। इसके अलावा एक ACL या रूट नियम जो पोटीन को अवरुद्ध कर सकता है: उदाहरण -

पोट्टी क्लाइंट के पास 10.xxx का एड्रैस है जो फ़ायरवॉल के साथ एंटरप्राइज़ नेटवर्क को डीएमजेड होस्ट्स से बात करने से रोकता है, लेकिन आपका सेलफोन 58.xxx पर जो भी सार्वजनिक आईपी एड्रेस dmz होस्ट से बात कर सकता है, आप तक पहुँचने की कोशिश कर रहे हैं।

इसलिए मैं ssh -v जानकारी को देखूंगा जब आप फिर से कनेक्ट करने का प्रयास करेंगे, तो देखें कि क्या आप किसी भी जानकारी को चमका सकते हैं, और फिर जांचें कि क्या फ़ायरवॉल या राउटर स्तर पर आपको अपने सर्वर पर ले जाने के नियम हैं, नहीं denyhosts सर्वर पर ही फाइल करता है।


0

मैं वेब से कनेक्ट करने के लिए अपने सेलुलर हॉट स्पॉट का उपयोग कर रहा हूं, जबकि मैं कंसोल फ्रॉज काम कर रहा था, और मैं किसी भी अधिक कनेक्ट नहीं कर सका ssh_exchange_identification: read: Connection reset by peer

मैंने SRV को रीसेट करने की कोशिश की, लेकिन इससे कोई फायदा नहीं हुआ

केवल जब मैं अपना नेटवर्क कनेक्शन (एक अलग सेलुलर पर एक हॉटस्पॉट) में बदलता हूं तो मैं फिर से जुड़ सकता हूं।

नोट: मैं अभी भी एक अलग AWS पर SRV से कनेक्ट करने के लिए पुराने कनेक्शन का उपयोग कर सकता हूं, अजीब ...


0

समस्या को हल करने के लिए, निम्नानुसार आगे बढ़ें:

  1. सर्वर ऑनलाइन टर्मिनल से अपने सर्वर को रिबूट करें।

यदि यह काम नहीं करता है,

  1. फ़ाइल को संपादित करें $HOME/.ssh/known_hosts
  2. इस फ़ाइल के अंदर की किसी भी सामग्री को हटा दें, जब यह आपके द्वारा ssh के किसी भी सर्वर से फिर से कनेक्ट हो जाएगी तब आपको कनेक्शन को फिर से स्वीकार करना होगा।

1
-1 के पूर्ण विलोपन के लिए known_hosts। प्रश्न में इस विशेष मेजबान को संपादित करना बेहतर होगा (हालांकि मुझे संदेह है कि यहां मदद मिलेगी)।
डेविड फ़ॉस्टर

0

उपयोगकर्ता प्रमाणीकरण के लिए एक नया ssh कुंजी युग्म बनाएँ। SSH कुंजी और सार्वजनिक कुंजी प्रमाणीकरण गाइड

बस गाइड का पालन करें।


जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो यहां उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा
केविन बोवेन

0

कई कारण हो सकते हैं लेकिन एक सबसे संभावित कारण हो सकता है (मेरे मामले में) ssh / port 22 को फ़ायरवॉल द्वारा अनुमति नहीं है

आप उपयोगकर्ता-इंटरफ़ेस द्वारा ssh कनेक्शन की अनुमति दे सकते हैं (कुछ प्रदाता अनुमति देते हैं कि) या यदि आपके पास लॉगिन करने के लिए कोई वैकल्पिक तरीका है (उदाहरण के लिए, digitalocean एक कंसोल बटन प्रदान करेगा) आप नीचे कमांड चला सकते हैं।

sudo ufw allow ssh
sudo ufw allow 22

0

ऐसा लगता है कि सर्वर पर ssh डेमॉन लटका हुआ है। क्या आप सुनिश्चित हैं कि यह चल रहा है? जब आप ssh को टेलनेट करते हैं, तो आपको एक हस्ताक्षर देखना होगा। कुछ इस तरह:

telnet unixhow.com 22
Trying 35.228.26.20...
Connected to unixhow.com.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.1

जो मैं आपके आउटपुट से देख रहा हूं वह है ssh डेमॉन जो सर्वर साइड पर प्रतिक्रिया नहीं दे रहा है। मैं आईपी-केवीएम (या किसी अन्य तरीके से) को रिमोट मशीन से कनेक्ट करने और sshd को पुनरारंभ करने की सलाह देता हूं।


0

ऐसा इसलिए हो सकता है क्योंकि आपके पास अपने ubuntu पर चलने वाला एक ओपनश सर्वर नहीं है। आप अपने ओपनश सर्वर की स्थिति की जांच करने के लिए नीचे कमांड चला सकते हैं।

ubuntu@ubuntu:~$ sudo systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2019-03-20 11:52:16 GMT; 5min ago
  Process: 1034 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
 Main PID: 1058 (sshd)
    Tasks: 1
   Memory: 5.1M
      CPU: 122ms
   CGroup: /system.slice/ssh.service
           └─1058 /usr/sbin/sshd -D

Mar 20 11:52:15 ubuntu systemd[1]: Starting OpenBSD Secure Shell server...
Mar 20 11:52:16 ubuntu sshd[1058]: Server listening on 0.0.0.0 port 22.
Mar 20 11:52:16 ubuntu sshd[1058]: Server listening on :: port 22.
Mar 20 11:52:16 ubuntu systemd[1]: Started OpenBSD Secure Shell server.
Mar 20 11:52:24 ubuntu sshd[1131]: Connection closed by 10.0.2.2 port 60566 [preauth]
Mar 20 11:53:59 ubuntu sshd[1135]: Accepted password for ubuntu from 10.0.2.2 port 60654 ssh2
Mar 20 11:53:59 ubuntu sshd[1135]: pam_unix(sshd:session): session opened for user ubuntu by (uid=0)
Mar 20 11:57:48 ubuntu sshd[1238]: Accepted password for ubuntu from 10.0.2.2 port 61124 ssh2
Mar 20 11:57:48 ubuntu sshd[1238]: pam_unix(sshd:session): session opened for user ubuntu by (uid=0)

यदि स्थिति नहीं है active (running), तो आप ओपनश-सर्वर को स्थापित और / या शुरू करना चाह सकते हैं। आप नीचे दिखाए गए आदेशों के साथ ऐसा कर सकते हैं।

sudo apt update
sudo apt install openssh-server

0

मेरे पास एक ही मुद्दा था लेकिन sshd डेमॉन को फिर से शुरू करने के बाद मैं होस्ट से जुड़ सकता था।

sudo systemctl restart sshd && systemctl status sshd

यह केवल एक अस्थायी वर्कअराउंड है जब तक कि आप MaxAuthTries पैरामीटर को नहीं बढ़ाते।


0

मेरा समाधान मेरे स्थानीय आईपी पते को इसमें जोड़ा गया है /etc/hosts.allow:

sshd:192.168.10.88:allow

यह मेरे लिए काम करता है।


-2
  1. सर्वर में स्थापित और चल रहे उस sshd की जाँच करें।
  2. सुनिश्चित करें कि डेमॉन स्थापित है और शुरू हो गया है। आपको 'मैन एसशीडी' करने में सक्षम होना चाहिए। मुझे लगता है कि यह जिस पैकेज में है वह ओपन-एसएसएल है, और आपको डेमॉन शुरू करने की आवश्यकता होगी (और इसे तब न रोकें जब आपको इसकी आवश्यकता न हो।)।

बेशक, मैंने sshd स्थापित किया है, जैसा कि मैंने उल्लेख किया है, मैं iphone पर टर्मिनस द्वारा एक ही सर्वर पर ssh कर सकता हूं ... लेकिन पोटीन विफल रहा
user3054879
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.