Windows OpenSSH को स्पष्ट SOCKS5 Ncat कमांड दें
Ncat को OpenSSH के मानक-स्ट्रीम परिवहन सहायक के रूप में उपयोग करें और डिफ़ॉल्ट HTTP प्रॉक्सी पर निर्भर रहने के बजाय SOCKS5 निर्दिष्ट करें।
यदि Ncat Windows OpenSSH के लिए पहले से उपलब्ध है, तो यह SOCKS5 प्रॉक्सी के माध्यम से कनेक्शन प्रदान कर सकता है। उस OpenSSH क्लाइंट द्वारा उपयोग किए जाने वाले SSH कॉन्फ़िगरेशन में एक होस्ट प्रविष्टि जोड़ें:
Host target-via-socks
HostName ssh.example
User user
ProxyCommand ncat.exe --proxy-type socks5 --proxy proxy.example:1080 %h %p
दोनों होस्टनाम और खाता बदलें, फिर ssh target-via-socks से कनेक्ट करें। यह उदाहरण मानता है कि ncat.exe सहायक के निष्पादन-योग्य खोज पथ में है। अन्यथा सही ढंग से उद्धृत पूर्ण निष्पादन-योग्य पथ का उपयोग करें, विशेषकर जब निर्देशिका में रिक्त स्थान हों।
प्रॉक्सी एंडपॉइंट --proxy के बाद आता है। OpenSSH %h और %p को अंतिम SSH होस्टनाम और पोर्ट में विस्तारित करता है। Ncat SOCKS कनेक्शन पर बातचीत करता है और परिणामी बाइट स्ट्रीम को मानक इनपुट और आउटपुट पर ले जाता है; OpenSSH उस स्ट्रीम पर अपना SSH हैंडशेक जारी रखता है।
स्पष्ट --proxy-type socks5 महत्वपूर्ण है। वह विकल्प न होने पर Ncat डिफ़ॉल्ट रूप से HTTP प्रॉक्सी का उपयोग करता है, भले ही दिया गया पोर्ट 1080 हो। SOCKS श्रोता यह अनुमान नहीं लगा सकता कि HTTP CONNECT अनुरोध का अर्थ SOCKS था।
यह उदाहरण बिना प्रमाणीकरण वाले SOCKS एंडपॉइंट को मानता है; केवल उस सार्वजनिक SSH गंतव्य के लिए SOCKS5 प्रॉक्सी सूची से उम्मीदवार चुनें जहाँ वह मार्ग अनुमत हो, और उसके वास्तविक होस्ट और पोर्ट तक पहुँच जाँचें। प्रॉक्सी प्रमाणीकरण, जब आवश्यक हो, बाद के SSH लॉगिन से अलग है। SSH गंतव्य की होस्ट कुंजी का सत्यापन बनाए रखें; सहायक के माध्यम से वहाँ पहुँचना उस पहचान को नहीं बदलता जिसे OpenSSH को प्रमाणित करना चाहिए।