Как заблокировать рекламу на роутере
Мы уже давно пользуемся блокировщиками рекламы, но при этом терпим некоторые неудобства, самое основное из которых — не блокируется реклама в играх на смартфонах. Кроме этого, модуль Adblock, устанавливаемый в Chrome, сильно тормозит загрузку сайтов, а Яндекс Директ и вовсе не блокирует. Недавно Adguard, второй крупнейший сервис по блокировке интернет-рекламы, предложил лёгкое решение от назойливых баннеров — антирекламные DNS серверы.
Суть этой технологии в следующем: реклама вырезается не в момент загрузки web-страниц, проходя через прокси, а в момент обработки DNS-запросов, то есть когда браузер пытается достучаться до сервера с именем вроде an.yandex.ru. Образно говоря, когда интернет-браузер пытается вызвать адрес рекламного блока, сервер Adguard говорит: «вот он я», и выдаёт нули вместо баннеров. Конечно, сама технология намного сложнее, она учитывает дизайн рекламы, чтобы не рушить разметку веб-страниц, но смысл тот же: в отличии от Adblock, антирекламные DNS-серверы Adguard не тратят ресурсы клиентского устройства и работают значительно быстрее.
Преимущества Adguard DNS:
Блокировка работает для всех устройств в домашней сети: для смартфонов, ноутбуков, компьютеров.
Не определяется скриптами на сайтах (вы не увидите просьбу владельцев сайта отключить блокировку рекламы)
Не потребляет ресурсов компьютера/смартфона
Можно заблокировать «сайты для взрослых»
Поддерживается шифрование запросов DNS для более высокой приватности
Недостатки Adguard DNS:
Не блокирует рекламу в роликах на Youtube
Чтобы включить/отключить блокировку, нужно менять сетевые настройки
Иногда на месте рекламных баннеров возникают пустые вставки с ошибкой «не удаётся отобразить страницу».
Модель бизнеса Adblock понятна — они продают рекламным сетям «исключения» из бан-списков. На чём зарабатывает Adguard DNS, не понятно.
Самое главное — Adguard DNS можно использовать вместе с Adblock по принципу двойной обороны. Друг другу эти две технологии не мешают, а скорее даже дополняют, ведь на момент подготовки статьи, Adguard DNS даже умел блокировать Яндекс Директ. Давайте посмотрим, как меняется интернет при использовании блокировщиков рекламы.
Блокировать трекеры рекламы на сетевом уровне сложно, но возможно
Когда вы выходите в интернет или используете приложение, множество компаний спокойно отслеживают каждое ваше действие. Некоторые, такие как Newrelic, достаточно невинны, они отслеживают ошибки пользователей и чтобы быстрее на них реагировать. Но другие, такие как Facebook Audience Network, собирают огромное количество данных как с ваших собственных устройств, так и с устройств в вашей сети.
Блокировка рекламы традиционно была выходом для потребителей, желающих сохранить конфиденциальность своей информации, но она работает только в веб-браузерах. Многие компании теперь отслеживают вас и в нативных приложениях. И удаление вашей учетной записи Facebook не мешает компании отслеживать вас — социальная сеть создает «теневые профили», чтобы собирать данные также и о тех, кто не пользуется ею в Интернете.
Пытаясь защитить свою частную жизнь, я решил, что лучше всего использовать ядерный метод: блокировать рекламу и трекеры во всей моей домашней сети.
![]()
Статья переведена при поддержке компании EDISON Software, которая разрабатывает приложения и сайты, а также инвестирует в стартапы.
Блокировка рекламы и трекеров на уровне сети защищает любое устройство, подключенное к этой сети. Eero, компания Wi-Fi роутеров, принадлежащая Amazon, предлагает платную услугу для этого, а бесплатные альтернативы, такие как AdGuard Home и Pi-hole, набирают популярность. Большинство из этих инструментов предназначены для работы на Raspberry Pi, доступном компьютере по цене от 35 долларов США, который заменяет стандартный DNS-сервер вашего дома. Когда вы набираете в телефоне доменное имя, например «google.com», оно перенаправляется на блокировщик рекламы до того, как оно достигнет истинного места назначения. Блокировщик рекламы проверяет список рекламных серверов, предоставленный сообществом, и блокирует URL-адреса треккинга, которые обнаруживаются до того, как они начнут загружаться.
Блокировка рекламы на сетевом уровне позволяет вам контролировать службы, к которым ваши устройства незаметно обращаются в фоновом режиме, что особенно важно для нативных приложений на вашем телефоне, недоступных для блокировщиков рекламы на основе браузера. Это также распространяется на устройства, такие как Samsung Smart TV, которые показывают встроенную рекламу на домашнем экране. Рекламу обычно нельзя отключить, но с блокировкой рекламы на сетевом уровне она полностью удаляется, потому что телевизор просто не может попасть на рекламный сервер.
Я использую AdGuard более года, и разница поразительна: и Twitter, и Instagram постоянно предлагают мне не релевантную рекламу нездоровой пищи, а не обычную целевую рекламу. Совершенно очевидно, что у них нет хороших данных для работы. Более того, веб-сайты, которые я загружаю дома, не имеют баннерной рекламы: серый пробел заполняет пространство, где они должны быть.
Самым большим недостатком сетевого блокировщика рекламы является его настройка. Если у вас есть Raspberry Pi, AdGuard необходимо установить с помощью командной строки, прежде чем он отобразит удобный веб-интерфейс со статистикой и конфигурацией. Затем, как только сервер запущен, вам нужно обновить DNS сервер вашего маршрутизатора с того, на который настроена ваша интернет-компания, на IP адрес вашего Raspberry Pi, чтобы он мог перехватывать запросы независимо от того, какое устройство вы используете.
Поскольку у меня есть опыт работы в области компьютерных наук, у меня не было проблем с этими шагами, но легко предположить, что они могут напугать кого-то, кто не так хорошо знаком с домашними сетями. Существуют простые альтернативы, такие как встроенная блокировка рекламы в беспроводном маршрутизаторе Eero, но это обычно предлагается за дополнительную ежемесячную абонентскую плату.
Как только вы настроите и запустите сервер, вы можете быть уверены, что трекеры не смогут следить за вами в вашем доме. Объявления автоматически удаляются со всех веб-сайтов, независимо от того, какое устройство вы используете дома, оставляя пробел в том месте, где они должны были загружаться, и делая просмотр менее отвлекающим. AdGuard и Pi-hole предоставляют статистику о заблокированных рекламных объявлениях и трекерах.
В моей собственной сети самые частые нарушители меня удивили: Adguard за неделю заблокировал сотни тысяч попыток медиаплеера Roku подключиться к серверам компании — скорей всего он пытался посылать данные о моих привычках при просмотре видео. Службы треккинга Netflix и Facebook также были очень активными.
Блокировка трекеров на уровне сети не защитит вас, когда вы не дома, поскольку блокировщик работает только тогда, когда вы находитесь в своей собственной сети, но вы можете использовать аналогичную стратегию для блокировки трекеров, когда находитесь вне своего дома. Лучшие варианты для этого — VPN-сервисы. Эти инструменты направляют ваш трафик в специальную сеть, блокируя рекламу аналогично блокировщикам сетевого уровня, но используя стороннюю службу.
Некоторые VPN-сервисы — это просто скрытые способы сбора других данных от вас, но Adguard и Weblock обрабатывают эти данные на вашем телефоне, а не в облаке. Apple, однако, расправилась с этими вариантами, сделав ограниченный выбор на iOS.
Защитить вашу частную жизнь не всегда просто, но существуют инструменты, позволяющие защититься от трекинга по умолчанию. Теперь мы можем сделать их доступными для всех.
Блокировка рекламы/телеметрии с помощью роутера Mikrotik и/или мини-компьютера Raspberry
Это мой девятнадцатый пост, являюсь специалистом по видеонаблюдению и веду портал vcctv.ru
Статья совершенно не по теме видеонаблюдения, но настроив у себя дома очень впечатлился результатом, поэтому не смог не написать об этой удобной и простой блокировке рекламы.
Давно борюсь с назойливой рекламой в приложениях на телефоне и при серфинге в браузере. И решения как правило являются локальными, где нужно что-то устанавливать и настраивать на каждом устройстве. А всегда хочется автоматизации и минимум действий и максимум удобств =). Совершенно случайно наткнулся на блокировку рекламы с помощью ПО Pi-hole. Официальный сайт — https://pi-hole.net/ . И у меня как раз давно без дела лежал Raspberry pi 3.
Установка и настройка на Raspberry крайне понятная и простая. Посмотрим вкратце процесс установки и настройки при условии, что у вас на Raspberry уже установлена ОС Linux и вы имеете доступ по ssh.
Подключаетесь по ssh к Raspberry и выполняете следующую команду:
sudo curl -sSL https://install.pi-hole.net | bash — после запустится мастер установки, можно всё оставлять по умолчанию. В конце установки вам нужно будет сохранить сгенерированный пароль для доступ к веб-интерфейсу управлению Pi-hole. В случае, если забудете пароль то через ssh командой pihole -a -p можно задать новый пароль.
В принципи на этом можно остановиться и уже подключаться к админке Pi-hole http://ip_address/admin/, но мне ещё хотелось начать использовать DNS over HTTPS.
Определение из википедии:
DNS поверх HTTPS (DoH) — экспериментальный протокол для выполнения разрешения DNS по протоколу HTTPS. Целью этого метода является повышение конфиденциальности и безопасности пользователей путём предотвращения перехвата и манипулирования данными DNS с помощью атак типа «Атака посредника». По состоянию на март 2018 года, Google и Mozilla Foundation тестируют версии DNS по протоколу HTTPS.
Для использование DNS over HTTPS используем сервис от Cloudflare на Raspberry pi 3 и для установки и настройки выполняем следующие команды:
tar -xvzf cloudflared-stable-linux-arm.tgz
cp ./cloudflared /usr/local/bin
sudo chmod +x /usr/local/bin/cloudflared
Создадим пользователя для работы сервиса
sudo useradd -s /usr/sbin/nologin -r -M cloudflared
Создадим файл конфигурации
sudo nano /etc/default/cloudflared
# Commandline args for cloudflared
Дадим на него и на исполняемый файл права пользователю сервиса
sudo chown cloudflared:cloudflared /etc/default/cloudflared
sudo chown cloudflared:cloudflared /usr/local/bin/cloudflared
Создадим файл для возможности добавления сервиса в автозагрузку
sudo nano /lib/systemd/system/cloudflared.service
Description=cloudflared DNS over HTTPS proxy
ExecStart=/usr/local/bin/cloudflared proxy-dns $CLOUDFLARED_OPTS
Активация сервиса и его запуск
systemctl enable cloudflared
systemctl start cloudflared
systemctl status cloudflared
Если всё получилось, то увидите, что сервис в состоянии active (running).
Теперь сервис cloudflare необходимо подключить к Pi-hole. Для этого заходим в веб интерфейс http://ip_address/admin/. Переходим в меню Settings — DNS, в Upstream DNS Servers убираете все галки. В custom ipv4 1 и 2 добавляете:
В Advanced DNS Settings галки оставляете только на Never forward non-FQDNs и Never forward revers lookups for private IP ranges. Нажимаете Save.
Далее для теста на компьютере меняете IP адрес днс сервера на IP Raspberry, куда вы установили Pi-hole. Очищайте кэш на своём ПК (Windows) — cmd — ipconfig /flushdns и после пробуете открыть любые сайты. Потом проверяете работу DNS over https через сайт https://www.cloudflare.com/ssl/encrypted-sni/ , нажатием на кнопки Check my browser.
Также в белый лист добавил несколько доменов, чтобы они не блокировались.
И если всё ок, то в настройках DHCP сервера (вероятно он у вас включен в роутере) указываете DNS — ip адрес вашего мини-компьютера Raspberry.
Теперь остаётся настроить роутер Mikrotik на случай, если по какой-либо причине выйдет из строя минипк Raspberry, но хочется, чтобы осталась блокировка рекламы и телеметрии Microsoft. Нашёл сервис для Mikrotik — https://stopad.hook.sh/ , который поможет настроить блокировку рекламу.
Добавляете скрипт и настраиваете планировщик ( я у себя настроил запускать скрипт каждые 2 часа) согласно инструкции, указанной на сайте. Рекомендую, в скрипт добавлять и тестить по одному списку, т.к. у меня на Mikrotik HAP AC LITE при добавлении всех списков поднялась загрузка процессора на 100% и после завис. После в Mikrotik переходите в настройки ДНС IP — DNS, указываете первый днс сервер ip адрес Pi-hole, второй днс сервер 1.1.1.1 или гугловский/провайдерский, вообщем любой.
После переходите в настройки DHCP сервера и указываете как второй днс сервер — ip адрес вашего роутера. В моем случае 192.168.77.23 — Pi-hole, 192.168.77.1 — роутер.
На этом всё! Настройка закончена! Приятно удивитесь даже заблокированной рекламой в приложениях на телефоне. Удачи!