Блокировка сайтов на Mac — Screen Time и Terminal

Интернет открывает детям доступ к огромному объёму знаний — но одновременно даёт и доступ к контенту, который они не должны видеть. Простые расширения браузера помогают частично, но системные методы, такие как Screen Time и изменение файла hosts через Terminal, дают более универсальный контроль. Ниже — подробные инструкции, рекомендации по безопасности и готовые чек‑листы для родителей и администраторов.
Что такое Screen Time
Screen Time — встроенная функция Apple для управления временем и доступом на устройствах macOS и iOS. Кратко: это централизованный контролёр, который позволяет ограничивать приложения, веб‑сайты и контент по категориям. Термин: “hosts” — системный файл, который связывает домены с IP‑адресами; изменение этого файла позволяет перенаправить или аннулировать обращения к сайтам.
Ключевые возможности Screen Time:
- Ограничение времени использования приложений и категорий.
- Блокировка сайтов по категориям (взрослый контент) или по конкретным URL.
- Синхронизация настроек между устройствами Apple через iCloud.
- Защита паролем, чтобы ребёнок не изменил настройки.
Быстрое руководство: блокировка сайта через Screen Time
Screen Time блокирует на уровне системы, поэтому ограничения действуют во всех браузерах (Safari, Chrome, Firefox и др.). Ниже — подробные шаги с пояснениями и советами.
- Откройте меню Apple → откройте System Preferences.
- Перейдите в Screen Time. Если вы используете macOS с новым названием, это может называться только “Экранное время” в локализованной системе.
- Выберите пользователя, для которого нужно настроить ограничения (если на Mac несколько аккаунтов).
- В левой колонке выберите App Limits и включите функцию, если она отключена. App Limits помогает ограничивать категории приложений, но для блокировки сайтов используйте следующие настройки.
- Перейдите в Content & Privacy и включите Turn On.
- В разделе Content откройте Web Content.
- Выберите Limit Adult Websites для автоматической блокировки контента для взрослых либо Allowed Websites Only для полного списка разрешённых сайтов.
- Для добавления конкретных сайтов нажмите Add Website и введите URL в формате https://example.com или example.com. Вы также можете добавить сайты в раздел Never Allow (никогда не разрешать).
- Чтобы задать гибкий график, вернитесь в App Limits и нажмите плюс (+). Выберите категорию или сайт и задайте дневной лимит. Нажмите Custom → Edit для вариативного расписания по дням недели.
- Обязательно установите Screen Time Passcode: внизу окна Screen Time нажмите Options → Use Screen Time Passcode и задайте код.
- Рекомендуется включить Share across devices, чтобы правила применялись ко всем устройствам в вашем аккаунте iCloud.
Примечание: Screen Time удобен для родителей и офисных администраторов благодаря простому интерфейсу и синхронизации, но при наличии доступа к паролю настройки легко изменить. Для более «жёсткой» блокировки рассмотрите метод через hosts.
Пошаговая инструкция: блокировка сайтов через Terminal (hosts)
Изменение файла hosts — системный способ перенаправления доменов на локальный адрес 127.0.0.1, что делает сайт недоступным независимо от браузера. Этот метод требует прав администратора и базовых навыков работы в Terminal.
Важное: перед изменением системных файлов создайте резервную копию.
- Откройте Terminal: Launchpad или Finder → Applications → Utilities → Terminal.
- Создайте резервную копию текущего файла hosts командой:
sudo /bin/cp /etc/hosts /etc/hosts-original- Введите пароль администратора и нажмите Return. Курсор не будет отображать символы при вводе пароля — это нормально.
- Откройте файл hosts в текстовом редакторе nano с правами суперпользователя:
sudo nano -e /etc/hosts- Перейдите в конец файла с помощью стрелок и добавьте строки вида:
127.0.0.1 www.youtube.com
127.0.0.1 youtube.com
127.0.0.1 facebook.com
127.0.0.1 www.facebook.comКаждый домен — с новой строки. Можно блокировать поддомены по мере необходимости.
- Сохраните изменения: нажмите Control + O, затем Return; закройте nano — Control + X.
- Примените изменения, очистив кэш DNS:
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder(разные версии macOS могут требовать только одну из команд; команда dscacheutil при этом наиболее распространённая.)
- После этого при попытке зайти на заблокированный сайт браузер отобразит сообщение о невозможности подключения.
Плюсы метода hosts: изменения действуют на уровне системы и труднее обойти в отсутствие прав администратора. Минусы: требуется админский доступ и базовые знания командной строки; для больших списков доменов управление вручную неудобно.
Блокировка в конкретном браузере
Иногда требуется блокировать сайты только в одном браузере (например, чтобы разрешить YouTube в Safari, но запретить в Chrome). В этом случае используйте расширения блокировщиков (Block Site, StayFocusd для Chrome) или встроенные настройки браузера, если они есть.
- Safari использует Screen Time для блокировок.
- Chrome, Firefox: установите расширение из магазина дополнений и настройте списки.
Плюс браузерных расширений — гибкость и интерфейс; минус — расширение можно удалить или отключить, особенно если пользователь имеет админские права.
Screen Time vs. browser‑based блокировка и hosts — когда что выбрать
- Если нужен быстрый и централизованный контроль на всех устройствах Apple — Screen Time.
- Если требуется блокировка на системном уровне, которую трудно обойти — hosts через Terminal.
- Если нужно ограничение только в одном браузере для рабочих задач — расширение браузера.
Выбор зависит от сценария: родительский контроль, корпоративная политика, личная дисциплина.
Когда методы не сработают (ограничения и обходы)
- Ребёнок/пользователь имеет административный доступ и может сбросить пароль Screen Time или редактировать hosts.
- Новые домены или зеркала сайтов: сайты могут менять домены, и тогда блокировка по старому адресу не сработает.
- HTTPS SNI/кеширование CDN: в редких случаях блокировка с помощью hosts может не блокировать отдельные сервисы, которые используют общие CDN; для таких сервисов лучше корпоративные прокси или DNS‑фильтры.
- VPN/прокси: при использовании VPN или внешнего DNS трафик может проходить в обход локальных настроек.
Совет: комбинируйте методы — Screen Time + hosts + надёжный DNS‑фильтр на роутере — для минимизации обходов.
Альтернативные подходы
- Настройка фильтрации на роутере (например, через OpenDNS или встроенные фильтры роутера) — действует для всех устройств в сети.
- Использование семейных профилей и управляемых учётных записей в браузерах (например, профили с ограничениями в Chrome).
- Установка специализированного родительского ПО с централизованной отчётностью.
- Корпоративный способ — прокси или веб‑фильтрация на уровне шлюза.
Преимущество роутера/внешнего DNS — действует даже если устройство не в вашей сети, если настроены правила на уровне аккаунтов и устройств.
Модель принятия решения (короткая подсказка)
- Нужно блокировать на всех устройствах Apple → Screen Time.
- Нужна технически жёсткая блокировка → hosts.
- Только один браузер → расширение браузера.
- Масштабная сеть (несколько устройств) → фильтрация на роутере/прокси.
Чек‑лист для родителей и администраторов
- Создать отдельную учётную запись для ребёнка (без прав администратора).
- Настроить Screen Time и задать пароль.
- Добавить нежелательные сайты в Never Allow или Limit Adult Websites.
- При необходимости — добавить ключевые сайты в hosts (с резервной копией файла).
- Включить Share across devices для синхронизации.
- Настроить фильтрующий DNS на роутере (OpenDNS или аналоги).
- Проверить работу блокировок в разных браузерах и в режиме инкогнито.
Playbook: откат изменений и восстановление доступа
- Если что‑то пошло не так с hosts — восстановите резервную копию:
sudo /bin/cp /etc/hosts-original /etc/hosts
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder- Если вы забыли Screen Time Passcode: воспользуйтесь восстановлением через Apple ID (если доступно) или обратитесь в службу поддержки Apple; имейте под рукой идентификационные данные.
- При проблемах с доступом в браузер — очистите кеш и DNS, перезапустите браузер и систему.
Устранение неполадок
- Блокировка не работает в Chrome: проверьте, не используется ли расширение VPN; проверьте, что адрес введён без опечаток.
- После редактирования hosts сайт всё ещё доступен: выполните команды очистки кэша DNS и перезапустите браузер/компьютер.
- Screen Time не синхронизируется: проверьте вход в iCloud и включён ли Share across devices.
Примечания по безопасности и конфиденциальности
- Резервная копия hosts и изменение системных файлов требуют аккуратности; сохраняйте оригинальные файлы.
- Не сообщайте Screen Time Passcode посторонним.
- Для корпоративных установок используйте MDM (Mobile Device Management) для централизованного управления политиками безопасности.
- При использовании внешних сервисов (OpenDNS и пр.) проверьте политику конфиденциальности поставщика.
Критерии приёмки
- Заблокированные сайты недоступны во всех браузерах на проверяемой учётной записи.
- Screen Time настроен и защищён паролем, не разглашаемым пользователю, для кого запрещён доступ.
- При использовании hosts — есть резервная копия оригинального файла и документированный список изменений.
- Синхронизация настроек с другими устройствами Apple (если требуется) подтверждена.
Часто задаваемые вопросы
Q: Нужно ли админское право для настройки Screen Time?
A: На macOS для изменения системных настроек Screen Time повлиять может потребоваться пароль пользователя; создание ограничённой учётной записи для ребёнка и изменение настроек обычно требует прав администратора на основном аккаунте.
Q: Может ли ребёнок удалить правила Screen Time?
A: Если у ребёнка есть пароль администратора или он знает Screen Time Passcode, он сможет изменить настройки. Поэтому важно, чтобы основной аккаунт и код были защищены.
Q: Что эффективнее: hosts или Screen Time?
A: Screen Time удобнее и синхронизируется между устройствами. hosts надёжнее в плане обхода, но требует админских прав и больше ручной работы.
Q: Можно ли автоматически обновлять большой список доменов в hosts?
A: Да — для больших списков применяют скрипты, конфигурационные менеджеры или внешние DNS‑фильтры; ручное редактирование подходит для небольших списков.
Рекомендации и финальные мысли
Для большинства семей и небольших рабочих окружений разумной комбинацией будет: Screen Time + установка Screen Time Passcode + фильтрующий DNS на роутере. Для ситуаций, где требуется более строгая техническая блокировка, добавьте изменения в hosts и контролируйте админский доступ.
Если вам нужна готовая таблица доменов для блокировки или скрипт для массового обновления hosts — в разделе дополнений ниже приведены шаблоны и пример bash‑скрипта.
Пример простого bash‑скрипта для добавления доменов в hosts (только для опытных пользователей)
#!/bin/bash
# usage: sudo ./add_blocked_domains.sh domains.txt
if [ "$EUID" -ne 0 ]; then
echo "Запустите скрипт с sudo"
exit 1
fi
HOSTS_FILE=/etc/hosts
BACKUP=/etc/hosts-$(date +%F-%T)
cp $HOSTS_FILE $BACKUP
while IFS= read -r domain; do
if [[ ! -z "$domain" ]]; then
echo "127.0.0.1 $domain" >> $HOSTS_FILE
fi
done < "$1"
# flush cache
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
echo "Готово. Резервная копия: $BACKUP"Важно: перед запуском скрипта проверьте файл domains.txt на отсутствие пустых строк и ошибочных записей.
Если необходимо, могу подготовить: готовый список доменов для блокировки, скрипт с проверкой дубликатов или инструкцию для настройки OpenDNS на вашем роутере.
Похожие материалы
Запись подкаста на телефоне — пошагово
Управление музыкой в Google Maps на Android
Как выбрать capture‑карту для Mac
Эмодзи, Bitmoji и Cameo в Snapchat
Кастомный ISO Ubuntu с Cubic