Pull to refresh

Как сделать доступной виртульную машину из интернета

Задача стоит следующим образом. Есть хост машина под управлением Windows 7 Pro на которой крутиться виртуальный сервер ubuntu 12.04. А также все это «питается» интернетом от роутера. Мне необходимо чтобы я сам, или кто другой могли иметь доступ к виртуальной машине, а именно FTP, HTTP сервера. На которых отображаются труды моей деятельности в области web разработки. Приступим.

На роутере скорее всего для проброса портов будет пункт, вроде «Virtual Servers». Там выбираем службу, служба обычно, представляет собой некий набор портов, если же вы не найдете такого у себя в роутере, то надо будет заполнить поля портов самому. Т.к. это будет HTTP и FTP то надо будет указать порты 80 и, соотвественно, 21. Как цель проброса указываем IP адрес нашей машины с Win 7. Если вы используете DHCP то «заморозьте» IP по мак адресу, чтоб однажды ваша машина не получила другой, отличный от того что указан в правилах проброса. Все с роутером покончили.

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

Идем далее. Наша цель — 80 и 21 порты на машине с Ubuntu (это будет 192.168.56.101). Но роутер может обратиться только на наш физический IP адрес внутри локальной сети, на железную сетевую карту. Тут нам надо делать еще один проброс порта. Но только уже на нашем компьютере под управлением Win7 с железной карты, пускай у нее IP будет 192.168.1.101. То есть, вкратце, надо пробросить 192.168.1.101:80 на 192.168.56.101:80 в операционной системе Windows 7 Pro приступаем.

1. Запускаем командную строку с правами администратора.
2. Запускаем netsh
netsh>interface
netsh interface>portproxy
netsh interface portproxy>add v4tov4 listenport=80 listenaddress=192.168.1.101 connectaddress=192.168.56.101 connectport=80


Проверяем все ли прошло гладко:

netsh interface portproxy>dump

#===========================
# Конфигурация портов прокси
#===========================
pushd interface portproxy

reset
add v4tov4 listenport=80 connectaddress=192.168.56.101 connectport=80


popd

# Конец конфигурации портов прокси


Да все нормально. Пробуем теперь обратиться локально по 192.168.1.101, просто вбив этот адрес в любой интернет браузер, например, и мы получим ответ от апача по адресу 192.168.56.101. Дальше пробуем уже по внешнему IP адресу, и вы должны получить тот же ответ что и от внутреннего адреса 192.168.1.101. По аналогии пробрасываем для FTP, то есть 21 порт.

Стоит уточнить, данный способ пробросит только TCP. Используемая виртуальная машина — VirtualBox.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.