
Я знаю, что существует файл hosts, который позволяет мне блокировать целые домены.
0.0.0.0 blockthissite.net
:: blockthssite.net
Я хотел бы заблокировать определенные элементы на веб-сайте.
Я могу сделать это сегодня с помощью одного из множества инструментов блокировки рекламы, например uBlock Origin. Он будет работать только в том браузере, в котором я установил правило для инструмента блокировки рекламы, и даже в этом случае кто-то может легко обойти правило, отключив расширение.
Есть ли файл hosts или что-то более системное, что я могу сделать, чтобы заблокировать элементы HTML на моем Mac?
Например, я хотел бы заблокировать нижнюю страницу этого популярного сайта во всех браузерах.
www.amazon.com###navFooter
Я хотел бы администрировать это через отдельный компьютер. У меня есть pi hole, но он работает только с доменами и не имеет информации об элементах html. Почему это вызывает беспокойство, я хотел бы последовательно блокировать некоторые элементы html во всех браузерах
решение1
Что ж, решение есть, но оно утомительно и в любом случае может не сработать.
Примечательно, что если вы используете прокси, который может выполнять замену на основе регулярных выражений в html, вы можете это сделать. Мы использовали mod_proxy_html в Apache в ситуации обратного прокси для таких вещей в прошлом. Альтернативное программное обеспечение — Burp от Portswigger — у него есть функция замены регулярных выражений, ее можно ограничить определенными типами контента, она объединяет SSL... Маршрутизация вашего HTTP-трафика через прокси разрешит вашу точку для всех браузеров за ним.
При этом, пожалуйста, обратите внимание:
- производительность падает, так как обработка HTML-строки с помощью регулярного выражения требует ресурсов процессора
- Регулярное выражение должно быть очень «стабильным», чтобы справляться с вариациями HTML для одного и того же контента.
- замена должна быть уверена, что не нарушит окружающий HTML
- для целей SSL прокси-сервер должен объединить SSL-соединение; для этого необходимо настроить браузеры с использованием сертификата «CA», который прокси-сервер использует для создания сертификатов «на лету» (например, как это делает Burp); очевидно, это влечет за собой некоторые проблемы с конфиденциальностью, которые вам следует оценить самостоятельно
Итак, вас предупредили.
решение2
Как уже упоминалось большинством людей, общесистемная блокировка HTML-элементов (во всех браузерах) невозможна без использования прокси-сервера (что вызовет проблемы с производительностью и надежностью, а также проблемы безопасности с веб-сайтами SSL), мой ответ касается второй части вопроса -
Он будет работать только в том браузере, в котором я настроил правило для инструмента блокировки рекламы, и даже в этом случае кто-то может легко обойти правило, отключив расширение.
Многие браузеры позволяют принудительно устанавливать расширение для всех профилей пользователей в операционной системе и для всех профилей, созданных в браузере.
Firefox ESR/Enterprise
(Поскольку вы отметили свой вопрос тегомfirefox
)
- Вы можете следитьэта статья базы знанийдля развертывания определенных расширений для всех пользователей Firefox на ПК.
- Кроме того, вы можете запретить пользователям отключать или удалять это расширение,"
lock
"-ing itпутем обеспечения соблюдения политикс использованием policies.jsonилииспользование групповой политикиесли вы используете Windows.
Google Chrome Enterprise
(Поскольку вы проявили интерес к Chrome вкомментарий)
- Google Chrome Enterprise можно управлятьлибо применяя политики из облака (консоль администратора с G Suite), либо используя локальные инструменты и файлы политик. Если вы хотите вручную задать некоторые политики для некоторых устройств, вам не нужно использовать облачное управление, но вы всегда можете выбрать то, что лучше для вас.
Также, прочитайте больше о применении политик к Chromeздесь. - Ссылаться наэто руководствочтобы ознакомиться со всеми доступными опциями управления расширениями с помощью политик. Например, естьполитикикоторые могут вам помочьпринудительно установитьрасширение(я).
- Вы можете отключить возможность добавления новых профилей пользователей в Chrome с помощьюBrowserAddPersonEnabledполитика.
- Если вы не хотите развертывать Chrome Enterprise на новой системе, вы можете просто добавить политики в существующую систему, где Chrome уже установлен -
- Загрузите пакет Chrome Enterpriseдля Windows (так как он содержит необходимые файлы политики для всех платформ).
- Следуйте доступным инструкциям Google по обеспечению соблюдения политик на вашей платформе.для Windows,для Макаидля линукса.
- Перезапустите Chrome и зайдите на сайт
chrome://policy
, чтобы убедиться, что политика применена.
Хотя эти варианты близки к исходному запросу, это не надежное решение, поскольку пользователи всегда могут установить другой браузер на ваш компьютер или просто использовать свое собственное устройство (телефон или компьютер) через ваше соединение для просмотра веб-сайта, если вы каким-то образом заблокируете установку других браузеров.
Прокси может помочь вам изменить определенную веб-страницу для всех устройств в соединении, но пользователи могут переключиться на свой собственный прокси или VPN или использовать публичный прокси или VPN для просмотра немодифицированного веб-сайта.
решение3
Поскольку большинство соединений в настоящее время являются закрытыми, https
вы не сможете открыть пакет и удалить определенный элемент HTML, если не используете хорошо оснащенный прокси-сервер.
По сути, прокси-серверу придется открыть пакет и удалить элемент html.
Идти сИсточник uBlockдля победы!
решение4
Самым простым решением было бы приобрести блокировщик контента и добавить URL-адреса элементов, подлежащих блокировке, в его черный список.
Примером может служить бесплатное Дополнение uBlock Origin где вы также можете использовать подстановочные знаки в URL-адресах, которые нужно заблокировать. Он поставляется с собственным обширным списком веб-сайтов, которые размещают рекламу и другой контент, который лучше избегать.
Поскольку большинство маршрутизаторов работают на базе Linux, который имеет гораздо более развитый брандмауэр, чем Windows, вы можете получить доступ к Linux на вашем маршрутизаторе или установить на него улучшенную прошивку, такую как DD-WRT, которая обеспечивает полный контроль. Для этого вы можете использовать iptables
инструменты и Netfilter
брандмауэр.
Для получения расширенного брандмауэра для Windows требуется стороннее программное обеспечение. Вот пример: Comodo Free Antivirus с интернет-безопасностью чей брандмауэр принимает URL-адреса с подстановочными знаками. Comodo в основном бесплатный, но за некоторые функции нужно платить. Смотреть статью Выборочно блокировать/разрешать доступ к веб-сайтам пользователям вашего компьютера.