Есть 3 способа сделать это в Mac OS X без необходимости делать намного больше.
- Вы уже упомянули первый способ - используя
/etc/hosts,
- Вы также исключили использование второго способа - использование плагинов для браузера.
- Третий способ - использовать функцию «Родительский контроль» в Системных настройках.
Существует 4-й способ - если вы говорите о написании кода и реализации собственного сценария или собственного приложения.
Если вы говорите о реализации уровня «под капотом» - т.е. вы хотите реализовать собственное приложение (похожее на Little Snitch), то вам следует ознакомиться с концепцией iptables (Linux-системы обычно используют это для управления правами доступа к конкретным хостам и портам).
В Mac OS (которая по сути является FreeBSD под капотом), эквивалент ipfw (IP Firewall) и для Mac OS 10.7 и выше, ipfw устарела в пользу pf (Пакетный фильтр).
Справочная статья, к которой вы можете обратиться: http://ikawnoclast.com/security/mac-os-x-pf-firewall-avoiding-known-bad-guys/