विंडोज 10 लिनक्स सबसिस्टम एसएसएच क्लाइंट संसाधन अस्थायी रूप से अनुपलब्ध है


25

मैं विंडोज 10 लिनक्स सबसिस्टम के भीतर अपने रिमोट सर्वर में ssh करने की कोशिश कर रहा हूं। मैं एमएस विंडोज 10 होम इनसाइडर प्रीव्यू बिल्ड 14366 का उपयोग कर रहा हूं।

कमांड प्रॉम्प्ट पर, मैं टाइप करता हूं:

ssh user@domain.com

Ssh कमांड टाइप करने के कुछ सेकंड बाद, मुझे निम्न संदेश मिल रहा है:

ssh: host.com को होस्ट करें। port 22: संसाधन अस्थायी रूप से अनुपलब्ध है

मैं पुट्टी का उपयोग करने के साथ-साथ जीआईटी बैश के भीतर एसश का उपयोग करने में भी सक्षम हूं।

इसलिए, मुझे विश्वास है कि समस्या मेरे स्थानीय पीसी पर और विशेष रूप से लिनक्स सबसिस्टम के भीतर है। मैं अभी भी लिनक्स वातावरण के साथ बहुत हरा हूं और मुझे यकीन नहीं है कि इस संदेश की व्याख्या कैसे करें। क्या संसाधन उपलब्ध नहीं है और मुझे इसे उपलब्ध कराने के लिए क्या करना चाहिए?


पहला अनुमान: विंडोज फ़ायरवॉल? ps> और सुपरसुसर पर आपका स्वागत है :) Google कांटे से संबंधित होने के बजाय थोड़ा सा लगता है। कृपया पोस्ट को संपादित करें और कमांड लाइन जोड़ें जो आपको यह त्रुटि देता है।
हस्तूर


सिर्फ यह जाँचना कि आप विंडोज 10 के इनसाइडर प्रीव्यू बिल्ड का उपयोग कर रहे हैं क्योंकि AFAIK लिनक्स सबसिस्टम केवल इस संस्करण में उपलब्ध है, 'सामान्य' विंडोज 10 पर नहीं। अन्यथा हो सकता है कि आप साइगविन का उपयोग कर रहे हों?
गोगौड

@ggoud - मैंने ऑपरेटिंग सिस्टम को शामिल करने के लिए प्रश्न को अपडेट किया है। यह वास्तव में इनसाइडर प्रीव्यू बिल्ड है।
केल

2
मैं भी इस मुद्दे पर चल रहा हूं। यह ssh द्वारा समर्थित सभी कार्यक्रमों को प्रभावित करता है gitऔरapt-get
sc55culator

जवाबों:


10

जहाँ तक मैं बता सकता हूँ, यह WSL में एक बग है। उम्मीद है, Microsoft इसे अगले बिल्ड में ठीक कर देगा। लेकिन अभी के लिए, हम इस थोड़े बदसूरत हैक का उपयोग कर सकते हैं।

# 1 अद्यतन करें : निश्चित रूप से एक बग। गितुब पर यह मुद्दा मिला । यदि आप इस सब से गुजरना नहीं चाहते हैं, तो शेल मेरे लिए फिर से काम करना शुरू करने का प्रस्ताव पेश करता है।

TL, DR इसे अपने SSH कॉन्फ़िगरेशन (आमतौर पर स्थित ~/.ssh/config) END में जोड़ें :

Host *
    ProxyCommand nc %h %p %r

यहाँ कारण है कि यह काम करता है: हमारे SSH मुद्दा है क्योंकि एक फ़ायरवॉल मुद्दा नहीं है ncऔर telnetएक ही मेजबान और बंदरगाह (कोशिश करने के लिए काम telnet <host> <port>या nc <host> <port>: आप की तरह कुछ देखना चाहिए SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.7)। यह हम अपने लाभ के लिए उपयोग कर सकते हैं।

एसएसएच उन प्रॉक्सी के उपयोग की अनुमति देता है जो मानक इनपुट लेते हैं और इसे ProxyCommandविकल्प के माध्यम से सर्वर के पोर्ट पर भेजते हैं । यह आमतौर पर नेटवर्क में सुरंगों का उपयोग एक सुरक्षित होस्ट के बीच एक इन-हाउसिंग एसएसएच सर्वर का उपयोग करके किया जाता है, जिसे कभी-कभी जंप होस्ट भी कहा जाता है ( अधिक जानकारी के लिए इस लिंक को देखें )।

यह हैक SSH को बिना जम्प होस्ट (ओं) के साथ प्रॉक्सी का उपयोग करने के लिए कहता है। तो, यह एसएससीएच के नेटकोक पर नेटवर्क संसाधन आवंटन के सभी पुश करके टीसीपी संसाधनों के असफल आवंटन के आसपास हो जाता है, जो काम करता है। SSH बिना किसी नेटवर्क कनेक्शन के बस SSH की बात करता है, और Netcat एक टीसीपी कनेक्शन पर कच्चा डेटा SSH सर्वर को भेजता है।

चेतावनी: चूंकि यह ProxyCommandसभी मेजबानों के लिए संशोधित करता है, मुझे नहीं पता कि यह अन्य एसएसएच कॉन्फ़िगरेशन होस्ट के साथ कैसे उपयोग करता है ProxyCommand। मेरे पास कुछ सर्वर हैं जिनके साथ मैं इसका परीक्षण कर सकता हूं, और मैं परिणामों के साथ इस उत्तर को अपडेट करूंगा। एक मौका है कि कोई हानिकारक दुष्प्रभाव नहीं हैं, लेकिन मैं इसकी गारंटी नहीं दे सकता।

# 2 अद्यतन करें: मैंने अपने कुछ सर्वरों के साथ कुछ परीक्षण किया, और यह काम करता है। जब एकाधिक प्रविष्टियाँ लागू होती हैं तो SSH अपरिपक्व प्रविष्टि का उपयोग करता है। इस प्रकार, ProxyCommandइस हैक के ऊपर मौजूद एक वर्तमान इसे ओवरराइड करेगा। जब नए SSH कमांड को निष्पादित किया जाता है, तो यह SSH कॉन्फिगर को फिर से पढ़ता है, और यदि कोई अन्य नहीं है ProxyCommand, तो SSH हमारी हैक का उपयोग करता है ProxyCommand, यह केवल "सबसे बाहरी" SSH सत्र में लागू करने की अनुमति देता है। चेतावनी का शब्द: यदि आप हैक को कॉन्फिग फ़ाइल के शीर्ष पर (या प्रविष्टि जिसे आप SSH के लिए प्रयास कर रहे हैं) के ऊपर रखते हैं, तो SSH सत्रों ProxyCommandको दूसरे की उपेक्षा करने की आवश्यकता होगी ProxyCommandऔर इसके बजाय होस्ट के पते को हल करने और कनेक्ट करने का प्रयास करना होगा सीधे नेटकट के साथ।


विस्तार के लिए धन्यवाद @ computergeek125 दुर्भाग्य से, जैसा कि सुझाव दिया गया है, कॉन्फ़िगरेशन को सेट करने के बाद भी, मुझे अभी भी एक ही संदेश मिलता है: होस्ट डोमेन से कनेक्ट करें। port 22: संसाधन अस्थायी रूप से अनुपलब्ध है जब मैं nc -v <host> <port> रन करता हूं, तो वर्बोज़ आउटपुट के लिए, मुझे मिलता है समान त्रुटि: संसाधन अस्थायी रूप से अनुपलब्ध है। मैं कुछ गलत कर रहा हूं, निश्चित नहीं। चूँकि मेरे पास git bash शेल का उपयोग करने के लिए कोई ssh समस्याएँ नहीं हैं, इसलिए मैं अभी इसके साथ रहूँगा। BTW, मेरा सिस्टम अब 14393 का निर्माण कर रहा है, इसलिए, यदि यह प्रश्न के समय संस्करण में एक बग था, तो यह अभी भी 27 बग बाद में बना है।
kell

वैसे यह दिलचस्प है। मुझे उस निर्माण पर कुछ शोध करना होगा। मैं उस समय 14903 पर चल रहा था (अब मैं 14905 पर हूं)। यह कुछ ऐसा हो सकता है जो उन्होंने मेरे पास बनाए हैं।
computergeek125

मैं SSH कॉन्फ़िगरेशन को कैसे संपादित करूं? विंडो कंसोल के लिए बैश में मैंने कोशिश की vi ~/.ssh/configजो एक खाली फाइल खोली। मैंने आपकी आज्ञाओं को चिपकाया लेकिन जब मैं बचाने की कोशिश करता हूं (esc ->: -> wq) तो यह मुझे बताता है"~/.ssh/config" E212: Cannot open file for writing
Dan

ठीक है यह अजीब है। आप किस विंडोज का निर्माण कर रहे हैं, और इसका आउटपुट क्या है ls -al ~/.ssh?
कंप्यूटरजेक

3

यह मेरे लिए भी एक मुद्दा था, यह निकला कि यह मेरा (सिमेंटेक) फ़ायरवॉल है जो बैश से सभी इंटरनेट ट्रैफ़िक को रोक रहा था।

लगता है कि यह 3 पार्टी फ़ायरवॉल प्रदाताओं के साथ एक सामान्य मुद्दा है जो इस प्रक्रिया को नहीं पहचानते हैं:

https://github.com/Microsoft/BashOnWindows/issues/809

जब मैंने अपने फ़ायरवॉल को अक्षम किया तो यह ठीक काम कर गया। फिलहाल बेहतर समाधान नहीं मिल रहा है।


0

मेरे मामले में, मुझे यह त्रुटि मिली क्योंकि एक विंडोज़ अपडेट ने मेरे हाइपर-वी स्विच के साथ परेशानी का कारण बना । वह मेजबान जिसे मैं ssh करना चाह रहा था, उस स्विच से जुड़ा हुआ था - इसे ठीक करके ssh को ठीक किया।


0

भविष्य के संदर्भ के लिए, जब आप Nginx स्थापित करते हैं, तो यह एसएसएच को डिफ़ॉल्ट रूप से त्रुटि संदेश "संसाधन अस्थायी रूप से अनुपलब्ध" जब तक ...

सूद ufw ssh अनुमति देते हैं


विंडोज 10 में ही एक फ़ायरवॉल है। आपने ऐसा क्यों सुझाव दिया?
बिश्वप्रियो

मैं सुझाव दे रहा हूं कि भविष्य के उपयोगकर्ताओं के लिए समान समस्याओं के साथ क्योंकि मेरे पास एक ही मुद्दा था और यह इसलिए था क्योंकि Nginx SSH को सर्वर पर रोक रहा था
andrerpena
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.