Вопрос или проблема
Я использую Ubuntu 24.04.2 LTS.
Я обновил файл /etc/hosts
и попытался заблокировать некоторые веб-сайты, используя 127.0.0.1 websitename.com
, но это не сработало. Я даже перезагрузил машину, и это все равно не сработало.
Как заблокировать определенные веб-сайты в Ubuntu 24.04?
В моей ситуации, после обновления файла /etc/hosts, мне нужно было подождать около 20 минут, прежде чем все начало работать. Другими словами, я обновил файл /etc/hosts, и сайт, который я пытался заблокировать, все равно загрузился в браузере. Но через 20 минут он был заблокирован в браузере Chrome. Мне просто нужно было потерпеть.
Ответ или решение
Блокировка определённых сайтов в Ubuntu 24.04: Полное руководство
Если вы столкнулись с необходимостью блокировки определённых веб-сайтов на вашей системе Ubuntu 24.04.2 LTS, вы можете воспользоваться несколькими методами. Рассмотрим их подробности.
1. Использование файла /etc/hosts
Редактирование файла /etc/hosts
— это один из наиболее простых способов блокировки сайтов. Этот файл отвечает за сопоставление доменных имён с IP-адресами. Ваша настройка, заключающаяся в добавлении строки 127.0.0.1 websitename.com
, верна. Однако стоит учесть некоторые нюансы:
-
Правильный синтаксис: Убедитесь, что вы добавили каждое доменное имя на новой строке, и по возможности указывайте поддомены, например:
127.0.0.1 websitename.com 127.0.0.1 www.websitename.com
-
Очистка кеша браузера: Браузеры могут кэшировать DNS-записи. После внесения изменений в файл
/etc/hosts
рекомендуется очистить кеш браузера или попробовать открыть сайт в режиме инкогнито. -
Ожидание: Как вы уже заметили, время ожидания после изменения файла может варьироваться. В вашем случае блокировка вступила в силу только через 20 минут. Это может быть связано с кэшированием DNS-записей, и в некоторых случаях, особенно в браузерах, такое поведение действительно возможно.
2. Использование ufw (Uncomplicated Firewall)
Другой способ блокировки веб-сайтов — использование встроенного брандмауэра Ubuntu ufw
. С его помощью вы можете ограничить доступ к определённым IP-адресам, ассоциированным с нежелательными сайтами.
Для начала, убедитесь, что ufw
установлен и активен:
sudo ufw enable
Для блокировки сайта выполните следующие команды:
- Найдите IP-адрес сайта с помощью команды
ping
:ping websitename.com
- Блокируйте его:
sudo ufw deny out to <IP-адрес>
Этот метод более надёжный, поскольку он работает на уровне сети.
3. Использование расширений для браузера
Если вы ищете более гибкое решение, рассмотрите возможность использования расширений для блокировки сайтов, например:
-
uBlock Origin: Это расширение для браузеров, позволяющее настраивать списки блокировок. Вы можете создавать собственные правила для блокировки определённых доменных имен.
-
StayFocusd: Это расширение помогает ограничить время, проведённое на определённых сайтах, и может быть полезно для самоконтроля.
4. Актуальность настройки
Важно периодически проверять настройки, особенно после обновлений системы или браузера, которые могут сбросить ваши изменения. Если блокировка по-прежнему не работает, возможно, вам следует рассмотреть возможность очистки кэша DNS на уровне системы:
sudo systemd-resolve --flush-caches
Заключение
Блокировка сайтов в Ubuntu 24.04 может быть успешно выполнена несколькими способами, включая редактирование файла /etc/hosts
, использование ufw
, или применение расширений браузера. Если изменений не видно сразу, дайте системе время для обработки кеша. Для достижения лучших результатов комбинируйте методы и регулярно проверяйте их влияние.