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

Доступ к портам на localhost с внешнего IP

В настоящее время я настраиваю веб-сервер только для личного использования и тестирования. Прямо сейчас я пытаюсь запустить некоторые приложения Python, но когда я их запускаю, они запускаются со скоростью 127.0.0.1:5000. Можно ли как-нибудь переслать это, чтобы сделать его доступным где-нибудь еще?

Поскольку пересылка еще не была рассмотрена ни в одном из предыдущих ответов: вы можете легко перенаправлять локальные порты с помощью SSH:

    ssh user@your.testing.web.server -L 5000:127.0.0.1:5000

Это перенаправит весь TCP-трафик с порта 5000 вашего локального компьютера на порт 5000, связанный с локальным хостом. ваш.testing.web.server. Прелесть этой настройки в том, что она разрешает доступ только тем пользователям, которые могут пройти аутентификацию с помощью sshd а протокол SSH будет шифровать весь ваш трафик.

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

Вам нужно будет заставить веб-сервер прослушивать все интерфейсы / сетевые интерфейсы. В противном случае он просто слушает localhost (по умолчанию 127.0.0.10.

Вы можете предоставить более подробную информацию о вашей среде server / dev для более конкретной помощи.

Для начала вам понадобится интерфейс и IP-адрес LAN. Как только они у вас появятся, вы сможете настроить эту сеть в своем блоке разработчика, а затем перезапустить свои приложения на Python. Обычно они прослушивают все интерфейсы, если не настроено иное. Я не эксперт по питону.

Подтвердите с помощью netstat или lsof.

Затем вы сможете подключиться с другого хоста LAN в качестве клиента, введя IP-адрес LAN сверху в качестве пункта назначения.

Помимо этого, вам понадобится какой-то способ подключения к WAN и сделать некоторые NAT, чтобы разрешить соединения из Интернета в целом.

И последнее замечание: проверьте свой брандмауэр (и). Возможно, у вас есть слушатель, но брандмауэр не разрешит порт 5000, если вы не настроите его для этого.

Спасибо всем за помощь, но я нашел способ решить эту проблему. Я понял, что мне не нужно перенаправлять локальный хост, просто публично запустите приложение python / flask. Поэтому мне просто нужно было добавить host = '0.0.0.0' в app.run, и он заработал.