eFusion 21 августа 2020

🔄 Как работает прокси-сервер: максимально простое объяснение

Объясняем простым языком, что собой представляют прокси-серверы, какие они бывают и в чем разница между прокси и VPN.

Что такое прокси-сервер

Прокси-сервер, или просто прокси – это компьютер, выполняющий роль посредника между пользователем и целевым сервером. Сначала клиент подключается к прокси-серверу и запрашивает необходимый ресурс, расположенный на другом сервере. Например, почту или html-страницу. Затем прокси либо подключается к указанному серверу и получает у него ресурс, либо возвращает ресурс из собственного кэша.

Компании используют прокси для обеспечения безопасности, повышения производительности сети, доступа к «удаленным» ресурсам. Частные лица применяют прокси для анонимизации трафика или обхода ограничений доступа.

Процесс работы с прокси
Процесс работы с прокси

Когда речь заходит о прокси, обычно подразумевается прямой прокси-сервер. Представим, что мы делаем запрос, например, пытаемся перейти на GitHub – вводим URL, нажимаем Enter. Прокси не подключает нас к GitHub напрямую, а перехватывает соединение и обновляет содержание запроса, удаляя входящий IP и изменяя заголовок. В результате GitHub считает, что запрос пришел с другого компьютера, и отправляет нужные данные не нам, а прокси-серверу. Прокси принимает информацию GitHub, проверяет и отправляет данные нашему компьютеру.

Как применяются прокси-серверы

Распространенные варианты использования прокси:

  • повышение безопасности сети с помощью шифрования запросов;
  • предотвращение перехвата конфиденциальной информации;
  • блокировка вредоносных сайтов и рекламы;
  • кэширование сайтов для экономии трафика;
  • контроль использования сетевого канала;
  • блокировка доменов;
  • мониторинг и регистрация веб-запросов;
  • тестирование веб-ресурсов при заходе с различных IP.

Свои варианты вы можете предложить в комментариях к публикации.

Какие бывают типы прокси-серверов

Прозрачный прокси – самый простой вид, в браузере даже не прописываются настройки прокси-сервера. Прозрачный прокси просто перехватывает идущий HTTP-трафик. У пользователя создается ощущение, что он работает в интернете без прокси-сервера. Пример использования: фильтрация развлекательных веб-сайтов в сети образовательных учреждений.

Анонимный прокси никогда не передают IP-адрес клиента на целевой ресурс. Хороший вариант, если вы не хотите, чтобы таргетированная реклама следила за вами или вашим местоположением. Прокси высокой анонимности не передает ни IP-адрес, ни личные данные и даже не идентифицирует себя как прокси. В процессе работы IP-адрес периодически меняется – это позволяет обеспечить максимальную конфиденциальность. Браузер TOR использует этот тип прокси-сервера. Поскольку IP меняется, чрезвычайно трудно отследить источник запросов.

Искажающий (distorting) прокси работает аналогично анонимному, но передает заведомо ложный IP-адрес. Такой подход используется, чтобы обойти локальные ограничения доступа к контенту.

Резидентный (residential) прокси используют реальные (белые, статические) IP-адреса. Для серверов они выглядят как обычные клиенты. Противоположность резидентного data center прокси, имеющие IP-адреса, не привязанные к реальному устройству. Облачные провайдеры имеют высокоскоростные интернет-соединения. Однако если на одном сервере размещено сотни прокси-серверов, все они будут иметь одинаковые IP-адреса.

Публичный (public) прокси – самый небезопасный и ненадежный. Могут «отвалиться» в любой момент, уязвимы для хакерских атак. Найти списки бесплатных публичных прокси не так уж сложно, но найти хороший публичный прокси – почти невозможно.

Частный (private) прокси может использоваться единовременно только одним клиентом, а перед использованием происходит проверка подлинности. Это более надежная версия публичного прокси. Частный прокси-сервер может быть прозрачным или иметь высокую анонимность, подобно вышеописанным собратьям, таким как резидентный или data center прокси.

Общий (shared) прокси один из самых дешевых видов прокси-серверов. Стоимость аренды сервера разделяется между клиентами, которые получают к нему одновременный доступ.

Ротационный (rotating) прокси для нового клиента выделяет новый IP-адрес. То есть один и тот же IP не используется более одного раза. Ротационный сервер обеспечивает высокий уровень безопасности и конфиденциальности.

SSL-прокси работают по принципу HTTPS-запросов запросы между клиентом и сервером защищены шифрованием.

Обратный (reverse) прокси предлагает совершенно другой подход к проксированию. Здесь скрывается не IP-адрес клиента, а IP-адрес сервера, на который отправляется запрос. Инструмент используется, чтобы контролировать доступ к серверу и ограничивать неконтролируемый доступ к базе данных, а также для снижения трафика за счет кэширования информации.

Где искать прокси

Большинство сервисов прокси предлагают комбинации вышеописанных типов. Можно обнаружить, что резидентные, высоко анонимные и SSL-прокси объединены в один сервис. Список сервисов, на которых можно выбрать подходящий вариант:

В чем разница между прокси и VPN

Главное отличие прокси от VPN заключается в том, что VPN защищает весь сетевой трафик, а прокси – только интернет-трафик. Прокси передает запросы, действуя как посредник, а VPN туннелирует всю сетевую активность до уровня операционной системы.

Компании используют VPN, чтобы дать доступ сотрудникам к корпоративным ресурсам, не беспокоясь о том, что трафик будет перехвачен или задамплен провайдером. Если он получит историю использования, в ней будет видно только то, что вы подключены к VPN. Ничего о трафике узнать нельзя.

Несмотря на все преимущества, у VPN в сравнении с прокси есть недостатки:

  • VPN дороже;
  • соединение обычно происходит медленнее.

Для многих задач уровень безопасности VPN может оказаться избыточным. Если вы просто хотите замаскировать действия в приложении, стоит рассмотреть прокси-сервер.

Как настроить простой прокси-сервер

Создать собственный прокси-сервер проще, чем, кажется. Прокси-сервер может располагаться где угодно, им может стать даже домашний компьютер. На сервере Linux можно установить Squid и задать необходимые настройки. Можно блокировать определенные веб-сайты или требовать аутентификацию, прежде чем клиент подключится к прокси-серверу (пошаговое руководство по настройке Squid).

В Windows и Mac есть возможность создать прокси-сервер с помощью Python и Google App Engine, но придется немного заплатить. Настройка сервера незначительно сложнее, чем в Linux.

Как подключиться к существующему прокси-серверу

Если вы знаете IP-адрес и номер порта прокси, подключиться будет несложно. Нужно зайти в настройки сети, далее в раздел прокси, а после ввести информацию о сервере.

Настройка прокси-сервера в Windows
Настройка прокси-сервера в Windows
Настройка прокси-сервера в Ubuntu
Настройка прокси-сервера в Ubuntu

Заключение

Использование прокси оправдано, если необходимо скрыть или защитить информацию. Выше мы рассмотрели список задач, решаемых с помощью прокси. Как мы увидели, в использовании прокси есть преимущества:

  • безопасность и конфиденциальность данных в интернете;
  • возможность обойти ограничения, связанные с геолокацией;
  • возможность повысить производительность сети;
  • возможность контролировать доступ к сайтам.

Но есть и недостатки:

  • запросы могут возвращаться медленнее, чем при прямом обращении;
  • не все прокси шифруют данные, к выбору прокси нужно относиться внимательно;
  • бесплатные и дешевые прокси могут быть подвергнуты атаке, в результате чего данные могут перехватываться мошенниками;
  • вся информация всегда проходит через третью сторону, которая может управляться кем угодно.

Если вам интересна тема информационной безопасности, в Библиотеке программиста есть множество публикаций на эту тему, например:

Источники

РУБРИКИ В СТАТЬЕ

МЕРОПРИЯТИЯ

Комментарии 0

ВАКАНСИИ

Программист С++
Новосибирск, по итогам собеседования
Senior iOS Developer
Москва, от 250000 RUB до 300000 RUB

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ

BUG