ssh आगे कई पोर्ट


9

तो यह मेरे लिए काम करता है:

ssh -v -L 8080:remotewebserver:8080 me@jumphost

कैसे के बारे में अगर मैं और अधिक बंदरगाहों को शामिल करना चाहूंगा?

मैं न केवल 8080, बल्कि 8443, 8923 और 8181 को भी आगे बढ़ाना चाहता हूं?

क्या मुझे प्रत्येक पोर्ट के लिए एक नया कनेक्शन करने की आवश्यकता है?

जवाबों:


19

नहीं, आपको एक की आवश्यकता नहीं है प्रति अग्रेषित पोर्ट से कनेक्शन, बस आगे -Lबयान जोड़ें :

ssh -L LPort1:RHOST1:RPORT1 -L LPORT2:RHOST2:RPORT2 me@ju.mp.ho.st

ssh jump"उर्फ" का उपयोग करके इसे छोटा किया जा सकता है jump, यदि आप ~/.ssh/configइस तरह से एक मिलान अनुभाग सेट करते हैं:

Host jump
    User myUserName
    Hostname ju.mp.ho.st
    Port 2345
    LocalForward 8080 remotewebserver:8080
    LocalForward 8443 remotewebserver:8443
    LocalForward 8923 remotewebserver:8923
    LocalForward 8181 remotewebserver:8181

# Eliminates reconnection delay, and does not try to re-forward ports:
Host *
  ControlMaster auto
  ControlPath /tmp/%r@%h:%p

मैंने कई वर्षों से इस तकनीक का उपयोग किया है, निश्चित रूप से पहले से ही 10+ बंदरगाहों के साथ, लेकिन जब मुझे अधिक बंदरगाहों को अग्रेषित करने की आवश्यकता होती है, तो मैं डायनेमिक सॉक्स प्रॉक्सी का उपयोग करता हूं -D


1
कनेक्ट करते समय, मुझे प्रत्येक अग्रेषित पोर्ट के लिए ये त्रुटि संदेश दिखाई देंगे: bind: Address already in use channel_setup_fwd_listener_tcpip: cannot listen to port:फिर Could not request local forwarding.नियंत्रण * सेटिंग्स के साथ, ये चले गए हैं, धन्यवाद! पुनश्च: मैं एसई पर उस टिप्पणी के झंडे का उपयोग कर रहा हूं, और आप पहले दूसरे व्यक्ति हैं जिसे मैंने इसका उपयोग करते हुए देखा है। सराहना करते हैं कि :)
Dan Dascalescu
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.