Online.net डेटासेंटर में एक समर्पित सर्वर तक पहुँचने के लिए यहाँ एक ही सटीक समस्या है।
रीबूट के बाद कोई समस्या नहीं है, MTU को बदलने की कोई आवश्यकता नहीं है, ssh कनेक्शन 1-3 सप्ताह के लिए काम करता है, तो यह सटीक बग दिखाई देता है, KEXINIT पर अवरुद्ध, ssh सर्वर को कनेक्ट करने के लिए और अधिक संभव नहीं है।
यह किसी प्रकार का sshd बग हो सकता है, लेकिन इसकी आवश्यकता 1-3 सप्ताह के बाद होने वाले कुछ nework सामानों से होती है, मैंने इस नेटवर्क पर कई अलग-अलग सर्वरों के साथ इस सटीक समस्या को कई बार दोहराया, कुछ का कहना है कि यह एक सिस्को बग से संबंधित हो सकता है, संभवतः कुछ डीपीआई विकल्पों के साथ संबंधित है।
वह समस्या अन्य सर्वरों के साथ कभी नहीं हुई, जिन्हें मैं अन्य डेटासेन्टर्स में प्रबंधित करता हूं, और जिनका सटीक एक ही डिस्ट्रो, कॉन्फिगरेशन और sshd वर्जन है।
यदि आप हर 10 दिनों में रिबूट नहीं करना चाहते हैं क्योंकि डेटासेंटर फ़ायरवॉल (या अन्य नेटवर्क ट्वीक्स) अजीब सामान कर रहा है:
पहले उन क्लाइंट साइड वर्कअराउंड में से एक के साथ कनेक्ट करें:
वर्कअराउंड 1, अपने स्थानीय, ग्राहक पक्ष MTU को कम करना:
ip li set mtu 1400 dev wlan0
(1400 पर्याप्त होना चाहिए लेकिन आप कम मूल्यों का उपयोग करने की कोशिश कर सकते हैं यदि आवश्यक हो)
समाधान 2, ssh कनेक्शन के लिए चुने हुए साइबर को निर्दिष्ट करना:
ssh -c aes256-gcm@openssh.com host
(या किसी अन्य उपलब्ध साइबरफोर के साथ प्रयास करें)
उन दोनों क्लाइंट साइड वर्कअराउंड ने मेरे लिए इसे बनाया, मैं अपने अपटाइम को कनेक्ट और बचा सकता था; लेकिन आप इस सर्वर-साइड को हमेशा के लिए ठीक करना चाहते हैं, इसलिए आपको हर क्लाइंट को अपने एमटीयू को स्थानीय रूप से ट्विक करने के लिए कहने की ज़रूरत नहीं है।
Gentoo पर मैंने अभी जोड़ा:
mtu_eth0="1400"
in /etc/conf.d/net
(वही mtu विकल्प आपके पसंदीदा डिस्ट्रो नेटवर्क कॉन्फिग फ़ाइल में कहीं उपलब्ध होना चाहिए)
मैंने 1400 पर mtu सेट किया है, लेकिन 1460 शायद ज्यादातर मामलों में पर्याप्त है।
विखंडन को प्रबंधित करने के लिए एक और मददगार समाधान निम्नलिखित iptables नियमों का उपयोग किया जा सकता है:
# / sbin / iptables-I OUTPUT -p tcp --tcp- झंडे SYN, RST SYN -j TCPMSS --clamp-mss-to-pmtu
# / sbin / ip6tables-I OUTPUT -p tcp --tcp- झंडे SYN, RST SYN -j TCPMSS --clamp-mss-to-pmtu
(लेकिन मैं अब तक इस एक की जरूरत नहीं थी)
यह भी ध्यान दें कि इस समस्या के लक्षण भी हो सकते हैं:
debug1: SSH2_MSG_KEXINIT sent
न सिर्फ
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
मार्च 2016 संपादित करें:
सर्वर पर mtu को 1400 पर कम करना सबसे अधिक हमेशा काम करता है, लेकिन मेरे पास हाल ही में ऐसा मामला था जहां सर्वर पर mtu पहले से ही 1400 से कम हो गया था और समस्या फिर से सामने आ गई, और क्लाइंट को भी mtu को 1400 से कम करना पड़ा।
समस्या यह भी है कि "सर्वर ने कनेक्शन को रीसेट कर दिया है" जब तक कि ग्राहक 1400 तक mtU सेट नहीं करता है, तब तक पृष्ठ के पुनः लोड होने के इंतजार में वेब लॉगिन फॉर्म में भी समस्या दिखाई देती है।
सम्बंधित लिंक्स :
https://bugs.launchpad.net/ubuntu/+source/openssh/+bug/1254085
http://www.held.org.il/blog/2011/05/the-myterious-case-of-broken-ssh-client-connection-reset-by-peer/
https://nowhere.dk/articles/natty-narwhal-problems-connecting-to-servers-behind-cisco-firewalls-using-ssh
/programming/2419412/ssh-connection-stop-at-debug1-ssh2-msg-kexinit-sent
http://www.1-script.com/forums/ssh/ssh-hang-after-ssh2-msg-kexinit-sent-10616-.htm
http://www.snailbook.com/faq/mtu-mismatch.auto.html