Presumo che gli utenti A e B utilizzino le stesse macchine Linux di cui sei l'amministratore. (Non è del tutto chiaro dalla tua domanda. Se A e B hanno i propri computer su cui sono amministratori, è un problema completamente diverso.)
Il seguente comando impedirà all'utente con uid 1234 di inviare pacchetti sull'interfaccia eth0
:
iptables -t mangle -A OUTPUT -o eth0 -m owner --uid-owner 1234 -j DROP
ip6tables -t mangle -A OUTPUT -o eth0 -m owner --uid-owner 1234 -j DROP
Consiglio di leggere la guida di Ubuntu iptables per acquisire familiarità di base con lo strumento (e fare riferimento alla pagina man per cose avanzate come la tabella mangle).
L'utente sarà comunque in grado di eseguire il ping (perché è setuid root), ma nient'altro. L'utente sarà comunque in grado di connettersi a un proxy locale se quel proxy è stato avviato da un altro utente.
Per rimuovere questa regola, aggiungi -D
al comando precedente.
Per rendere permanente la regola, aggiungila a /etc/network/if-up.d/my-user-restrictions
(rendilo uno script eseguibile che inizi con #!/bin/sh
). Oppure usa iptables-save
(vedi la guida di Ubuntu iptables per maggiori informazioni).