मैं दूरस्थ मशीन के लिए ssh करने की कोशिश कर रहा हूँ, प्रयास विफल रहता है:
$ ssh -vvv admin@192.168.100.14
OpenSSH_7.7p1, OpenSSL 1.0.2o 27 Mar 2018
.....
debug2: ciphers ctos: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
debug2: ciphers stoc: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
debug2: MACs ctos: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,zlib@openssh.com
debug2: compression stoc: none,zlib@openssh.com
debug2: languages ctos:
debug2: languages stoc:
debug2: first_kex_follows 0
debug2: reserved 0
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: rsa-sha2-512
Unable to negotiate with 192.168.100.14 port 22: no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
जहाँ तक मैं लॉग के आखिरी तार को समझता हूँ, सर्वर निम्नलिखित 4 सिफर एल्गोरिदम में से एक का उपयोग करने की पेशकश करता है aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
:। ऐसा लगता है कि मेरा ssh क्लाइंट उनमें से किसी का भी समर्थन नहीं करता है, इसलिए सर्वर और क्लाइंट आगे बातचीत करने में असमर्थ हैं।
लेकिन मेरा क्लाइंट सभी सुझाए गए एल्गोरिदम का समर्थन करता है:
$ ssh -Q cipher
3des-cbc
aes128-cbc
aes192-cbc
aes256-cbc
rijndael-cbc@lysator.liu.se
aes128-ctr
... and there are several more.
और अगर मैं स्पष्ट रूप से एल्गोरिथ्म को इस तरह निर्दिष्ट करता हूं:
ssh -vvv -c aes256-cbc admin@192.168.100.14
मैं सफलतापूर्वक सर्वर में प्रवेश कर सकता हूं।
मेरे ~/.ssh/config
किसी भी सिफर से संबंधित निर्देश नहीं हैं (वास्तव में मैंने इसे पूरी तरह से हटा दिया है, लेकिन समस्या बनी हुई है)।
इसलिए, क्लाइंट और सर्वर यह तय नहीं कर सकते कि मेरे स्पष्ट निर्देशों के बिना किस सिफर का उपयोग किया जाए? क्लाइंट समझता है कि सर्वर सपोर्ट करता है aes256-cbc
, क्लाइंट समझता है कि वह खुद इसका इस्तेमाल कर सकता है, सिर्फ इसका इस्तेमाल क्यों नहीं?
कुछ अतिरिक्त नोट:
कुछ समय पहले (लगभग एक महीने) ऐसी कोई समस्या नहीं थी। मैंने तब से किसी भी ssh विन्यास फाइल को नहीं बदला है। मैं अद्यतन स्थापित संकुल किया था, हालांकि।
एक ऐसा सवाल है जो बहुत ही समान दिखने वाली समस्या का वर्णन करता है, लेकिन मेरे सवाल का कोई जवाब नहीं है: बातचीत करने में असमर्थ ssh - कोई मेल खाता एक्सचेंज नहीं मिला
अद्यतन: समस्या हल हो गई
जैसा कि टेल्को ने समझाया कि समस्या सर्वर के साथ है: यह केवल अप्रचलित सिफर एल्गोरिदम का सुझाव देता है। मुझे यकीन था कि क्लाइंट और सर्वर दोनों आउटडेटेड नहीं हैं। मैंने सर्वर में लॉग इन किया है (वैसे, यह Synology है, नवीनतम उपलब्ध संस्करण में अपडेट किया गया है), और जांच की /etc/ssh/sshd_config
। इस फ़ाइल की पहली (!) लाइन थी:
Ciphers aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
यह बहुत अजीब है (यह तथ्य कि लाइन फ़ाइल में बहुत पहले है), मुझे यकीन है कि मैंने फ़ाइल को पहले कभी नहीं छुआ है। हालाँकि मैंने लाइन बदल दी है:
Ciphers aes256-ctr,aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
सर्वर को पुनरारंभ किया ( sshd
केवल सेवा को पुनरारंभ करने के तरीके का पता नहीं लगाया ), और अब समस्या दूर हो गई है: मैं हमेशा की तरह सर्वर पर ssh कर सकता हूं।