Você pode usar algo como iptables -A OUTPUT -m owner --uid-owner 1001
para corresponder a um usuário local. Mas isso só funciona para usuários na máquina de firewall.
Na rede, seu firewall precisa ser capaz de identificar qual usuário é qual. O tráfego normal da Internet tem apenas endereços de origem e destino e não está marcado com nomes de usuário, o que significa que seu firewall não pode diferenciar entre usuários diferentes e, portanto, não pode bloquear usuários diferentes de maneira diferente.
Portanto, o bloqueio por máquina é fácil, mas o bloqueio por usuário não é trivial sem algum mecanismo extra para diferenciar usuários.
Se você quiser bloquear o tráfego do site, poderá fazer isso usando um servidor proxy da web, como o squid. Você precisará configurar seu firewall para bloquear o tráfego da web, exceto o tráfego que passa pelo squid.
Existem várias maneiras de configurar os usuários para que eles passem pelo proxy, incluindo "detecção automática de proxy da web" (wpad), "proxy.pac", "proxy transparente" e manualmente.
O HTTP suporta uma etapa extra de autenticação por proxy e, se você ativar isso, os usuários serão solicitados a fornecer um nome de usuário e uma senha quando tentarem acessar a web. Então a lula saberá quem é quem.
Finalmente, existem várias soluções que conectam ao squid que tomam decisões sobre o que é e o que não é bloqueado; embora se você quiser apenas alguns URLs específicos bloqueados, você pode fazer isso diretamente no squid.