Назад | Перейти на главную страницу

не могу подключиться к моему серверу nginx с удаленного компьютера

Думал, что это проблема iptables .. но вроде нет. Я действительно понятия не имею об этой ситуации.

Я получаю серверный хостинг (CentOS). Я установил Nginx + Django, и nginx использует порт 8080. К серверу подключен домен.

Когда я выполнил "wget ​​[домен]: 8080 / [имя приложения] /" на сервере, это сработало. Конечно, "wget ​​127.0.0.1:8080/[app name] /" не имеет проблем. (wget [ip-адрес сервера]: 8080 / [имя приложения] / либо)

Однако с других компьютеров не удалось подключиться. (сообщение говорит, что нет маршрута)

Я проверил настройки своего брандмауэра. Я выполнил эти команды.

 iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
 iptables -I OUTPUT -p tcp --sport 8080 -j ACCEPT
 iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 /etc/init.d/iptables restart

Я не совсем понимаю все варианты команд, и я думаю, что были бесполезные команды, но я просто перепробовал все настройки iptables из Google.

Но я все еще не могу подключиться к своему серверу. Что мне следует проверить в первую очередь?

Я не знаю, что это важно, но добавлю в этот пост. На 80 порте работает сервер apache. Работает нормально, могу подключиться к apache с других компьютеров. Есть проблема с подключением БД (PHP к MySQL), но я думаю, что это просто ошибка кодирования PHP.

прошу прощения за мой низкий уровень английского. Я не носитель английского языка .. но я попытался объяснить, насколько это возможно. Спасибо, что прочитали этот вопрос.

Если вы выполнили последовательность написанных вами команд, я думаю, что правила не применялись, потому что вы перезапустили iptables без сохранения новых настроек.

Попробуйте добавить следующее правило в файл iptables / etc / sysconfig / iptables (убедитесь, что для порта 8080 нет других правил):

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

или с помощью следующих команд:

 iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 iptables-save

Перезагрузите iptables:

/etc/init.d/iptables restart

Теперь вы должны увидеть правило, выполняющее эту команду:

root@centos01 sysconfig]# iptables -L -n | grep 8080
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:8080 

Попробуйте подключиться с удаленных хостов

выключите прошивку, очистите все правила и повторите попытку удаленного подключения

  • если вы можете подключиться -> настройте свой брандмауэр
  • если вы не можете подключиться -> исправьте свою маршрутизацию

вы можете увидеть чек с tcpdump port 8080 на вашем сервере, если прибывают пакеты.