Disabilita la rete per utenti specifici


16

Sto lavorando su Ubuntu / Mint distro che dovrebbe essere eseguito in diretta. Esistono più account che rientrano in tre gruppi generali: amministratore, Internet e sicurezza.

  • L'amministratore ha ovviamente l'autorità di fare qualunque cosa.
  • L' account Internet è per l'utilizzo di Internet.

Gli altri account sono account di sicurezza . In nessun caso è consentito l'accesso a reti Internet, stampanti, Bluetooth, dispositivi WiFi, ecc.

Quello che mi piacerebbe fare è rimuovere i driver di rete dal kernel, ma ciò disabiliterebbe gli account che necessitano di Internet.

Quali sono i modi di livello più basso per disabilitare Internet per questi account di sicurezza? Sto cercando soluzioni impossibili da collegare .

Risposte:


14

Puoi farlo con iptables.

Su un terminale aggiungere la regola a iptables

sudo iptables -A OUTPUT -p all -m owner --uid-owner username -j DROP

dove username è l'utente che si desidera disabilitare la connessione a Internet. Salva il file ed esci.

Ciò aggiungerà una regola per iptablesdire che tutti i pacchetti in uscita creati dall'utente specificato verranno automaticamente eliminati da iptables.

Se vuoi fare lo stesso per un gruppo completo, ti consiglio di farlo invece di --uid usernamete --gid-owner groupname, che avrà lo stesso effetto per un gruppo di utenti completo.

Quindi, per impedire al gruppo Security di accedere a Internet il comando sarebbe simile a questo

sudo iptables -A OUTPUT -p all -m owner --gid-owner security -j DROP

Per rendere permanente la regola è possibile creare uno script /etc/network/if-up.d/, aggiungere le righe necessarie e renderlo eseguibile.


Come opzione utilizzare iptables-saveper salvare le regole correnti e ripristinarle all'avvio.

Salva le iptablesregole correnti

sudo iptables-save > /etc/iptables_rules

Apri /etc/rc.localcon il tuo editor di testo preferito e alla fine del file aggiungi

/sbin/iptables-restore < /etc/iptables_rules

Ciò ripristinerà le regole salvate ad ogni avvio.

Per ulteriori informazioni, visitare la iptablespagina [ manpage ] per ulteriori informazioni su diverse iptablesopzioni.


Grazie. Funzionava per Internet, ma questo utente può ancora usare il bluetooth. Sto testando il wireless ma non ho confermato. Mi sembra che l'account sia bloccato su DENY. Ho provato sudo iptables -A OUTPUT -p all -m owner --uid-owner internet -j ACCEPTma questo non lo ha riacceso per i test.
bambuntu

Ok, iptables sembra essere un filtro per qualcosa di più basso che rende effettivamente la connessione di rete. Qual è l'applicazione che rende possibile la connessione? Posso disabilitarlo? In tal caso, disabilitare in base a chi ha il controllo della console. Questa distribuzione live è pensata per più utenti, ma non per più di una console. Quindi, se riesco a tracciare chi sta utilizzando la console, sto pensando che potrei essere in grado di disabilitare questa app di rete in base alle autorizzazioni degli utenti.
bambuntu

Bene, sarebbe il tuo gestore di rete in Ubuntu che sarebbe network-manager, se rimuovi un utente dal gruppo networke disabiliti la connessione in network-managero altri strumenti simili, non sarà in grado di riavviarlo, nell'altro utente che fa parte del gruppo di rete sarà. Questo è un altro livello di pensiero poiché disabilita la connessione stessa.
Bruno Pereira,

Dopo un po 'di Google, ho scoperto che puoi rimuovere il gestore della rete e configurare Ubuntu tradizionalmente modificando / etc / network / interfaces . Questa non sembra essere l'app di rete che sto cercando di disabilitare. Sto guardando un po 'più in basso. Quanto possiamo scendere prima di arrivare all'autista?
bambuntu

Sono stato in grado di rimuovere ed eliminare Network Manager. A quel punto la rete era disabilitata. Ma sono stato in grado di riportare le cose con questo: sudo /etc/init.d/networkingdopo la modifica /etc/network/interfaces Quindi è /etc/init.d/networkingbasso come te?
bambuntu

2

La soluzione di Bruno è buona: penso che probabilmente sia la migliore soluzione autonoma.

Un'altra opzione a cui puoi pensare è quella di impostare un firewall / proxy su un computer separato, come gateway per Internet, che consente solo le connessioni che forniscono l'autenticazione per utente. È possibile utilizzare entrambi insieme per una protezione aggiuntiva.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.