SSH के माध्यम से टनल पोर्ट 25565 कैसे करें?


5

मैं एक गेम खेलना चाहता हूं जो 25565 (मिनीक्राफ्ट!) पोर्ट पर होस्ट किया गया है, लेकिन मेरा यूनिवर्सिटी फायरवॉल इस पोर्ट को अनुमति नहीं देता है।

मेरे पास एक समर्पित सर्वर है, जो लिनक्स से बहुत दूर नहीं है, इसलिए मुझे लगता है कि इसके माध्यम से सुरंग बनाने का एक तरीका है (लेकिन मैंने ऐसा पहले कभी नहीं किया है और सुरंग बनाने का कोई अनुभव / अनुभव नहीं है)

यह शायद धीमा होगा, लेकिन यह खेलने में सक्षम नहीं होने से बेहतर है। क्या केवल SSH का उपयोग करना संभव है, या क्या मुझे अन्य क्लाइंट / सर्वर सॉफ़्टवेयर की आवश्यकता है? मेरे सर्वर में OpenSSH स्थापित है। इसके अलावा, मैं जिस कंप्यूटर पर गेम खेलने के लिए उपयोग कर रहा हूं वह उबंटू चल रहा है।

मैंने खोज करने की कोशिश की है, लेकिन विभिन्न प्रकार की समस्या के लिए इतने सारे समाधान प्रतीत होते हैं = /

जवाबों:


1

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

सेट अप:

  1. पोटीन सेटअप के भीतर अपने यूनिक्स बॉक्स में एक नया कनेक्शन। (होस्ट विवरण जोड़ें, अभी तक कनेक्ट न करें)
  2. एक बार जब सभी सेटअप कनेक्शन पर जाएं -> एसएसएच -> पोटीन ट्री व्यू में सुरंगें।
  3. अगला स्रोत पोर्ट में 25565 दर्ज करें और गंतव्य को खाली छोड़ दें।
  4. अंत में पहले कॉम्बो बॉक्स पर डायनामिक का चयन करें।
  5. सुनिश्चित करें कि आप सब कुछ बचा लें फिर अंत में खुले बटन पर क्लिक करें

यह पोर्ट 25565 पोर्ट पर स्थानीय रूप से दूरस्थ साइट पर किसी भी गंतव्य के लिए एक सुरंग बनाएगा। यह भी मानता है कि आप एक मिनीक्राफ्ट कनेक्शन को टनल कर सकते हैं (SSH सुरंग का उपयोग करने के लिए आपको अपनी IE सेटिंग्स सेट करने की आवश्यकता हो सकती है क्योंकि खेल कभी-कभी इस का उपयोग करते हैं यदि वे एक कनेक्शन प्राप्त कर सकते हैं)

यदि आप डिफ़ॉल्ट रूप से सुरंग मिनीक्राफ्ट का उपयोग नहीं करते हैं, तो सुरंग के माध्यम से सभी कनेक्शनों को बाहर निकालने के लिए प्रॉक्सी कैप जैसे ऐप का उपयोग करें ।


3
Minecraft मुझे एक प्रॉक्सी का चयन करने की अनुमति नहीं देता है, यह सिर्फ सीधे जोड़ता है। मुझे पता चला कि प्रॉक्सी को कैसे सेट अप करना है और सिस्टमवाइड लागू करने के लिए इसे सेट करना है और यह फ़ायरफ़ॉक्स आदि के लिए काम करता है, लेकिन मिनीक्राफ्ट इसे अनदेखा करता है। क्या आप IE द्वारा इंटरनेट एक्सप्लोरर का मतलब है? यदि हां, तो मैं linux पर हूं :)
मैट

क्षमा करें, मैंने माना कि आप विंडोज़ का उपयोग कर रहे थे, लेकिन लिनक्स में एक ही विकल्प है (अच्छी तरह से कम से कम ubuntu करता है)। यदि आप सिस्टम -> प्राथमिकताएँ -> नेटवर्क प्रॉक्सी पर जाते हैं, तो आपको प्रॉक्सी के माध्यम से सभी या अधिकांश ट्रैफ़िक को रूट करने में सक्षम होना चाहिए। Linux पर आप proxytunnel का उपयोग http proxies के माध्यम से सुरंग में कर सकते हैं (यदि आपके पास जो उपलब्ध है)
RC1140

एक मैक के बारे में क्या?
जीरो स्टैक

1
@ फॉक्सट्रॉट आप मैक का उपयोग पुष्टिकरण के बजाय, टर्मिनल एप्लिकेशन और निम्न कमांड ssh <username> @ <servername> -D 25565 के उपयोग से कर सकते हैं, एक बार आप कनेक्ट होने के बाद सिस्टम प्रॉक्सी को बदल सकते हैं। <Apple Icon> -> प्राथमिकताएं -> नेटवर्क और फिर आपके लिए उन्नत सक्रिय नेटवर्क कनेक्शन पर क्लिक करें। अंत में परदे के पीछे क्लिक करें और Socks प्रॉक्सी विकल्प में विवरण दर्ज करें और सुनिश्चित करें कि इसकी टिक
RC1140

7

सरल, कमांड चलाएं

ssh -L 25565:minecraftserverIp:25565 user@remotelinuxbox

फिर अपने मिनीक्राफ्ट क्लाइंट लोकलहोस्ट: 25565 में एक सर्वर जोड़ें

यह आपको ssh सुरंग के माध्यम से दूरस्थ मिनीक्राफ्ट सर्वर से कनेक्ट करने की अनुमति देगा।


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

अतिरिक्त प्रासंगिक जानकारी शामिल करने के लिए अपने उत्तर को संपादित करें।
पहेली

4

मैंने कुछ रेखाचित्र खींचे हैं

सुरंग तंत्र को समझना आसान बनाने के लिए, इन रेखाचित्रों को देखें। मशीन, जहां ssh टनल कमांड टाइप की जाती है, उसे »आपका होस्ट« कहा जाता है ।

ssh सुरंग स्थानीय से शुरू होती है


ssh सुरंग रिमोट से शुरू होती है

परिचय

  1. स्थानीय: -L Specifies that the given port on the local (client) host is to be forwarded to the given host and port on the remote side.

    ssh -L sourcePort:forwardToHost:onPort connectToHostका अर्थ है: ssh के साथ कनेक्ट करें connectToHost, और स्थानीय सभी कनेक्शन प्रयासों को आगे बुलाया मशीन पर sourcePortपोर्ट onPortकरने के लिए forwardToHost, जिसे connectToHostमशीन से पहुँचा जा सकता है ।

  2. दूरस्थ: -R Specifies that the given port on the remote (server) host is to be forwarded to the given host and port on the local side.

    ssh -R sourcePort:forwardToHost:onPort connectToHostका अर्थ है: ssh के साथ कनेक्ट connectToHost, और आगे के लिए सभी कनेक्शन प्रयासों को रिमोट sourcePort करने के लिए onPortकहा जाता है मशीन पर पोर्ट forwardToHost, जिसे आपके स्थानीय मशीन से पहुँचा जा सकता है।

आपका उदाहरण

दूसरी छवि आपके परिदृश्य का प्रतिनिधित्व करती है। remotehostआपके है समर्पित सर्वर चल रहा है linux नहीं भी uni से दूरfarawayhostअवरुद्ध Minecraft सर्वर आप अपने गुलाबी पोर्ट पर कनेक्ट करना चाहते है 25565

 ssh -L 12345:minecraftServerIP:25565 dedicatedServer

ग्रीन पोर्ट की पोर्ट संख्या है 12345। आप अब कनेक्ट करके minecraft सर्वर तक पहुँच सकते हैं

localhost:12345

निश्चित रूप से आप हरे रंग के पोर्ट की संख्या 12345को जो चाहें बदल सकते हैं।


कूल स्केच, @erik!
गर्भनिरोधक

1

Http-सुरंग की कोशिश करो । बस सेटिंग> पोर्ट्स / एप्लिकेशन जोड़ें और सर्वर आईपी और एप्लिकेशन पोर्ट (आमतौर पर 25565) दर्ज करें फिर ओके दबाएं और मिनीक्राफ्ट चलाने का प्रयास करें।


0

आप पोर्ट Minecraft रन को बदल सकते हैं, इसलिए इसे केवल 22 पर सेट करें (क्योंकि उन्होंने SSH को ब्लॉक नहीं किया है) तब आप प्रत्येक क्लाइंट पर पोर्ट निर्दिष्ट करके खेल सकेंगे।


1
यदि मैं सर्वर नहीं चलाता तो संभव नहीं है। अंत में मैंने मेजबान से 1863 (एमएसएन, अनब्लॉक) से अपने सर्वर पर एक पोर्ट मैप जोड़ने के लिए कहा।
मैट

0

विंडोज उपयोगकर्ता, 'विंडोज़ के नीचे' शीर्षक के लिए थोड़ा नीचे छोड़ें।

  • लिनक्स (या UNIX) उपयोगकर्ता

    किसी प्रकार का SSH क्लाइंट स्थापित करें (बल्कि स्पष्ट)

    निम्नलिखित बैश (या सादे ओल 'श) स्क्रिप्ट बनाएं:

#! /bin/bash

ssh -nfN -D 8080 "<your-ip-or-url-here>"

sleep 8

java -jar \

"/path/to/launcher-for-minecraft.jar"

आप बदल सकते हैं कि यह कब तक 'सोता है' (यह सुनिश्चित करने के लिए कि ssh कनेक्शन को इनिशियलाइज़ किया गया है) यदि आप चाहें तो मैन्युअल रूप से। कुछ और भी बदला जा सकता है।

** 'इस सुरंग का उपयोग करने के लिए Minecraft को कॉन्फ़िगर करने के लिए चरण' के तहत चरणों का पालन करें, और फिर स्क्रिप्ट चलाएं!

  • विंडोज उपयोगकर्ता

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

    मैं फिर 'SSH -> सुरंगों' पर जाता हूँ और 8080 के लिए एक डायनामिक फ़ॉरवर्डेड पोर्ट जोड़ता हूँ । यह 25565 के साथ-साथ आवश्यक है। इसे पूरा करने के लिए, निम्नलिखित करें:

    दर्ज 8080'स्रोत बंदरगाह' के लिए, और 8080'गंतव्य बंदरगाह' के लिए। करते नहीं ': के साथ `स्थानीय होस्ट गंतव्य बंदरगाह लगा दें।

    मैंने मैन्युअल रूप से पोर्ट 25565 भी जोड़ा है। यह एक 'लोकल' फॉरवर्ड होना चाहिए, न कि 'डायनामिक' फॉरवर्ड।

    इसे पूरा करने के लिए, निम्नलिखित करें:

    25565स्रोत पोर्ट के रूप में दर्ज करें , और localhost:25565गंतव्य पोर्ट के रूप में। localरेडियो बटन (फिर हिट add) का चयन करें ।

  • इस सुरंग का उपयोग करने के लिए मिनीक्राफ्ट को कॉन्फ़िगर करने के लिए कदम

    नए मिनीक्राफ्ट लॉन्चर में, अपनी प्रोफ़ाइल संपादित करें (उपयुक्त नाम edit profileबटन का उपयोग करें) या टनलिंग के लिए एक नया बनाएं ( new profile) और उसके आगे स्थित चेकबॉक्स पर क्लिक करें JVM Arguments। उस बॉक्स में, जिसे अब बाहर नहीं निकाला गया है, निम्न स्ट्रिंग को पहले से मौजूद तर्क में जोड़ें (होना चाहिए -Xmx1G):

    -DsocksProxyHost=127.0.0.1 -DsocksProxyPort=8080

    अब, इस तरह की दलीलें दी जाएंगी:

    -Xmx1G -DsocksProxyHost=127.0.0.1 -DsocksProxyPort=8080

    क्लिक करें Save Profile

अपनी pUTTY सत्र सेटिंग सहेजें।

  • अपने pUTTY टर्मिनल के साथ सक्रिय (बस लॉग इन करें, और आपको कुछ और करने की आवश्यकता नहीं है) आपके द्वारा बनाए गए प्रोफ़ाइल के तहत Minecraft शुरू करें या संपादित करें। यह मानते हुए कि आप एक वैध होस्ट (मेरे मामले में, एक linux PC का मालिक हैं, जो इस तरह के ड्रैकियन फ़ायरवॉल के पीछे नहीं है) को मान लें, तो आपको अब मिनीक्राफ्ट मल्टीप्लेयर चलाना चाहिए! बधाई हो!

मैंने शुरू में सीखा कि यह कैसे निर्धारित किया जाए कि इस शेलस्क्रिप्ट ( https://gist.github.com/EspadaV8/1088594 ) ने क्या किया और उस कार्यक्षमता को pUTTY की सेटिंग में कॉपी किया।

अन्य उत्तर पूरी तरह से समस्या का समाधान नहीं करते हैं, क्योंकि वे महसूस करने में विफल रहे कि जावा वैश्विक विंडोज़ प्रॉक्सी सेटिंग्स का पालन नहीं करता है। मेरा उत्तर आरंभिकता पर उपलब्ध अल्पज्ञात -DsocksProxyHostऔर -DsocksProxyPortतर्कों का उपयोग करता है। एक HTTP प्रॉक्सी या एसएसएल प्रॉक्सी के लिए , क्रमशः उपयोग -DhttpProxyHostऔर -DhttpProxyPortविकल्प, या तर्क -DhttpsProxyHostऔर -DhttpsProxyPort। मैं प्रॉक्सी और फ़ायरवॉल के पीछे इस विधि का उपयोग करके व्यक्तिगत सफलता की पुष्टि कर सकता हूं: डी

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