Первый эшелон: блокировка интернет-шлака через HOSTS


Давным-давно, когда Интернета еще не было, человечество собиралась поработить компьютерная сеть SkyNet ARPANET, к которой на пике ее расцвета было подключено аж несколько сотен компов. Поэтому список всех существующих необходимых в работе сетевых ресурсов и их адреса хранились на каждом таком компьютере, в файле HOSTS.TXT


С тех пор к уже глобальной Сети подключили еще сколько-то миллиардов компьютеров, смартфонов, телевизоров, утюгов и других устройств, которым доступны миллиарды сайтов, IP-адреса которых постоянно меняются. В общем, все стало сложно, но файл HOSTS.TXT (ныне просто hosts) остался и работает так же, как и 30+ лет назад.


Если кратко и без зауми, то работает он так: вы в браузере набираете «pikabu.ru» и ваша Windows/Android/iOS первым делом лезет в файл hosts на вашем устройстве – проверить, не сказано ли там что-нибудь про искомый сайт. Если не сказано, тогда начинаются DNS-запросы во внешний мир и прочая суета, к делу не относящаяся, а вот если сказано... то смотря что.


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


С помощью файла hosts мы можем сказать своей операционной системе: ресурса, к которому ты собираешься обратиться, согласно инструкциям, полученным на открытом нами сайте, не существует, даже не пытайся его загрузить. Говорится это так: в «Блокноте» открывается файл hosts (обычно находится в папке C:\Windows\System32\Drivers\Etc), в него добавляется строчка, например, 0.0.0.0 googleads.g.doubleclick.net после чего файл сохраняется.

Первый эшелон: блокировка интернет-шлака через HOSTS Файл hosts, Информационная безопасность, Windows, Android, Интернет, Длиннопост, Блокировка рекламы
Все, большинство шлака от рекламной сети Google даже не загружается на наш комп, а сама Корпорация Добра лишается одной из возможностей шпионить за нами. googleads.g.doubleclick.net – это доменное имя, ресурсы с которого мы загружать не хотим. 0.0.0.0 – адрес, на который мы принудительно переадресуем все запросы к доменному имени googleads.g.doubleclick.net В данном случае этот адрес будет расценен операционной системой, как заведомо несуществующий, и запрос к нему будет сброшен.
Первый эшелон: блокировка интернет-шлака через HOSTS Файл hosts, Информационная безопасность, Windows, Android, Интернет, Длиннопост, Блокировка рекламы

Как узнать, какие доменные имена стоит заблокировать в hosts? Самый простой способ – скачать один из готовых и регулярно обновляемых списков, например, MVPS HOSTS. Плюсы – все уже сделано за вас, минусы – те же самые: в список могли добавить что-то лишнее, что именно вам не мешает и даже наоборот, а чего-то, мешающее именно вам, могли и не добавить.


Я добавляю вручную, узнавая имена мешающих мне доменов с помощью инструментов разработчика, встроенных в Firefox (в Chrome есть аналог). Инструменты/Веб-разработка/Сеть, «Обновите», клик на колонке «Домен», чтобы отсортировать список открытых страницей подключений по доменным именам.

Первый эшелон: блокировка интернет-шлака через HOSTS Файл hosts, Информационная безопасность, Windows, Android, Интернет, Длиннопост, Блокировка рекламы

И вот, на примере сайта РБК, видим кучу доменных имен, которые мы не заказывали – счетчик, рекламная сеть, снова счетчик, опять счетчик, и еще раз счетчик... (читай – шпионский модуль), и это лишь то, что на скриншот влезло, а если прокрутить вниз, там еще сюрпризы будут. Вот их-то ручками, ручками – ничего лишнего, но и никто не спрячется. Видим в колонке «Статус» пустое место вместо «200» или иного кода – все правильно сделал!

Первый эшелон: блокировка интернет-шлака через HOSTS Файл hosts, Информационная безопасность, Windows, Android, Интернет, Длиннопост, Блокировка рекламы

Если же надо отловить самовольные запросы к посторонним доменам от других программ или самой операционной системы, на помощь приходит DNSQuerySniffer. Например, хочет Windows 10 слить в сеть «телеметрию» (строго в наших же интересах, конечно), а мы не хотим: запускаем DNSQuerySniffer, смотрим в реальном времени список доменных имен, к которым идут обращения, понимаем, что сами мы в этом время не обращались ни к одному из них, открываем файл hosts, copy/paste...


В чем недостатки способа блокировки через hosts и почему мы говорим лишь о первом (а значит, не единственном) эшелоне обороны от интернет-шлаков? Первый и главный – он не предусматривает возможности использовать «маски». Т.е., если нам надо заблокировать такие доменные имена:

1.doubleclick.net

2.doubleclick.net

...

99.doubleclick.net

нам придется их все, поименно добавлять в hosts, вместо того, чтобы добавить одну «маску» – *.doubleclick.net.


Второй: hosts позволяет заблокировать доступ к доменному имени вообще, для всех сразу, без исключений. Заблокировать доступ только браузеру, а почтовому клиенту оставить – невозможно, для этого нужен полноценный межсетевой экран (файрвол).


В остальном же – одни сплошные плюсы: изменения, внесенные в файл, активируются сразу; даже большой файл hosts не нагружает систему и не приводит к зависаниям браузера, логика работы списка блокированных доменов прозрачна. И, самое главное, заблокировать домен с мусором сможет даже не самый продвинутый пользователь ПК.

Первый эшелон: блокировка интернет-шлака через HOSTS Файл hosts, Информационная безопасность, Windows, Android, Интернет, Длиннопост, Блокировка рекламы

На закуску – немного дополнительных знаний, для интересующихся. Если не нашли ответа на свой вопрос – комменты открыты ;)


1. В Android файл hosts расположен в директории: /system/etc/ Права на файл (CHMOD): 644 (-rw-r-r--) Доступ к этой директории возможен лишь при наличии root-прав. Символ переноса строки в файле: LF (про это часто забывают, копируя файл из Windows).


2. Правильно посылать нежелательные домены на три буквы 0.0.0.0 (в Windows можно для краткости просто на 0), а не на 127.0.0.1 В контексте файла hosts 0.0.0.0 означает «несуществующий адрес», обращение к которому сразу приводит к завершению соединения. А 127.0.0.1 означает вполне себе существующий адрес – он служит для имитации обращения к тому же самому компьютеру из сети. Т.е. вместо сразу «нет такого адреса» мы получим через какое-то (пусть и небольшое) время «никто не отвечает». Хотя в некоторых случаях могут и ответить, что чревато сбоем системы.


3. Файл hosts – первый, но не единственный (и даже не главный) эшелон защиты компьютера от интернет-шлака. Не стоит забывать про межсетевой экран, системы контентной фильтрации, плагины для браузера с тем же назначением, да и просто грамотную настройку программ, вылезающих в Интернет. А для ценителей – локальные прокси, позволяющие вволю поглумиться над своим трафиком, прежде чем допускать его до браузера.

Вы смотрите срез комментариев. Показать все
7
Автор поста оценил этот комментарий

Божечки, вот вы динозавтра то отрыли))

Ладно мы лет 10 назад его юзали, но сейчас то зачем? С таким то разнообразием АДблоков,  фаерволов и прочей лабуды?

Или приятно почувствовать себя немного одмином?))) жесть

раскрыть ветку (7)
1
Автор поста оценил этот комментарий

Лет 10 назад были уже и файрволы, и адблоки в широком ассортименте. И httpS почти не было, так что AdMuncher рулил ;) Так и что с того, если старый инструмент успешно выполняет свою функцию и поныне?

раскрыть ветку (6)
1
Автор поста оценил этот комментарий
Успешно?? Это вообще можно назвать инструментом? Мы двигаемся к автоматизации всего, а вы предлагаете руками работать с hosts?? Что за деградация?
раскрыть ветку (5)
1
Автор поста оценил этот комментарий

Мы - это кто? Я вот не двигаюсь к автоматизации всего и не люблю компанейшины, иду своим путем. Учитесь говорить только за себя.

раскрыть ветку (4)
Автор поста оценил этот комментарий
Мы - это я про все промышленные, технологические и прочие производственные отрасли, про тенденцию развития общества, цивилизации. Ну кроме таких как вы, конечно.
раскрыть ветку (3)
Автор поста оценил этот комментарий

Не поделитесь сокровенным знанием: чем можно автоматически решить те же задачи, что и с помощью hosts?

раскрыть ветку (2)
Автор поста оценил этот комментарий

Божечки на два уровня вверх глянь

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

На два уровня уровня выше упоминание Адблока, который тупо скачивает составленные другими листы, и файрвола, который точно так же надо настраивать руками. Какой вывод я должен сделать из этих взаимоисключающих параграфов? Что собеседник предлагает мне поиграть в телепата?

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку