Перейти к содержимому
Гайды 7 мин чтения 2 просмотров

Privoxy

Privoxy – это фильтрующий прокси, повышающий приватность в интернете. Узнайте, как он блокирует рекламу, трекеры и нежелательный контент для безопасного веб-серфинга.

Безопасность

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

Что такое Privoxy?

Privoxy функционирует как промежуточный прокси, обрабатывающий HTTP и HTTPS трафик между клиентом (браузером или другим приложением) и целевым веб-сервером. Его основное назначение — не ускорение доступа через кэширование, а активная модификация и фильтрация данных для защиты конфиденциальности. Он может блокировать рекламу, веб-трекеры, управлять файлами cookie, изменять или скрывать HTTP-заголовки (например, Referer, User-Agent, Accept-Language), а также выполнять другие манипуляции с веб-трафиком согласно настроенным правилам.

Privoxy не является анонимизирующим прокси сам по себе, но он значительно улучшает приватность, предоставляя тонкий контроль над информацией, передаваемой веб-сайтам. Часто его используют в связке с другими прокси-серверами (например, SOCKS5 или HTTP-прокси с изменением IP-адреса) для достижения более высокого уровня анонимности и безопасности.

Ключевые возможности Privoxy

  • Фильтрация контента: Блокировка рекламы, баннеров, всплывающих окон, веб-трекеров, скриптов аналитики и другого нежелательного содержимого.
  • Модификация HTTP-заголовков:
    • Скрытие или подмена заголовка Referer, предотвращая отслеживание переходов.
    • Изменение заголовка User-Agent для маскировки типа браузера или операционной системы.
    • Управление заголовком Accept-Language.
    • Добавление или удаление произвольных заголовков.
  • Управление файлами cookie: Блокировка, перенаправление или изменение файлов cookie для предотвращения отслеживания.
  • Гибкие правила фильтрации: Поддержка регулярных выражений и условных правил, позволяющих применять фильтры на основе URL, доменов, заголовков и других параметров.
  • Цепочка прокси: Возможность перенаправлять трафик на вышестоящие прокси-серверы (SOCKS5, HTTP), что позволяет комбинировать функциональность Privoxy с другими решениями для обхода геоблокировок или изменения IP-адреса.
  • Легковесность и низкое потребление ресурсов: Privoxy разработан быть эффективным и может работать на устройствах с ограниченными ресурсами.
  • Поддержка HTTPS: Фильтрация HTTPS-трафика через SNI (Server Name Indication) и, при определенных условиях, с использованием MITM-подхода (требует установки корневого сертификата на клиенте).

Принцип работы Privoxy

Клиентское приложение (например, веб-браузер) настраивается на использование Privoxy как HTTP-прокси. Когда клиент отправляет запрос, Privoxy перехватывает его, применяет к нему набор предопределенных и пользовательских правил фильтрации и модификации. После обработки запрос либо отправляется напрямую к целевому веб-серверу, либо перенаправляется на вышестоящий прокси (если настроена цепочка). Ответ от веб-сервера также проходит через Privoxy, где могут быть применены обратные фильтры (например, для удаления скриптов отслеживания из HTML-кода).

Privoxy не кэширует данные, что означает, что каждый запрос обрабатывается в реальном времени, обеспечивая актуальность информации и минимизируя задержки, связанные с кэшированием.

Установка и базовая конфигурация

Установка Privoxy обычно выполняется через менеджер пакетов операционной системы.

Пример установки:

  • Debian/Ubuntu:
    bash sudo apt update sudo apt install privoxy
  • CentOS/RHEL:
    bash sudo yum install privoxy
  • macOS (с Homebrew):
    bash brew install privoxy

Основной файл конфигурации Privoxy — config. Его расположение может варьироваться:
* Linux: /etc/privoxy/config
* macOS (Homebrew): /usr/local/etc/privoxy/config

Базовая настройка config файла:

  1. Адрес прослушивания: Определяет IP-адрес и порт, на котором Privoxy будет принимать соединения от клиентов.
    listen-address 127.0.0.1:8118 # listen-address [::1]:8118 # Для IPv6 # listen-address 192.168.1.100:8118 # Для прослушивания на конкретном сетевом интерфейсе
    Рекомендуется использовать 127.0.0.1:8118 для локального использования или конкретный IP-адрес интерфейса, если Privoxy должен быть доступен из локальной сети.

  2. Перенаправление на вышестоящий прокси (опционально): Если вы используете Privoxy в цепочке с другим прокси, например, SOCKS5-прокси вашего провайдера.
    # forward-socks5 / 127.0.0.1:9050 . # Пример для Tor SOCKS5 прокси # forward / 192.168.1.1:8080 # Пример для HTTP-прокси
    Синтаксис: forward-socks5 [протокол] [адрес_прокси]:[порт_прокси] .
    [протокол] может быть / (для всего трафика), или конкретный протокол (.http, .https). Точка в конце (.) обязательна.

  3. Файлы действий (actions files): Privoxy использует файлы действий для определения правил фильтрации. По умолчанию включены несколько файлов.
    actionsfile default.action actionsfile user.action # Пользовательские правила

После изменения файла конфигурации необходимо перезапустить Privoxy.

sudo systemctl restart privoxy # Для systemd-систем

Настройка фильтрации и пользовательских правил

Privoxy использует систему правил, определенных в файлах действий. Эти правила могут быть глобальными или применяться к конкретным доменам/URL.

Структура файла действий

Каждое правило состоит из трех частей:
1. Действие: Что Privoxy должен сделать (например, +block, -hide-referer, +set-cookie-fwd-spoof).
2. Тип объекта: К чему применяется действие (например, { +block }, { -filter }).
3. Цель: К каким URL или шаблонам URL применяется действие.

Пример user.action:

# Блокировка конкретного домена
{ +block }
.example.com
.tracking-site.net

# Скрытие заголовка Referer для всех сайтов
{ -hide-referer }
/

# Подмена User-Agent для конкретного сайта
{ +user-agent{Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36} }
.specific-site.com

# Включение фильтрации изображений для всех сайтов, кроме исключений
{ +set-image-blocker }
/
{ -set-image-blocker }
.trusted-site.com

Типы действий (фрагменты)

Примеры часто используемых действий:

  • +block: Блокировать запрос.
  • +hide-referer: Скрыть или подменить заголовок Referer.
  • +deanimate-gifs: Превратить анимированные GIF в статичные изображения.
  • +filter{TEXT_FILTER}: Применить текстовый фильтр к содержимому (например, для удаления скриптов).
  • +set-cookie-fwd-spoof: Подменить или удалить некоторые куки при отправке на сервер.
  • +set-image-blocker: Блокировать изображения, которые соответствуют предопределенным шаблонам.
  • +add-header{Header-Name: Value}: Добавить произвольный заголовок.
  • +del-header{Header-Name}: Удалить заголовок.

Подробный список всех доступных действий и фильтров находится в документации Privoxy, а также в файлах default.action и match-all.action.

Цепочка Privoxy с другими прокси

Одной из мощных возможностей Privoxy является его способность работать в цепочке с другими прокси-серверами. Это позволяет объединять функции фильтрации Privoxy с возможностями анонимизации или обхода блокировок, предоставляемыми другими прокси.

Пример: Privoxy + SOCKS5 прокси

Для использования Privoxy с SOCKS5 прокси (например, от вашего провайдера прокси-сервисов):

В файле config добавьте или измените директиву forward-socks5:

listen-address  127.0.0.1:8118
# Forward all traffic through a SOCKS5 proxy
forward-socks5 / 192.0.2.100:1080 .
# Если SOCKS5 прокси требует аутентификации:
# forward-socks5-user / 192.0.2.100:1080 user:password .

В данном примере:
* 127.0.0.1:8118 — адрес, на котором Privoxy будет прослушивать запросы от вашего клиента.
* 192.0.2.100:1080 — IP-адрес и порт вашего SOCKS5-прокси.
* / — означает, что весь трафик будет перенаправляться.
* . — обязательный символ, завершающий директиву.

Схема работы:
1. Клиент (браузер) отправляет запрос на 127.0.0.1:8118 (Privoxy).
2. Privoxy обрабатывает запрос (фильтрация, модификация заголовков).
3. Privoxy перенаправляет обработанный запрос на 192.0.2.100:1080 (SOCKS5 прокси).
4. SOCKS5 прокси отправляет запрос в интернет, используя свой IP-адрес.
5. Ответ возвращается через SOCKS5 прокси, затем через Privoxy (где может быть применена обратная фильтрация) и, наконец, клиенту.

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

Сравнение Privoxy с другими решениями

Характеристика Privoxy Браузерный Ad Blocker (uBlock Origin, Adblock Plus) VPN Squid (HTTP/HTTPS кэширующий прокси)
Основная цель Фильтрация контента, приватность, модификация заголовков Блокировка рекламы/трекеров в браузере Шифрование трафика, изменение IP, обход цензуры Кэширование, ускорение, контроль доступа
Уровень работы Сетевой (прокси-сервер) Браузерное расширение Сетевой (туннелирование) Сетевой (прокси-сервер)
Защита конфиденциальности Высокая (контроль заголовков, куки, трекеров) Средняя (только в браузере) Высокая (скрытие IP, шифрование) Низкая (основная цель не приватность)
Блокировка рекламы Эффективная, на уровне сети Эффективная, на уровне браузера Нет (только если VPN провайдер предлагает) Нет (только если настроены правила)
Изменение IP-адреса Нет (только через цепочку с другим прокси) Нет Да Нет (только если сам Squid является выходной точкой)
Шифрование трафика Нет (только если вышестоящий прокси шифрует) Нет Да Нет
Применимость Любое приложение, поддерживающее прокси Только веб-браузеры Все приложения через туннель Любое приложение, поддерживающее прокси
Сложность настройки Средняя (файл config, actionsfile) Низкая (установка расширения) Низкая (установка клиента) Высокая (множество опций)

Ограничения Privoxy

  • Только HTTP/HTTPS: Privoxy обрабатывает только HTTP и HTTPS трафик. Он не может фильтровать другие протоколы, такие как FTP, SMTP или произвольный TCP/UDP трафик. Для таких целей требуется более универсальный прокси или VPN.
  • Производительность: Хотя Privoxy легковесен, интенсивная фильтрация и обработка регулярных выражений могут вносить небольшую задержку, особенно на высоконагруженных системах или при очень сложных правилах.
  • Настройка клиента: Каждое клиентское приложение должно быть явно настроено на использование Privoxy как прокси. Это может быть неудобно для большого количества приложений или устройств.
  • HTTPS MITM: Для глубокой фильтрации HTTPS-трафика (например, модификации содержимого) Privoxy потребуется выполнять MITM (Man-in-the-Middle) атаку, что требует установки корневого сертификата Privoxy на клиентских устройствах. Без этого Privoxy может фильтровать HTTPS только на основе SNI (Server Name Indication) и заголовков CONNECT.

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

Обновлено: 04.03.2026
Назад к категории

Попробуйте наши прокси

20,000+ прокси в 100+ странах мира