3

Я пытаюсь сделать мой домашний сервер доступным для всей сети. Я установил Nginx на моем компьютере с 64-разрядной ОС Linux Fedora 15, и он работает с localhost, но он не работает в сети и не позволяет другим компьютерам в сети получать к нему доступ через IP-адрес. Это продолжает возвращаться с:

Не может подключиться

У меня есть переадресация портов. Я даже пробовал разные порты, но все они, кажется, заблокированы. Что может быть не так? У меня есть сетевой маршрутизатор.

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
ACCEPT     icmp --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-    prohibited 

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-    prohibited 

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

4 ответа4

5

Стандартная конфигурация брандмауэра Fedora блокирует порт 80. Самый простой способ разблокировать его - использовать инструмент system-config-firewall , предоставляемый по умолчанию при установке Fedora.

Чтобы использовать его в графической среде, найдите параметр « Брандмауэр» в меню приложений на рабочем столе (обычно это категория « Администрирование ») или запустите system-config-firewall через терминал или нажав ALT+F2. Затем установите флажок рядом с WWW (HTTP) 80/tcp:

system-config-firewall с выделенным WWW

Если вам нужен HTTPS/SSL, также выберите Secure WWW (HTTPS) 443/tcp. Наконец, нажмите Применить, чтобы изменения вступили в силу.

Чтобы использовать его из консоли, запустите system-config-firewall-tui . Нажимайте клавишу TAB, пока не будет выделен пункт « Customize и нажмите « Ввод» . Нажимайте стрелку вниз, пока не дойдете до WWW (HTTPD) и нажмите Enter, чтобы выбрать ее:

system-config-firewall-tui с выделенным WWW

(Не забывайте HTTPS, если вам это тоже нужно.) Теперь выберите « Close , а затем « OK чтобы сохранить новую конфигурацию брандмауэра.

1

Пожалуйста, добавьте вывод iptables -L с компьютера, на котором работает nginx, к вашему вопросу.

Как и в комментариях выше, похоже, что ваш сервер Linux блокирует порт 80 от нелокальных подключений.

Кроме того, вы установили nginx для прослушивания на всех интерфейсах, а не только 127.0.0.1? Это будет в конфигурационном файле nginx (например, listen 80; или аналогичный).

0
  1. Убедитесь, что другое устройство может получить доступ к вашему серверу (ping).
  2. Убедитесь, что другое устройство может получить доступ к другой службе на вашем сервере (ssh).
  3. Убедитесь, что на вашем сервере нет локального брандмауэра (iptables -L).
  4. Убедитесь, что ваш веб-сервер прослушивает интерфейс 172.16.0.15 или * (netstat -al).
  5. Убедитесь, что ваш веб-сервер позволяет клиенту подключаться в своем файле конфигурации.
  6. С вашего другого устройства выполните telnet 172.16.0.15 80 чтобы узнать, есть ли у вас тайм-аут соединения, соединение отклонено или соединение закрыто (1-й случай - это брандмауэр, 2-й - ваш сервер не прослушивает или не работает, 3-й - быть проблема конфигурации веб-сервера).
0

Попробуйте localtunnel. Аналогичные услуги, за определенную плату, включают showoff.io и Pagekite.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .