Existem 3 maneiras de fazer isso no Mac OS X sem precisar fazer muito mais.
- Você já mencionou o primeiro caminho - usando
/etc/hosts
. - Você também descartou o uso da segunda maneira - usando plug-ins de navegador.
- A terceira maneira é usar o recurso "Controle dos pais" em Preferências do sistema.
Existe uma quarta forma - se você estiver falando sobre como escrever código e implementar seu próprio script ou seu próprio aplicativo personalizado.
Se você está falando sobre implementação do nível "sob o capô" - ou seja, você quer implementar um aplicativo personalizado (semelhante ao Little Snitch), então você deve se familiarizar com o conceito de iptables
(sistemas linux usar rotineiramente isso para controlar os direitos de acesso a hosts e portas específicos).
No Mac OS (que basicamente é o FreeBSD de dentro), o equivalente é ipfw
(IP Firewall) e para o Mac OS 10.7 em diante, ipfw
foi preterido em favor de pf
(Packet Filter).
Artigo de referência ao qual você pode se referir: link