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

Как настроить ssh-туннель к веб-серверу внутренней сети извне внутренней сети с помощью Putty

Вот моя ситуация.

Я думаю, что могу добиться этого с помощью ssh-туннелей, но я не понимаю, какие настройки использовать в Putty, и я не уверен, что добавить в мой файл hosts для vhosts.

Спасибо за помощь!

Хорошо ... Это очень возможно с Putty, хотя и не так просто, как с OpenSSH на Linux-машине. Я бы очень рекомендовал настроить ключ идентификации SSH и установить его на устройства, к которым вы подключаетесь, и использовать агент пересылки ключей Putty Agent (pagent.exe). Тем не менее, вот шаги, которые необходимо предпринять.

Во-первых, создайте профиль подключения Putty для вашего рабочего Linux-компьютера, к которому вы можете получить доступ из дома. Вы хотите быть уверены в Connection -> Data что вы установили свой Auto-login username. Тогда под Connection -> SSH -> Auth будь уверен, что Allow agent forwarding проверено. Теперь сохраните этот профиль и запишите имя, которое вы его называете (например, work-jumpbox).

С помощью этой настройки вы теперь хотите настроить второй профиль для поля за рабочим прыжковым ящиком. Установите в этом профиле правильное имя хоста / IP-адрес и порт веб-сервера в офисе. Затем вы хотите перейти к Connection -> Data -> Proxy и установите Proxy Type к local и установите Telnet command or local-proxy-command к plink -load work-jumpbox -nc %host:%port\n (замените work-jumpbox на то, что вы назвали своим предыдущим профилем для рабочего Linux Box.

Теперь сохраните этот профиль (например, рабочий-веб-сервер), и когда вы захотите подключиться к нему, загрузите его и нажмите «Подключено», он должен зарегистрировать вас на офисном веб-сервере после того, как он войдет в Jumpbox.

Я полагаю, ваш веб-сервер работает по адресу 192.168.0.2 в порту 80 в сети вашей компании.

  1. Откройте SSH-соединение с вашим первым Linux-сервером с помощью putty.
  2. Зайти в меню Подключение> SSH> Туннели.
  3. Введите в текстовое поле Исходный порт порт 1234 (вы можете использовать любой другой порт, если хотите, если он еще не используется локальной службой, и больше 1024, если вы не являетесь администратором на своем компьютере).
  4. В поле Место назначения, введите адрес и порт вашего веб-сервера: 192.168.0.2:80.
  5. Нажмите на кнопку Добавить

Теперь, если вы наберете http://localhost:1234/ в вашем браузере вы должны получить страницу виртуального хоста по умолчанию вашего веб-сервера. Просто добавьте следующую строку в свой файл hosts

127.0.0.1 myvhost.com

и вы получите доступ к своему веб-сайту по следующему URL-адресу в своем браузере http://myvhost.com:1234/

Сначала войдите в putty и настройте сохраненное соединение с вашим ssh-сервером в офисе. Допустим, для остальных инструкций вы назовете его "офисным"

Откройте командное окно и выполните следующие действия, где X - это последний октет IP-адреса вашего веб-сервера.

шпатлевка -L 80: 192.168.0.X: 80 -нагрузка -N

Эта команда использует сеанс SSH «офис» и сопоставляет ваш локальный порт 80 с удаленным портом 80 веб-сервера, туннелируемого через «офисный» сервер.

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

hostname1.officewebdomain.com 127.0.0.1

Это «должно» сработать.

Используйте прокси-сервер SOCKS. Откройте окно PuTTY и перейдите в Connections-> SSH-> Tunnels (это может немного отличаться, поскольку у меня нет доступа к атм PuTTY). Введите исходный порт как 8080, выберите параметры «Динамический» и «Автоматический» и нажмите «Добавить» (порт назначения для динамического режима не требуется) и подключитесь к серверу SSH.

Затем перейдите в Инструменты Firefox -> Дополнительно -> Сеть -> Настройки для настройки подключения Firefox к Интернету -> Настройка прокси вручную -> оставьте все поля пустыми, кроме SOCKS Host, которым должен быть localhost на порту 8080. Установите No Proxy. Для 192.168.1.0/24 и нажмите Применить. Все, кроме вашей локальной интернет-сети, теперь должно быть отправлено через этот сервер.

В Linux это Edit -> Preferences -> Advanced -> Network -> Settings в Firefox.

Это можно сделать с помощью туннелей SSH, но это действительно не лучшее решение. По сути, это сводится к тому, что вы пропускаете TCP-пакеты через TCP-соединение, которое может взорваться, если ваше соединение не близко к идеальному.

Гораздо лучшим подходом было бы настроить VPN, которая использует пакеты UDP, и когда вы входите в VPN, вы можете видеть рабочую сеть, как если бы вы вошли в систему в офисе. OpenVPN отлично подходит для этой цели, и на его сайте есть очень подробные руководства, которые помогут вам настроить.