Blocca le connessioni in uscita per determinati uid (root, apache, nessuno)


8

Con iptables in CentOS 5 e 6 Linux: come puoi impedire ai processi in esecuzione come root , apache o nessuno di avviare connessioni in uscita?

Su CentOS 5 Linux ho provato a inserire queste righe in / etc / sysconfig / iptables:

-A OUTPUT -m owner --uid-owner root -j DROP
-A OUTPUT -m owner --uid-owner apache -j DROP
-A OUTPUT -m owner --uid-owner nobody -j DROP

ma purtroppo viene visualizzato l'errore:

# sudo service iptables restart
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]
iptables: Applying firewall rules: iptables-restore v1.4.7: owner: Bad value for "--uid-owner" option: "apache"
Error occurred at line: 27
Try `iptables-restore -h' or 'iptables-restore --help' for more information.
                                                           [FAILED]

non puoi farlo usando iptables. iptables controlla solo i pacchetti ip e non ci sono informazioni sull'uid / gid. iptables può bloccare i pacchetti solo dai campi sorgente / destinazione, porte, ...
Goez

So che il pf di OpenBSD può farlo. E sembra che ci sia anche il proprietario -m di iptables Linux. Quindi forse ti sbagli?
Alexander Farber,

se controllo la mia manpage, -m sta per match (modulo) e non per il proprietario, forse c'è un modulo per il proprietario del processo, non sono sicuro.
Goez,

Nella mia comprensione "-m proprietario" dice a iptables: "si prega di caricare il modulo 'proprietario', in modo che possiamo fare le cose"
Alexander Farber

appena verificato, esiste davvero un modulo proprietario. Non ne ho mai sentito parlare prima. Ma funziona con ID numerici, quindi dovrà cambiare la sua regola
Goez

Risposte:


8

Prova a utilizzare l'UID numerico anziché il nome. Per esempio:

-A OUTPUT -m owner --uid-owner 400 -j DROP

invece di

-A OUTPUT -m owner --uid-owner apache -j DROP

Puoi trovare l'UID digitando

id user
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.