正如您所看到的,當我嘗試在已使用的本機連接埠上建立另一個隧道偵聽但隧道已建立時,我收到錯誤訊息。當有另一個進程正在使用給定連接埠時,我可以強制 ssh 不在給定連接埠上建立隧道嗎?
┌─[wakatana@~] [79 files, 89Mb]
└──> ps -elf | grep 'ssh -fN'
1 S wakatana 4263 1 0 80 0 - 10660 - May02 ? 00:00:00 ssh -fN -L 5901:localhost:5901 [email protected]
0 S wakatana 6340 4754 0 80 0 - 1959 - 00:22 pts/7 00:00:00 grep --color=auto ssh -fN
┌─[wakatana@~] [79 files, 89Mb]
└──> ssh -fN -L 5900:192.168.1.1:3389 [email protected]
┌─[wakatana@~] [79 files, 89Mb]
└──> ps -elf | grep 'ssh -fN'
1 S wakatana 4263 1 0 80 0 - 10660 - May02 ? 00:00:00 ssh -fN -L 5901:localhost:5901 [email protected]
1 S wakatana 6371 1 0 80 0 - 10355 - 00:22 ? 00:00:00 ssh -fN -L 5900:192.168.1.1:3389 [email protected]
0 S wakatana 6381 4754 0 80 0 - 1959 - 00:22 pts/7 00:00:00 grep --color=auto ssh -fN
┌─[wakatana@~] [79 files, 89Mb]
└──> ssh -fN -L 5900:192.168.1.3:3389 [email protected]
bind: Address already in use
channel_setup_fwd_listener: cannot listen to port: 5900
Could not request local forwarding.
┌─[wakatana@~] [79 files, 89Mb]
└──> ps -elf | grep 'ssh -fN'
1 S wakatana 4263 1 0 80 0 - 10660 - May02 ? 00:00:00 ssh -fN -L 5901:localhost:5901 [email protected]
1 S wakatana 6371 1 0 80 0 - 10355 - 00:22 ? 00:00:00 ssh -fN -L 5900:192.168.1.1:3389 [email protected]
1 S wakatana 6391 1 0 80 0 - 10355 - 00:23 ? 00:00:00 ssh -fN -L 5900:192.168.1.3:3389 [email protected]
0 R wakatana 6401 4754 0 80 0 - 1958 - 00:23 pts/7 00:00:00 grep --color=auto ssh -fN
答案1
我試著考慮如何整理你的問題,但沒有時間。我可以回答您:您需要將“ExitOnForwardFailure”選項設為“是”。
$ ssh -fN -o ExitOnForwardFailure=yes -L 5900:192.168.1.1:3389 [email protected]
$ ssh -fN -o ExitOnForwardFailure=yes -L 5900:192.168.1.3:3389 [email protected]
bind: Address already in use
channel_setup_fwd_listener: cannot listen to port: 5900
Could not request local forwarding.
$ ps auwwx | grep ssh | grep 1111
daniel 94948 0.0 0.0 2461204 520 ?? Ss 2:56pm 0:00.00 ssh -Nf -o ExitOnForwardFailure=yes -L 5900:192.168.1.1:3389 MY.PUB.IP.ADDR