जब मैं सिर्फ आईपी पते का उपयोग कर ssh करता हूं, तो यह एक विशिष्ट कंप्यूटर पर सीधे पोर्ट करता है


-2

ठीक है, मेरे पास 5 कंप्यूटर हैं और आज, मैंने ssh सेट किया है। मैंने अपने 192.168.1.10 xbuntu का नेतृत्व करने के लिए पोर्ट अग्रेषण का उपयोग किया। मेरे पास नेटवर्क पर 4 अन्य कंप्यूटर हैं

हालाँकि अगर मैं अपने सार्वजनिक आईपी को अपने ISP से प्रदान किया गया था, तो मुझे IP 98.222.222.38 कहना है, यह सीधे मेरे 192.168.1.10 पर चला जाता है। सीधे वहां जाना कैसे जानता है? मुझे समझ में नहीं आता है क्योंकि मेरे पास 98.222.222.38 पर 5 कंप्यूटर हैं, यह 192.168.1.3 कहने की बजाय 192.168.1.10 पर कैसे जाना जाता है?


3
यह वही है जो पोर्ट अग्रेषण करता है। यह आपके राउटर में एक पोर्ट को आपके सबनेट में एक विशिष्ट आईपी से एक पोर्ट पर लाता है।
मार्सेलो

जवाबों:


2

SSH के साथ सीधे IP पते से कनेक्ट करने से पोर्ट 22 पर कनेक्शन का प्रयास किया जाएगा। आपके राउटर ने आपको नेटवर्क एड्रेस ट्रांसलेशन (NAT) के पीछे रखा है, जिससे आप एक ही सार्वजनिक IP पते के पीछे कई कंप्यूटरों का उपयोग कर सकते हैं। आपके राउटर में 192.168.1.10 को 22 को अपने WAN IP पर पोर्ट करने के लिए अग्रेषित कनेक्शन पोर्ट पोर्ट करने का नियम होना चाहिए।

आपको अपने दूसरे आंतरिक कंप्यूटर पर ssh तक पहुँचने के लिए एक अलग WAN पोर्ट को 192.168.1.3 पोर्ट 22 पर अग्रेषित करने का एक अलग नियम रखना होगा।

यह बताता है कि जब आप अपने सार्वजनिक आईपी पते से जुड़ने का प्रयास करते हैं तो आप .10 होस्ट से कैसे जुड़ रहे हैं।

हालांकि, इस सवाल के नीचे टिप्पणियों में आपके स्पष्टीकरण से: ssh दूरस्थ सिस्टम पर उसी उपयोगकर्ता नाम को मानता है जैसे कि कोई उपयोगकर्ता नाम प्रदान नहीं किया गया है। इस प्रकार, यदि आप ssh 98.222.222.38इसके बजाय उपयोग करते हैं ssh will86@98.222.222.38और सफलतापूर्वक कनेक्ट कर सकते हैं, तो आपके क्लाइंट मशीन पर आपका उपयोगकर्ता नाम "will86" होना चाहिए।

यहां पूरी प्रक्रिया है, प्रभाव में (विशेष रूप से आपके राउटर पर नेटवर्क स्टैक कैसे काम करता है यह सटीक रूप से परिलक्षित नहीं हो सकता है): जब आप बस चलाते हैं ssh 98.222.222.38:

  • आपकी क्लाइंट मशीन IP 98.222.222.38, port 22 को एक TCP SYN पैकेट भेजती है
  • आपका राउटर पैकेट प्राप्त करता है, पैकेट को 98.222.222.38 पर रूट करता है
  • आपका राउटर 98.222.222.38 पोर्ट 22 पर वान एडाप्टर पर पैकेट प्राप्त करता है
  • आपका राउटर आने वाले पैकेट को रूट करने के तरीके की पहचान करने के लिए अपने NAT पोर्ट अग्रेषण नियमों का निरीक्षण करता है। ज्यादातर स्थितियों में, यह पैकेट को यहाँ गिरा देगा, लेकिन आपके राउटर में पोर्ट 22 से आईपी 192.168.1.10 पोर्ट के लिए एक अग्रेषण नियम होना चाहिए।
  • आपका राउटर पैकेट को 192.168.1.10, पोर्ट 22 पर भेजता है
  • 192.168.1.10 पैकेट प्राप्त करता है और प्रतिक्रिया देता है, कनेक्शन स्थापित करने के लिए टीसीपी कनेक्शन हैंडशेक के माध्यम से जारी रहता है
  • कहीं ssh अनुप्रयोग प्रोटोकॉल (जो स्थापित टीसीपी कनेक्शन के माध्यम से होने वाला है) एक उपयोगकर्ता नाम की आवश्यकता है। जैसा कि एक कमांड लाइन पर प्रदान नहीं किया गया है, क्लाइंट ssh क्लाइंट एप्लिकेशन लॉन्च करने वाले उपयोगकर्ता के लॉग इन का उपयोग करता है। यदि आप निर्दिष्ट करते हैं ssh vt_antik@98.222.222.38, तो यह उपयोगकर्ता नाम के लिए vt_antik का उपयोग करने का प्रयास करेगा।

मुझे नहीं लगता कि आप प्रश्न को समझते हैं।
user2805313

ठीक है, मुझे लगता है कि लोग इस सवाल को गलत समझ रहे हैं। यदि मैं कमांड प्रॉम्प्ट पर सिर्फ ssh 98.222.222.5 टाइप करता हूं, जो कि मेरा सार्वजनिक आईपी है जो मेरा आईएसपी मुझे प्रदान करता है, तो 192.168.1.10 पर कैसे जाना जाता है यदि 5 अन्य कंप्यूटर उसी 98.222.222 आईपी से जुड़े हैं? आमतौर पर आप willc86@98.222.222.5 में टाइप करते हैं और यह जानता है लेकिन सभी मैं टाइप कर रहा हूँ ssh 98.222.222.5
user2805313

0

एक कंप्यूटर केवल एक आवेदन को किसी भी समय एक विशिष्ट पोर्ट को सुनने की अनुमति दे सकता है। इस मामले में, ssh 22 पोर्ट पर है, इसलिए sshd वह है जो कनेक्शन प्राप्त करता है।

आप नेटवर्क पर दूसरों के लिए एक सरोगेट कंप्यूटर के रूप में एक राउटर के बारे में सोच सकते हैं। इस मामले में, यह एक विशिष्ट पोर्ट पर सुनने वाले एप्लिकेशन के बजाय एक कंप्यूटर होगा। राउटर पर केवल एक 'पोर्ट 22' है, इसलिए इसे केवल एक कंप्यूटर पर भेजा जा सकता है। यदि कोई पोर्ट फ़ॉरवर्ड नियम नहीं थे, तो राउटर खुद ही कनेक्शन स्वीकार कर लेगा (और कुछ राउटर्स के पास ssh एक्सेस है)।

हालाँकि, आप राउटर पर एक अलग पोर्ट चुन सकते हैं, और दूसरे कंप्यूटर के पोर्ट 22 पर फॉरवर्ड कर सकते हैं ताकि आप उन्हें एक्सेस कर सकें। मानकों के लिए, पोर्ट नंबर> 1024 का उपयोग करें, क्योंकि सब कुछ <1024 अन्य सेवाओं के लिए आरक्षित है (उदाहरण के लिए 20-21 एफ़टीपी के लिए, 23 टेलनेट है)। इसलिए, उदाहरण के लिए, 98.222.222.38:22100 पोर्ट को 192.168.1.3:22 पर भेज सकते हैं

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