Как я служу веб-сайту от виртуальной машины на virtualbox?

У меня есть хост Ubuntu 16.04, который имеет гостя Ubuntu 16.04, работающего virtualbox. У меня есть apache2, настроенный на обеих машинах, они служат каждому их собственные сайты. Я могу достигнуть веб-сайта на госте от хоста - который хорошо работает - но когда я пытаюсь достигнуть веб-сайта на госте от любого другого компьютера, я получаю ошибку, что хост не мог быть достигнут.

Я использую мост для соединения гостя с сетью. Гость может проверить с помощью ping-запросов все другие машины в той же сети и также 8.8.8.8. Все другие машины в сети могут проверить с помощью ping-запросов гостя. Я добавил гостевой IP машины в/etc/hosts хост-машины.

Что я должен сделать, чтобы смочь достигнуть веб-сайта на гостевой машине из Интернета?

2
задан 14 March 2017 в 22:50

3 ответа

Как CelticWarrior упоминает, Самый Легкий путь состоит в том, чтобы изменить Конфигурацию сети VM в Вашем Гипервизоре (или Vbox или VMware или KVM). Какой бы ни Гипервизор, который Вы используете, настраивают Сетевое соединение для нахождения в той же сети как ХОСТ, вместо Natted.

, Если Вы все еще хотите к NAT на Вашем VM или не имеете опции изменить его; можно настроить IPtables для выполнения Порта Вперед к IP-адресу VM и номеру порта. Используя что-то как следующая ссылка:

Простое перенаправление портов

1
ответ дан 2 December 2019 в 03:41

В VirtualBox можно использовать в качестве сетевого адаптера сетевой мост. Чем Ваша виртуальная человечность должен получить IP-адрес от Вашей сети интерна. (Легче дать IP вручную, таким образом, это - каждый раз тот же IP), Чем Вы имеете к порту передачи 80 в Вашем маршрутизаторе для портирования 80 из сети IP от виртуальной человечности. Если, чем обзор к Вашему IP экстерна (Вы видите его в своем маршрутизаторе), чем Вы необходимо видеть веб-сайт. Вам не нужен Apache в Вашем хосте, если Вы хотите создать виртуальный сервер.

1
ответ дан 2 December 2019 в 03:41

Если настраивавший перенаправление портов или соединенный мостом Вы все еще не можете соединиться с веб-сервером гостя затем возможно, гостевой брандмауэр блокирует его.

Например, я смог к SSH гостю экземпляр ОС, но не подключение к порту 8000, куда мой гость выполнял веб-сервис.

Используя 'завихрение-v' я смог, видят, что завихрение устанавливало связь и отправляло заголовки, но не получало ответа.

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

Это зафиксировало его!


Сделать..

sudo su -

Затем..

iptables-P ВХОД ПРИНИМАЮТ

iptables-P ВЫВОД ПРИНИМАЮТ

iptables-P ВПЕРЕД ПРИНИМАЮТ

iptables-F

Затем попытайтесь поразить адрес от хоста снова.


Другие детали...

Мой веб-сервис предположения работал на песнях и слушал на 0.0.0.0:8000, т.е. все интерфейсы на порте 8000. Мой хост был Windows 10.

Я имел успех со следующим..

A) Я устанавливаю передачу NAT порта 8888 на моем хосте в virtualbox для портирования 8000 из гостя. В virtualbox я не обеспечил ipaddress или для хоста или для гостя в туземной передающей конфигурации. Я затем совершил нападки 127.0.0.1:8888 в хосте и смог получить доступ к своему сайту.

B) Я также примерил превращение соединенного мостом в виртуальном поле затем после перезапуска гостя, я выполнил ifconfig и нашел сетевой интерфейс, которому присвоил адрес DHCP мой маршрутизатор. Этот адрес был тем, запускающимся с 192.168.0. поскольку это - то, как мой маршрутизатор является установкой. Мой был 192.168.0.62, но Ваш будет отличаться. Я затем совершил нападки 192.168.0.62:8000 и смог связаться со своим сайтом.

C) Наконец я устанавливаю запараллеленную сеть в Плеере рабочей станции VMware и сделал те же шаги как B, и это также работало.

В плеере VMware я не мог видеть, что место для конфигурирования перенаправления портов так не попробовало это. Вероятно, нужна заплаченная версия для той функции??

0
ответ дан 2 December 2019 в 03:41

Другие вопросы по тегам:

Похожие вопросы: