ssh обратное туннелирование не работает

Итак, у меня есть сервер и домашняя машина. Мой сервер не может разговаривать с Интернетом, но моя домашняя машина может. Таким образом, я настроил обратный туннель через домашний сервер, используя:

ssh -R 9001:www.google.com:80 server 

Теперь, когда я пытаюсь выполнить ping с сервера, он говорит о неизвестном хосте.

 ping locahost:9001 

Любая идея, что я делаю неправильно?

  • Обратный режим AutoSSH работает, но проксированные порты LISTEN случайным образом выходят из строя
  • Нужно ли вообще запускать рабочий стол gnome через удаленный x ssh-туннель?
  • Туннелирование нескольких портов через один порт
  • SSH через штопор и прокси получают ошибку «ssh_exchange_identification»
  • Понимание туннелей SSH
  • SSH-туннель для VNC в системе Windows 7. Ошибка: открытие туннельного устройства
  • Reverse (SSH) через сервер между двумя компьютерами? - для удаленной помощи
  • VPN-сервер (плацдарм) без root?
  • 2 Solutions collect form web for “ssh обратное туннелирование не работает”

    ping реализуется в протоколе ICMP, порты, которые вы пересылаете, являются портами TCP. Таким образом, ping не является подходящим тестом для этой ситуации, вам лучше протестировать с помощью telnet или что-то подобное, чтобы проверить, можно ли установить соединение.

    SSH-туннели не работают так: именно прямой трафик tcp на установленном порту на указанный адрес и порт на удаленном конце туннеля. Когда вы выполняете ping вы на самом деле используете другой протокол ICMP (протокол управления интернет-протоколом) на большинстве систем (некоторые используют udp ), которые не будут передаваться через ваш туннель ssh.

    Для ваших конкретных потребностей вам, вероятно, будет лучше с VPN на вашей домашней машине. Затем вы можете перенаправить трафик с помощью маршрутов на локальный компьютер. После этого вы сможете отправлять любые IP-протоколы (включая udp, tcp и icmp), чтобы вы могли выполнять ping, просмотр и т. Д.

    Это было бы большой проблемой для крупных организаций, таких как google, потому что для каждого хоста, который вы хотите перенаправить на ваш домашний компьютер, требуется, чтобы маршрут был добавлен на сервер для обработки этого (и у google есть много IP-адресов, которые вам нужно будет маршрутизировать). Это даже в случае с Google, если вы собираетесь маршрутизировать обобщенные netblocks gooogle.

    Если вы готовы пожертвовать своим маршрутом по умолчанию на своем сервере (который позволит вам передать весь нелокальный трафик через VPN для маршрутизации) и использовать статические маршруты на вашем сервере для любых хостов в сети сервера, тогда задача будет много проще, потому что тогда это всего лишь случай пересылки IP . Вы указываете маршрут по умолчанию на конечную точку VPN, и IP-переадресация на вашем домашнем компьютере отправляет трафик в Интернет.

    Если вы хотите перенаправить веб-трафик (HTTP / HTTPS), вы можете использовать обратный ssh-туннель в сочетании с веб- прокси . Это довольно тривиально, поскольку веб-клиенты предоставляют простой механизм для указания на прокси.

    Вы также можете попытаться настроить прокси-сервер SOCKS (который похож на веб-прокси, но поддерживает некоторые другие приложения / протоколы), но тогда могут использовать его только приложения на сервере, которые используют SOCKS.

    Linux и Unix - лучшая ОС в мире.