ssh सुरंग - बाँध: अनुरोधित पता नहीं दे सकता


26

एक मोजे (-D) ssh सुरंग बनाने की कोशिश कर रहा है - लिनक्स बॉक्स से लिनक्स बॉक्स (दोनों सेंटो)

sshd दूरस्थ ओर ठीक चल रहा है।

स्थानीय मशीन से हम इसे देखते हैं:

ssh -D 1080 user@8.8.8.8.
user@8.8.8.8's password: 
bind: Cannot assign requested address

(जहां 8.8.8.8 वास्तव में मेरे सर्वर का IP है और 'उपयोगकर्ता' मेरा वास्तविक उपयोगकर्ता नाम है)

मैं इस टर्मिनल-विंडो में दूरस्थ पक्ष में लॉग इन हूं। मैं यह सत्यापित कर सकता हूं कि इस आदेश से पहले स्थानीय पोर्ट का उपयोग नहीं किया गया था, और फिर एक ssh प्रक्रिया द्वारा उपयोग किया गया था, कमांड के माध्यम से:

netstat -lnp | grep 1080

इसलिए, इस त्रुटि के साथ अधिकांश googled-प्रतिक्रियाओं के विपरीत, समस्या लूपबैक इंटरफ़ेस असाइनमेंट नहीं होगी। यदि मैं एक मेल क्लाइंट के साथ इस सुरंग का उपयोग करने की कोशिश करता हूं, तो स्थानीय-पक्ष प्रयास (कोई 'प्रॉक्सी-विफल' त्रुटि) की अनुमति देता है, लेकिन कोई डेटा / उत्तर वापस नहीं किया जाता है।

दूरस्थ पक्ष पर, मेरे sshd_config में "PermitTunnel Yes" है (हालाँकि 'हाँ' डिफ़ॉल्ट होना चाहिए, वैसे भी)।

विचार या सुराग?

यहाँ प्रासंगिक डीबग-आउटपुट है

OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *

....

debug1: Authentication succeeded (password).
debug1: Local connections to LOCALHOST:1080 forwarded to remote address socks:0
debug1: Local forwarding listening on 127.0.0.1 port 1080.
debug1: channel 0: new [port listener]
debug1: Local forwarding listening on ::1 port 1080.
bind: Cannot assign requested address
debug1: channel 1: new [client-session]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LANG = en_US.utf8

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

स्ट्रेंजर अभी भी "यदि मैं लिनक्स क्लाइंट पर सीधे चलने वाले पोटीन (लिनक्स के लिए) का उपयोग करता हूं, तो यह काम नहीं करता है, भले ही सेटिंग्स पोटीन सेटिंग्स का एक सटीक डुप्लिकेट हो जो कि उसी पर एक वर्चुअल बॉक्स में विंडोज पर चलने वाले पुट्टी में काम करता है। ग्राहक मशीन ?? कुछ गड़बड़ है ... अभी भी यह जानने के लिए प्रयोगों की कोशिश कर रहा है कि यह क्या है।


यदि आप कोशिश करते हैं और इसे ipv4 का उपयोग करने के लिए मजबूर करते हैं तो क्या होगा? (बस एक प्रारंभिक समस्या निवारण परीक्षण के रूप में)। जैसे ssh -4 -D 1080 user@8.8.8.8
फ्रेड क्लॉसन

क्या आप एक उच्च बंदरगाह संख्या, 4000 की कोशिश कर सकते हैं?
jwbensley

इनपुट्स के लिए धन्यवाद। मुझे इसके साथ काम करने के लिए मिला: ssh -4 -D 8081 user@8.8.8.8
जोसेफ

जवाबों:


41

यहाँ लूप बंद करें। इस मामले में, इस मामले में, ssh क्लाइंट को ipv4 का उपयोग करने के लिए मजबूर करना था। उदाहरण के लिए

ssh -4 -D 8081 user@8.8.8.8

इसलिए मुझे लगता है, सिवाय इसके कि मैं सफलता के बिना पोटीन (लिनक्स पर चलने) में 'बल ip4' का चयन कर सकता हूं। इस मशीन पर भी IPV6 अक्षम है, इसलिए सैद्धांतिक रूप से इसे खेलना नहीं चाहिए था। पूरी तरह से असंगत परिणाम मुझे अभी भी इस बात के विभिन्न क्रमों की कोशिश कर रहा है कि मुझे मेरे सिर को खरोंच कर छोड़ दें। किसी भी स्थिति में, आपके उत्तर ने मुझे इसे काम करने में मदद की, और शायद कुछ अजीब तरीके से उजागर किया है कि यह कैसे CentOS या लिनक्स कर्नेल का संस्करण है या कुछ इस तरह से काम कर रहा है - धन्यवाद।
जोसेफ

एक लंबा शॉट, लेकिन शायद एसएसएच डीएनएस रिज़ॉल्यूशन को सर्वर पर "एसडीडीएनएस नं" को sshd_config में बंद करना, संभवतः इसे हल कर सकता है। शायद कुछ अजीब डीएनएस रिज़ॉल्यूशन सर्वर पर चल रहा है, जिससे बाइंड की समस्या हो रही है।
फ्रेड क्लॉसन

1
बहुत बहुत धन्यवाद, -4 भी Ubuntu 11.04 के लिए समाधान था।
सैंडर

मुझे यह समस्या उबंटू 13.04 में अपग्रेड करने के बाद शुरू हुई, और यह ठीक था।
निक

1
हर बार -4 निर्दिष्ट करने के बजाय, सभी ssh कनेक्शनों को IPv4 के साथ ही बनाया जाना चाहिए, अपनी ssh_config फ़ाइल में "AddressFamily inet" - प्रति उपयोगकर्ता $ {HOME} / ssh / ssh_config, या सिस्टम वाइड के लिए जोड़ें। सभी उपयोगकर्ता / etc / ssh / ssh_config
JG Miller
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.