Перенаправление портов
Способов сделать это - тьма тьмущая:
- Настроить firewall - iptables, ufw, firewalld,… тысячи их! Обычно инструкция не всегда простая, надо курнуть манов.
- Если дело происходит на маршрутизаторе - то обычно есть встроенные средства (и GUI тоже).
- Haproxy и прочие решения для балансировки нагрузки. Сейчас такое даже в Spring есть встроенное.
- nginx, apache и прочие продвинутые веб-сервера.
- ssh. Например, так:
ssh -L 80:target_server:80 gateway_server
. Чего он только не умеет… Кстати, в одном из проектов этот способ был весьма удобен для отладки взаимодействия с базой, к которой не было прямого доступа. - Консольные утилиты. Например, так:
socat TCP-LISTEN:80,fork TCP:target_server:80
. - В каком-нибудь docker’е это задается на уровне конфига. В kubernetes команда
port-forward
делает проброс порта к поду. - Ngrok. Вы ставите себе утилиту на комп и она вытаскивает наружу веб-сервер с localhost. Типа чтобы демки сайтов заказчику показывать. Звучит как эксплоит, да и исходников нет… -_-
И наверняка этим список не исчерпывается.