Думал, что это проблема 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
на вашем сервере, если прибывают пакеты.