Я сделал локальную переадресацию порта SSH на удаленной машине:
ssh -N -L 127.0.0.1:3388:127.0.0.1:22 локальный хост
он работает на самой удаленной машине:
телнет локальный хост 3388
возвращается
Пытаюсь 127.0.0.1...
Подключен к 127.0.0.1.
Экранирующий символ '^]'.
SSH-2.0-OpenSSH_7.4
Однако, когда я использую эту переадресацию с локальной машины:
телнет удаленный.ip 3388
это не удается:
Попытка удаленного.ip...
telnet: невозможно подключиться к удаленному хосту: соединение отклонено
Можно подумать, что порт 3388 удаленной машины заблокирован брандмауэром или чем-то еще из сети, поэтому я отключил переадресацию SSH и протестировал http-сервер, прослушивающий порт 3388 на удаленной машине:
python3 -m http.сервер 3388
затем я подключаюсь к этому порту с моей локальной машины:
телнет удаленный.ip 3388
Результат дает
Попытка удаленного.ip...
Подключен к удаленному.ip.
Экранирующий символ '^]'.
уволиться
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<голова>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<title>Ответ об ошибке</title>
</голова>
<тело>
<h1>Ответ об ошибке</h1>
<p>Код ошибки: 400</p>
<p>Сообщение: неверный синтаксис запроса ("выход").</p>
<p>Объяснение кода ошибки: HTTPStatus.BAD_REQUEST — неверный синтаксис запроса или неподдерживаемый метод.</p>
</тело>
</html>
Соединение прервано внешним хостом.
что означает, что порт 3388 на удаленной машине доступен для моей локальной машины. Так почему же и переадресация SSH, и сеть работают правильно по отдельности, но терпят неудачу, когда они объединены? Кто-нибудь знает, как это исправить? Спасибо.