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

SSH Local Forwarding

У меня есть сервер ubuntu, который в настоящее время подключен к моему iMac через мост Ethernet с IP-адресом. 192.168.2.2. iMac делится интернетом с сервером ubuntu.

IP-адрес iMac: 192.168.0.105 в сети LAN к основному маршрутизатору / модему. И 192.168.2.1 на мосту Ethernet с сервером ubuntu.

Сервер ubuntu разрешает доступ к apache всем через порт :80.

Итак, в iMac я запустил sudo ssh -L 80:0.0.0.0:80 ubuntu@192.168.2.2 и я могу получить доступ к серверу apache прямо в моем браузере iMac, используя localhost.

Вопрос в том, есть ли у меня другой компьютер в локальной сети, который я бы хотел получить доступ к серверу apache ubuntu через iMac айпи адрес 192.168.1.105. Как это будет работать?

Я пробовал получить к нему доступ с помощью 192.168.0.105 в браузере компьютера, но, похоже, не работает. И получить к нему доступ напрямую с помощью 192.168.2.2 так как это IP-адрес через мостовое соединение Ethernet с iMac.

Используя -L флаг, вы можете указать, какой адрес слушать вместо localhost, который используется по умолчанию. Итак, эта команда:

ssh -L 0.0.0.0:80:127.0.0.1:80 ubuntu@192.168.2.2

будет связываться со всеми интерфейсами на вашем компьютере iMac и перенаправлять любые запросы на порт 80 на 192.168.2.2 (фактически, на локальный интерфейс на этом компьютере, поэтому ваш сервер Ubuntu будет видеть каждый входящий запрос, предназначенный для 127.0.0.1).

Таким образом, компьютеры в одной сети смогут подключаться к вашему iMac, если это позволяет брандмауэр.