Ubuntu Server, VMware, Symfony | Как прокинуть localhost, чтоб он был доступен снаружи виртуальной машины

Имеется виртуальная машина VMware с установленной на ней системой Ubuntu Server. На сервере установлен Apache, на котором настроены конфиги для доступа к доменам сайтов снаружи. Соединение windows с vmware->ubuntuserver устанавливается через ip интерфейса ens33 (192.168...). Тут я могу локально как подключиться по SSH указав ip в роли хоста, так и вытащить страницу сайта в Chrome прописав данный ip в адресную строку. Тут пока все хорошо.

Но далее на сервере запускаю symfony serve, который слушает 127.0.0.1:8000 и тут встает вопрос. Как можно и его(адрес) прокинуть, чтоб он был виден снаружи виртуальной машины? Возможно надо какой-то сетевой мост проложить между интерфейсами ens33 и lo, или еще чего.

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

С уважением, Евгений.


Ответы (1 шт):

Автор решения: zalex

Во-первыйх зависит от того как вы запускаете виртуальную машину ( в плане сети), одако если вы дополнительно не пляшете с бубнами и напрямую ходите на 22 порт по ssh, то вероятно остальные порты тоже будут доступны для этого хоста. Тогда запустите symfony serve на адресе 0.0.0.0:8000 , соответственно вы должны получить доступ .

Что тут происходит. Когда вы запускаете на 127.0.0.1, то вы "привязываете" (биндите, как угодно) ваш сервер к интерфейсу 127.0.0.1, а понятно что к этому интерфесу вы имеете доступ исключительно с того хоста на котором запущен и вас сервис, он по тому и называется localhost. Чтобы был доступ через другой интерфейс, вам нужно либо обозначить его явно, либо сказать что это 0.0.0.0 что означает любой интерфейс, т.е. ваш сервис будет доступен с любого возможного интерфейса.

→ Ссылка