Проблемы с настройкой SSH-туннеля для порта 80

Проблемы с настройкой SSH-туннеля для порта 80

Теперь, если я не ошибаюсь, SSH-туннель порта 80 к веб-серверу на порту 80 должен позволить моему порту 80 туннелировать через этот сервер, верно? Однако, когда я настраиваю туннель и захожу на веб-сайт, мой журнал все еще кажется исходящим с моего домашнего компьютера, а не с IP сервера. Есть идеи, почему?

Я использую следующую команду, но, похоже, она просто подключается по SSH к хосту в терминале:

ssh root@webserver -L 80:127.0.0.1:80

решение1

Только что попробовал и убедился, что это работает:

ssh -ND 8080 [email protected]

Требуется root для привязки локального порта 80 на вашем компьютере, так как это зарезервированный порт (а 8080 — это обычная альтернатива). Чтобы перенаправить только трафик браузера, вы можете настроить Firefox / Chrome / Whatever на использование Socks-прокси "localhost" на "8080".

Попробуйте без root-доступа, у меня работает на веб-сервере, к которому у меня нет root-доступа.

решение2

После настройки туннеля (с помощью -L) вам необходимо изменить используемый вами URL-адрес, например, http://127.0.0.1/или, если имя сайта должно совпадать из-за настройки виртуального хостинга, вам необходимо добавить его в файл hosts вашего рабочего стола:

127.0.0.1    www.domain.com

Вы можете определить псевдоним на сервере vhost, чтобы использовать одно имя для 127.0.0.1, например "test.domain.com", а настоящее имя использовать напрямую, если это когда-нибудь пригодится — забыть удалить записи из файла hosts — это хороший способ вызвать путаницу. Зависит от того, как работает сайт.

Для переадресации порта 80 вам нужны права root только на рабочем столе, а не на веб-сервере.Я настоятельно рекомендую не разрешать вход по SSH для пользователя root.

Использование непривилегированного портаможетработа, опять же в зависимости от вашего сайта:

ssh user@webserver -L 1080:127.0.0.1:80

и используйте URL-адрес http://127.0.0.1:1080/.

Использование SOCKS-прокси ( -D), как предлагаетсяможетмогут вызвать некоторые сюрпризы в зависимости от конфигурации SOCKS/DNS/брандмауэра/NAT.

(В Linux в качестве альтернативы использованию прав root для зарезервированных портов можно использовать возможности POSIX, см.https://stackoverflow.com/questions/413807/есть-способ-для-не-корневых-процессов-привязать-к-привилегированным-портам-1024-on-l, однако это не будет работать на стандартных версиях OpenSSH, поскольку в нем есть дополнительная жестко закодированная проверка номеров портов, если только он не скомпилирован с помощью NO_IPPORT_RESERVED_CONCEPTdefined. Ответы на связанный вопрос содержат различные другие решения для этого.)

Связанный контент