Я запускаю сервер Django на компьютере RedHat. Я могу удаленно подключиться к компьютеру через ssh-соединение, поэтому я предполагаю, что проблем с брандмауэром нет. Однако, когда я выполняю следующую команду (которая якобы должна сделать сервер общедоступным)
python3 manage.py runserver 0.0.0.0:8080
Сервер недоступен с любого другого компьютера. Локально (с самой машины RedHat) я вижу, что сервер работает.
Я новичок в RedHat, поэтому, если мне нужно предоставить какую-либо другую информацию, дайте мне знать.
До сих пор я обнаружил, что могу сделать свой сервер доступным с помощью localtunnel
, однако, поскольку он меняет URL-адрес, я предпочитаю решать проблему другим способом.
ОБНОВЛЕНИЕ: проблема не имеет ничего общего с Django. Смущало то, что сервер работал без проблем и стал недоступен без какой-либо конкретной причины.
В любом случае, мне нужно было добавить некоторые конфигурации (найденные в здесь), чтобы сделать порт: 8080 доступный.
netstat -tanp | grep LISTEN
, чтобы узнать, прослушивает ли порт сеть, иiptables -L
, чтобы убедиться, что правила брандмауэра не запрещают это. - person Davor Lucic   schedule 12.06.2016dpt:ssh ctstate NEW
, которое разрешает новые соединения ssh, аACCEPT all -- anywhere anywhere
вверху, вероятно, для интерфейсаlo
, поэтому я почти уверен, что оно блокирует входящее соединение с вашим портом Django. Можете ли вы запуститьiptables -vL
, это очистит правило ПРИНЯТЬ все, так как он покажет интерфейс. К сожалению, я не уверен, как лучше всего открыть порт в брандмауэре. - person Davor Lucic   schedule 12.06.2016firewall-cmd --zone=public --add-port=8080/tcp
я предполагаю что-то вроде этого, но отнеситесь к этому с недоверием. Я не системный администратор RH. - person Davor Lucic   schedule 12.06.2016/usr/bin
(как root) и выполните: (2)firewall-cmd --zone=public --add-port=8080/tcp
- person Matin Kh   schedule 16.06.2016