Реверсивный прокси-сервер
Что такое реверсивный прокси-сервер и для чего он нужен
Говоря о серверах, мы часто слышим термин реверсивный прокси-сервер (reverse proxy). В этой статье мы разберем - что такое реверсивный прокси-сервер и чем он может быть полезен.
Для начала, поговорим о прокси-сервере (proxy).
Прокси-сервер - это сервер, который получает соединения от клиентов, активно настроивших соответствующий прокси-сервер в сетевых настройках своего оборудования. В таких случаях при подключении клиента к серверу все запросы всегда проходят через указанный в настройках прокси-сервер.
Такая технология имеет несколько полезных применений. Различные компании и организации используют прокси-серверы для фильтрации соединений, обеспечения безопасности подключений и логирования трафика. Без использования прокси-сервера клиенты не могут подключиться к внешней сети. Кроме того, прокси-серверы часто бывают полезны для обеспечения конфиденциальности подключений и обхода ограничений, установленных на уровне правительств разных стран.
В отличие от простого прокси-сервера реверсивный прокси-сервер (reverse proxy) настраивается на уровне серверного оборудования. Реверсивный прокси-сервер абсолютно прозрачен для пользователей, которые обычно даже не догадываются о его существовании. Тем не менее, реверсивный прокси-сервер выполняет очень важную работу, фильтруя запросы и отправляя их на обработку соответствующим сервисам.
Популярные примеры:
- использование Nginx в качестве реверсивного прокси-сервера,
- использование различных служб, написанных на Node.js, слушающих определенные порты, недоступные извне.
Nginx обычно является основным обработчиком запросов, перенаправляющим соответствующие запросы: например, связывая определенные каталоги или URL-адреса с конкретными службами.
Так же, можно встретиться с несколькими различными Node.js-приложениями, выполняющими совершенно различные задачи. При это пользователи соответствующих сервисов даже не догадываются о наличии таких служб.
Помимо функции маршрутизации, из-за которой реверсивные прокси-серверы так популярны у веб-разработчиков, реверсивные прокси-серверы могут выполнять и другие задачи, в том числе:
- осуществлять фильтрацию трафика,
- защищать от атак, выступая в качестве брандмауэра,
- внедрять кеширование,
- участвовать в настройках SSL,
- участвовать в распределении нагрузки,
- обеспечивать A/B-тестирование.
и это далеко не все возможности реверсивных прокси-серверов.
Спасибо за внимание.