Я настроил privoxy на моем маршрутизаторе с OpenWRT. Прокси, кажется, работает хорошо, так как я могу путешествовать с моим трафиком, проходящим через него.
Я попытался установить минимальный пример блокировки только с одним доменом в правиле блокировки:
{+block {Too bad my friend...No facebook for you}}
www.facebook.com
Это правило можно найти в файле tinyblock.action
, который я включил в мою конфигурацию в /etc/config/privoxy
. enable-blocks
Опция установлена 1
. Однако, когда я пытаюсь получить доступ к Facebook, прокси ничего не блокирует ...
Есть идеи по этому поводу?
Как ответил @MariusMatutiae, существует проблема с фильтрацией https. Я провел небольшое исследование, и документация privoxy прямо говорит:
4,15. Как Privoxy может фильтровать защищенные (HTTPS) URL-адреса?
Поскольку безопасные HTTP-соединения являются зашифрованными сеансами SSL между вашим браузером и защищенным сайтом и предназначены для обеспечения надежной защиты, Privoxy мало что может сделать, кроме как передать необработанные бессмысленные данные с одного конца на другой без обработки.
Единственным исключением является блокировка по шаблонам хоста, так как клиент должен сообщить Privoxy имя удаленного сервера, чтобы Privoxy мог установить соединение. Если это имя соответствует шаблону только для хоста, соединение будет заблокировано.
Что касается блокировки рекламы, то это меньшее ограничение, чем может показаться, поскольку источники рекламы часто идентифицируются по имени хоста, и часто баннеры, размещаемые на зашифрованной странице, тем не менее незашифрованы по соображениям эффективности, что обуславливает они в полную силу блокировки рекламы Privoxy.
«Cookie-файлы содержимого» (те, которые встроены в фактический контент страницы HTML или JS, см. Фильтр {content-cookies}), в транзакции SSL невозможно заблокировать при этих условиях. К счастью, это, кажется, не очень распространенный сценарий, так как большинство куки приходят традиционными способами.
Но, во всяком случае, я никогда не показываю Facebook, появляющийся в моих журналах ...
ERR_TUNNEL_CONNECTION_FAILED
от chromeОтветы:
Конфигурацию прокси нужно изменить, чтобы включить HTTPS .... в браузере, обычно для HTTPS прокси есть отдельная настройка, и если вы используете прозрачный прокси, вам понадобится дополнительное правило перенаправления iptables для TCP-порта 443.
Если вы не выполните этот шаг настройки, ваш браузер будет подключаться напрямую к HTTPS-серверу, а не к Privoxy.
Например, вот настройка в Firefox:
Интересно, означает ли «SSL-прокси», что TLS не включен? Конечно, нет, так как я не думаю, что браузер может знать, является ли конкретный сайт SSL или TLS, пока он не подключится.
источник