मैं निम्नलिखित कमांड को फिर से कैसे लिख सकता हूं ProxyCommand
?
ssh -l username1 -t jumphost1 \
ssh -l username2 -t jumphost2 \
ssh -l username3 -t jumphost3 \
ssh -l username4 server
यह काम नहीं करता है
ssh -o ProxyCommand="\
ssh -l username1 -t jumphost1 \
ssh -l username2 -t jumphost2 \
ssh -l username3 -t jumphost3" \
-l username4 server
username1@jumphost1's password:
Pseudo-terminal will not be allocated because stdin is not a terminal.
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
ssh_exchange_identification: Connection closed by remote host
मुझे इसके उपयोग के बारे में पता है nc
, लेकिन मैं इसे 3+ हॉप्स के साथ उपयोग करने का तरीका खोज रहा हूं, और इसके साथ इस विकल्प का उपयोग भी कर रहा हूं scp
। मैंने ssh_config
मैन पेज चेक किया , लेकिन जानकारी कम से कम मेरे लिए काफी दुर्लभ है।
संपादित करें
मैंने नीचे सुझाए अनुसार ProxyCommand
दूसरे में नेस्टेड का उपयोग करने की कोशिश की, ProxyCommand
लेकिन मुझे हमेशा निम्नलिखित पंक्तियों के साथ कुछ मिलता है
debug3: ssh_init_stdio_forwarding: 192.17.2.2:2222
debug1: channel_connect_stdio_fwd 192.17.2.2:2222
debug1: channel 0: new [stdio-forward]
debug2: fd 4 setting O_NONBLOCK
debug2: fd 5 setting O_NONBLOCK
debug1: getpeername failed: Bad file descriptor
debug3: send packet: type 90
debug2: fd 3 setting TCP_NODELAY
debug3: ssh_packet_set_tos: set IP_TOS 0x10
debug1: Requesting no-more-sessions@openssh.com
debug3: send packet: type 80
debug1: Entering interactive session.
सौभाग्य से, मेरे उद्देश्य से 7.3
-J
या ProxyJump
सेवा करता है - हालांकि मुझे अभी भी अपनी कुंजी सेटअप के आसपास काम करना है।
ssh -q -J user1@jumphost1,user2@jumphost2,user3@jumphost3 user@server