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

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

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

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

 ping locahost:9001 

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

  • туннель в скрипте python с выполнением команды python
  • настройка SSH обратного туннеля
  • Как использовать туннель SSH для подключения к удаленному серверу MySQL?
  • SSH туннелирование через маршрутизатор busybox
  • Как ограничить SSH-туннель определенным исходящим IP-адресом на SSH-сервере?
  • Невозможно принудительно выполнить беспроблемную аутентификацию ssh при переадресации портов
  • Существуют ли недостатки в туннелировании SSH?
  • Как начать два процесса, поддерживаемых свиньями? Итак, первый заканчивается, когда второй заканчивается?
  • 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.

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