← Privacy Proxy / privacy-proxy / concepts
Принцип работы Privacy Proxy
Privacy Proxy использует набор протоколов MASQUE для создания зашифрованных туннелей между клиентами и серверами назначения. На этой странице объясняется механика протокола и то, как обеспечивается конфиденциальность.
Схема прохождения трафика
┌──────────┐ 1. Connect + Auth ┌──────────┐ 4. Connect ┌─────────────┐
│ │ ──────────────────────────▶ │ │ ────────────────────▶ │ │
│ Client │ 2. CONNECT request │ Privacy │ (Egress IP) │ Destination │
│ │ ──────────────────────────▶ │ Proxy │ │ Server │
│ │ │ │ ◀──────────────────── │ │
│ │ 3. 200 OK │ │ 5. Connected │ │
│ │ ◀────────────────────────── │ │ │ │
│ │ │ │ │ │
│ │ ◀───── 6. Encrypted data tunnel ─────▶ ◀─────────────────────▶│ │
└──────────┘ └──────────┘ └─────────────┘
│◀──── Client IP hidden ────▶│◀──── Cloudflare Egress IP visible ──────────▶│- Клиент устанавливает соединение HTTP/2 или HTTP/3 с Privacy Proxy и передает учетные данные (PSK или токен Privacy Pass) в заголовке
Proxy-Authorizationзаголовок. - Клиент отправляет запрос CONNECT с указанием имени хоста и порта назначения.
- Прокси отвечает
200 OKчтобы убедиться, что туннель готов. - Прокси открывает соединение с узлом назначения, используя исходящий IP-адрес, выбранный на основе геолокации клиента.
- Клиент отправляет зашифрованные данные через туннель. Прокси пересылает байты без проверки их содержимого.
На протяжении всего процесса прокси узнает адрес назначения, но не содержимое трафика. Узел назначения узнает исходящий IP-адрес, но не реальный IP-адрес клиента.
Протоколы MASQUE
MASQUE ↗ (Multiplexed Application Substrate over QUIC Encryption) определяет методы проксирования трафика через HTTP. Privacy Proxy поддерживает два метода MASQUE:
| Метод | Транспорт | Сценарий использования |
|---|---|---|
| HTTP CONNECT | TCP | Обычный трафик HTTPS |
| CONNECT-UDP | UDP | Трафик на основе QUIC, приложения реального времени |
Оба метода создают зашифрованные туннели, через которые прокси пересылает трафик, не проверяя его содержимое. Прокси видит только хост и порт назначения, но не сами запросы, пути или передаваемые данные.
Privacy Proxy принимает соединения по HTTP/2 (TLS поверх TCP) и HTTP/3 (QUIC), выбирая подходящий протокол в зависимости от возможностей клиента.
Подробнее о том, как работают эти протоколы, см. в нашей запись в блоге ↗.
Разделение конфиденциальности
Privacy Proxy создает границу конфиденциальности между личностью пользователя и его действиями:
| Информация | Кому это известно |
|---|---|
| Идентификация пользователя (IP-адрес, аккаунт) | Сервис аутентификации, прокси первого хопа (при использовании развёртывания с двумя хопами) |
| Сервер назначения | Privacy Proxy, сервер назначения |
| Запросить содержимое | Только клиент и сервер назначения |
Прокси аутентифицирует пользователей, чтобы убедиться в наличии у них прав на использование сервиса, но аутентификация выполняется отдельно от проксирования. После аутентификации прокси пересылает трафик, не связывая отдельные запросы с конкретными пользователями.
Дополнительные материалы
- Введение в прокси ↗ - Подробный технический разбор протоколов HTTP CONNECT и MASQUE.
- MASQUE Working Group ↗ - Рабочая группа IETF, разрабатывающая стандарты протокола проксирования.
- RFC 9298 ↗ - Спецификация CONNECT-UDP для проксирования UDP через HTTP.