Откройте порт для Meteor на Fedora Red Hat 24 в VirtualBox

Я запускаю сервер Fedora 24 в VirtualBox, а Apache работает на порту 80. Я хочу открыть порт 3000, чтобы запустить сайт Meteor на том же виртуальном сервере.

Я попытался использовать команду CLIfirewall-c md --zone=public --add-port=3000/tcp --permanent, и на поверхности, это, кажется, работает:

#firewall-cmd --zone=public --list-ports
80/tcp
# firewall-cmd --zone=public --add-port=3000/tcp --permanent
success
# systemctl restart firewalld
# firewall-cmd --zone=public --list-ports
3000/tcp 80/tcp

Сервер Fedora в 10.0.0.30 сообщает, что приложение Meteor запущено …

App running at: http://localhost:3000/

… но когда я подключаюсь из браузера на хост-компьютере, я получаю уведомление, что:

Этот сайт недоступен

http://10.0.0.30:3000 / недоступен.

Когда я подключусь к простой ванили http://10.0.0.30 , веб-сайт Apache хорошо виден.

Что я могу сделать, чтобы устранить эту проблему и решить ее?


РЕДАКТИРОВАТЬ:

/etc/selinux/config/ похоже на это, но даже когда он отключен, проблема не решена:

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=permissive
# SELINUXTYPE= can take one of these three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

1 ответ

  1. Я не решил проблему брандмауэра, но теперь у меня есть обходной путь.

    Следуя предложению @MikeKing и используя совет, данный Jsaac здесь, я добавил следующее В конце /etc/httpd/conf/httpd.confin the Fedora instance running in VirtualBox:

    NameVirtualHost *:80
    
    <VirtualHost *:80>
        DocumentRoot /var/www/html
        ServerName apache
    </VirtualHost>
    
    <VirtualHost *:80>
        ServerName meteor
        ProxyPass / http://localhost:3000/
        ProxyPassReverse / http://localhost:3000/
    </VirtualHost>
    

    Я отредактировал файл /etc/hosts/ на главной машине:

    127.0.0.1   localhost
    10.0.0.30   apache 
    10.0.0.30   meteor
    

    Теперь (по крайней мере на моей машине) url http://apache / открывает сайт, обслуживаемый Apache и http://meteor / открывает приложение Meteor, работающее на порту 3000.