Что такое reverse proxy и зачем он нужен
Простое объяснение схемы, где внешний веб-сервер принимает запросы и передаёт их внутреннему приложению.
Базовая схема
Reverse proxy принимает запросы от клиента и пересылает их внутреннему сервису. Для пользователя это выглядит как обычный сайт.
Внутреннее приложение при этом может слушать только localhost и не быть напрямую доступным из интернета.
Зачем это удобно
Через reverse proxy удобно централизовать TLS, логи, сжатие, заголовки безопасности и ограничения доступа.
Также можно держать несколько внутренних сервисов на разных локальных портах, а снаружи публиковать их через понятные домены и пути.
Где быть внимательным
Нужно правильно передавать заголовки Host, X-Forwarded-For и X-Forwarded-Proto, если внутреннее приложение на них опирается.
Также важно не публиковать случайно административные пути и не оставлять тестовые сервисы открытыми для всех.
Практическая польза
Для небольших серверов reverse proxy часто становится центральной точкой управления web-доступом.
Главное — держать конфигурацию понятной и документировать, какой внешний адрес ведёт к какому внутреннему сервису.