Назад | Перейти на главную страницу

HTTP через SSH с несколькими узлами

У меня есть доступ к серверу linux через многоузловой ssh

ssh -L3880:localhost:3880 user@first-hop-server -t ssh -L3880:localhost:3880 user@end-server

Это нормально для доступа через ssh. Однако я также хочу получить доступ к веб-серверу Apache через порт 80 конечного сервера с помощью веб-браузера.

Я нашел решение без прыжков, но не уверен, как его адаптировать. Я на машине MacOS

РЕДАКТИРОВАТЬ: Если я попробую предложение Tero и активируя -v на ssh, я увижу более или менее:

debug1: Connection to port 3880 forwarding to localhost port 3880 requested.
debug1: channel 3: new [direct-tcpip]
debug1: Connection to port 3880 forwarding to localhost port 3880 requested.
debug1: channel 2: new [direct-tcpip]
channel 2: open failed: connect failed: Connection refused
debug1: channel 2: free: direct-tcpip: listening port 3880 for localhost port 3880, 
connect from 127.0.0.1 port 38535, nchannels 3
debug1: Connection to port 3880 forwarding to localhost port 3880 requested.
debug1: channel 4: new [direct-tcpip]

(идет по разным каналам / портам, все отказались)

Поскольку на одном хосте Apache может размещаться несколько доменов, вам необходимо убедиться, что ваш браузер отправляет Host заголовок при создании HTTP-соединения или соответствующий заголовок TLS с HTTPS.

Для этого вам нужно отредактировать свой /etc/hosts файл, чтобы он включал:

127.0.0.1 example.com

куда example.com это домен, которого вы хотите достичь.

После этого вы можете создать туннель SSH, как указано выше, и открыть веб-сайт с помощью http://domain.com:port в вашем браузере.

Изменить: вам нужно сделать последнюю переадресацию на HTTP-порт 80 или HTTPS-порт 443 сервера.

Я изменил использование второго туннеля на 80-м порту

ssh -L3880:localhost:3880 user@first-hop-server -t ssh -L3880:localhost:80 user@end-server

Итак, я понимаю, что локально порт: 3880-> first-hop: 3880 И с первого прыжка другой туннель берет порт 3880 на порт 80 веб-сервера.

И, используя предложение Теро, мне теперь удается открыть сайт на http://domain.com:3880 Определив в / etc / hosts 127.0.0.1 domain.com