Я пытаюсь создать обратный туннель ssh между машиной A и B. Обе машины являются окнами и используют Win32 OpenSSH. Вот что я делаю.
ssh -v -R 9000:localhost:8080 user@MachineB
Затем я вижу строки ниже на консоли машины A
debug1: Remote connections from LOCALHOST:9000 forwarded to local address localhost:8080
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: client_input_global_request: rtype hostkeys-00@openssh.com want_reply 0
debug1: remote forward success for: listen 9000, connect localhost:8080
debug1: All remote forwarding requests processed
Когда я звоню localhost:9000
на машине B я вижу ниже ошибки на консоли машины A.
debug1: client_input_channel_open: ctype forwarded-tcpip rchan 3 win 2097152 max 32768
debug1: client_request_forwarded_tcpip: listen localhost port 0, originator :: port 52487
WARNING: Server requests forwarding for unknown listen_port 0
debug1: failure forwarded-tcpip
Где я ошибаюсь? Как я могу решить эту проблему?
ОБНОВИТЬ
Кроме того, когда я звоню localhost:9000
на машине B следующие строки записываются в sshd.log
файл.
6388 10:06:47 708 error: getsockname failed: Bad address
6388 10:06:47 745 channel 3: open failed: administratively prohibited: open failed
Когда я звоню на localhost: 9000 на машине B
Проверьте, работает ли он, заменив "localhost" на 127.0.0.1 на этом этапе.
Если это так, это означает, что туннель в порядке, но порт не виден снаружи вашего ssh-сервера. Решение: взгляните на: