SSH -L लोकलहोस्ट के साथ आगे बढ़ने वाले लोकल पोर्ट गलत पेजों की ओर इशारा करता है


1

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

[...] आप अपने लैपटॉप से http: //www.ubuntuforums org से एसएसएच सुरंग का उपयोग करके कनेक्ट करना चाहते थे । आप स्रोत पोर्ट संख्या 8080 (वैकल्पिक http पोर्ट), गंतव्य पोर्ट 80 (http पोर्ट) और गंतव्य सर्वर www.ubuntuforums.org का उपयोग करेंगे। :

ssh -L 8080:www.ubuntuforums.org:80 <host>

<host>आपके लैपटॉप के नाम की जगह कहां होनी चाहिए।

Q1: मैं वास्तव में इसके साथ क्या हासिल कर सकता हूं? रिमोट सर्वर पर, कोई sshd उपलब्ध नहीं है, इसलिए ट्रैफ़िक मेरे पीसी को अनएन्क्रिप्टेड, अधिकार देता है? मुझे इसके लिए क्या चाहिए होगा?

Q2: मैं ssh -L 4444 करने की कोशिश कर रहा हूं: linuxpl.com: 80 लोकलहोस्ट। जब मैं अपने वेब ब्राउज़र में http: // localhost: 4444 दर्ज करता हूं, तो मैं लाइटस्पीड वेब सर्वर की आंतरिक साइट देख सकता हूं। जब मैं अन्य पृष्ठों की कोशिश करता हूं, तो मैं अपाचे आंतरिक साइटों को देख सकता हूं। जब मैं कुछ अन्य करने की कोशिश करता हूं, तो मैं इस साइट के 404 पृष्ठ को नहीं मिला संदेश देख सकता हूं। उनमें से कुछ उम्मीद के मुताबिक काम करते हैं। ऐसा क्यूँ होता है? इसे कैसे जोड़ेंगे?


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

जवाबों:


1

Q1: आप ऐसा नहीं करना चाहेंगे। पृष्ठ इसके शब्दों में मूर्खतापूर्ण है। जैसा कि आपने कहा, ट्रैफ़िक आपके कंप्यूटर से आपके कंप्यूटर पर एन्क्रिप्ट हो जाएगा, फिर पूरी तरह से मंच की साइट पर पहुंच जाएगा। वे यातायात को आगे बढ़ाने के लिए किसी अन्य कंप्यूटर का उपयोग करके समझा सकते हैं, उदाहरण के लिए एक फ़ायरवॉल को बायपास करने के लिए।

ट्यूटोरियल का मतलब क्या है "आप किसी अन्य मशीन से अपने लैपटॉप के माध्यम से फोरम से जुड़ना चाहते हैं " और फिर यह बेहतर समझ में आता है।

Q2: यदि आप अपनी मशीन पर http: // localhost: 4444 / खोलते हैं , तो यह मंच के लिए एक HTTP requrest बना देगा, लेकिन यह उस मंच को बताएगा जिसे आप होस्ट करना चाहते हैं localhost, नहीं linuxpl.com। सर्वर तब शायद एक डिफ़ॉल्ट पृष्ठ लौटाएगा और वास्तविक वर्चुअल होस्ट नहीं होगा जो आप तब से चाहते थे जब वह वर्चुअल होस्ट का उपयोग कर रहा localhostहो और उसी साइट पर मैप न हो linuxpl.com

तो सब सब में, ssh सुरंगों के माध्यम से HTTP ट्रैफ़िक को अग्रेषित करना आसानी से कई बार काम नहीं करेगा। कहीं एक प्रॉक्सी के लिए अग्रेषण बहुत बेहतर काम करेगा।

उचित हेडर भेजने के लिए अपने ब्राउज़र को प्राप्त करने के लिए, आप अपना होस्ट फ़ाइल सेट करके सफल हो सकते हैं ताकि दावा किया जा सके कि आपका पता मशीन है। इस तरह जब ब्राउज़र पते को हल कर रहा है, तो यह आपके स्थानीय मशीन से कनेक्ट होगा और फिर भी HTTP सर्वर को उचित होस्टनाम बताएगा।

आप लाइन जोड़कर यह कोशिश कर सकते हैं

127.0.0.1        linuxpl.com

टू / आदि / मेजबान


पृष्ठ "मूर्खतापूर्ण" नहीं है। यह कहना नहीं है localhostलेकिन host। यह पूरी तरह से वैध और सार्वभौमिक रूप से लागू ट्यूटोरियल है।
डैनियल बी

@DanielB यह बेहतर शब्दों में लिखा जा सकता है। अब यह बताता है कि अपने लैपटॉप से ​​कहीं और कैसे कनेक्ट करें, लैपटॉप होने की मेजबानी करें। फिर वे लोकलहोस्ट से कनेक्ट करने के लिए कहते हैं। इसलिए केवल एक मशीन है। इसलिए टनलिंग वास्तव में कुछ भी हासिल नहीं करती है। यह मेरे दिमाग में मूर्खतापूर्ण है। यदि यह बताया गया कि तीसरी मशीन के माध्यम से सुरंग कैसे बनाई जाती है, तो यह उपयोगी होगा। इसके अलावा, यह बताने के लिए कुछ भी नहीं है कि यह टनलिंग आभासी मेजबानों के लिए भी काम नहीं करेगा, जैसा कि ओपी ने देखा।
सामी कुहोमेन

नहीं। पूरा ट्यूटोरियल इस तथ्य के आसपास बनाया गया है कि laptopएक मशीन है जिसे आप कनेक्ट कर सकते हैं। कहीं यह नहीं कहता कि यह एक ही मशीन है। यह निश्चित रूप से हो सकता है, लेकिन फिर से: यह कमांड सिंटैक्स सीखने के लिए सिर्फ एक ट्यूटोरियल है ।
डैनियल बी

@ डैनियलबी यह कहता है " एसएसएच सुरंग का उपयोग करके अपने लैपटॉप से ubuntuforums.org पर कनेक्ट करें " , जिसका अर्थ है कि आप लैपटॉप पर हैं और आप एक सुरंग का उपयोग करके वहां से कनेक्ट करना चाहते हैं। यह नहीं कहता है "अपने लैपटॉप के माध्यम से कनेक्ट करें", या समझाएं कि यह लैपटॉप के बारे में क्यों बात कर रहा है। यह मूर्खतापूर्ण है। यह कहना चाहिए "आप मशीन B से सुरंग का उपयोग करके मशीन A से वेबसाइट X से कनेक्ट करना चाहते हैं" और यह गैर-मूर्खतापूर्ण होगा। और HTTP प्रोटोकॉल के बारे में उल्लेख को इसके बारे में आम तौर पर खुश नहीं होने से जोड़ें।
सामी कुहोमेन

@ user532872 ने मेजबान फ़ाइल के साथ इसे प्राप्त करने का एक तरीका जोड़ा
सामी कुहोमेन

0

Q1: मैं एक वातावरण में इसका उपयोग कर रहा था आप इंटरनेट के साथ संपर्क नहीं है। कल्पना कीजिए कि आप एक ऐसे नेटवर्क में आपको लैपटॉप चला रहे हैं जो बाहरी दुनिया से कनेक्शन की अनुमति नहीं देता है, लेकिन एक एकल मशीन है जिसे बाहरी दुनिया से कनेक्ट करने की अनुमति है और नेटवर्क आपके लैपटॉप में था ताकि ब्राउज़ करने में सक्षम हो सके। आपको इस मशीन को shh करने की आवश्यकता होगी, जो कि आपके इंटरनेट ट्रैफ़िक को अधिकृत मशीन हालांकि बाहरी नेटवर्क में दर्ज करें।

कनेक्शन कुछ इस तरह से होता है: जब आप http: // localhost: 4444 टाइप करते हैं, तो ssh रिक्वेस्ट उठाएगा, और इसे होस्ट को भेज देगा, फिर इसे linuxpl.com:80 पर भेज देगा। आपके लैपटॉप और होस्ट के बीच का कनेक्शन ssh द्वारा एन्क्रिप्ट किया गया है, होस्ट इंटरनेट के बीच का कनेक्शन एन्क्रिप्टेड नहीं है, यानी ssh केवल फॉरवर्ड करता है और आपके दो मशीनों के बीच संदेशों को एन्क्रिप्ट करता है।

Q2: वास्तव में समझ में नहीं आता कि क्या समस्या है, लेकिन ssh -L 4444: linuxpl.com: 80 लोकलहोस्ट का वास्तव में मतलब नहीं है ... जैसा कि आप अपनी मशीन और अपनी मशीन के बीच सुरंग बना रहे हैं ...


हां, लेकिन यह वही है जो मैंने ऊपर साइट से जोड़ा था। इसलिए मैं पूछ रहा हूं कि ऐसा करने का क्या मतलब है और यह कुछ साइटों के लिए काम क्यों नहीं करेगा। आपके द्वारा प्रदान किया गया उदाहरण अलग है, इसमें गेम में 3 मशीन शामिल है और यह मानता है कि यह sshd चल रहा है।
user532872

साइट होस्ट कहती है, न कि लोकलहोस्ट
बर्सरेक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.