J'ai lu autour mais je n'arrive pas à trouver un moyen de créer des règles de pare-feu par processus. Je sais iptables --uid-owner
mais cela ne fonctionne que pour le trafic sortant. J'ai envisagé de créer des scripts netstat
, iptables
mais cela semble terriblement inefficace car si un processus n'est actif que pendant une petite période, le script risque de le manquer. Fondamentalement, je veux appliquer des restrictions spécifiques concernant le port et le dst sur un processus tout en laissant les autres processus inchangés. Des idées?
Pour référence, selinux peut faire exactement cela et cela fonctionne assez bien. La configuration est cependant un peu pénible.
Réponses:
Votre question est très similaire à /programming/5451206/linux-per-program-firewall-similar-to-windows-and-mac-counterparts
Il y avait le
--cmd-owner
module propriétaire pour iptables, mais il a été supprimé car il ne fonctionnait pas correctement. Maintenant, une première version bêta de Leopard Flower est disponible, qui résout le problème par un démon de l'espace utilisateur.En général, un pare-feu par processus n'est pas très utile, sauf si vous isolez et limitez vraiment les programmes. Pour cela, vous devriez regarder des solutions de sécurité comme TOMOYO Linux, SELinux, AppArmor, grsecurity, SMACK, ...
la source
Facile, exécutez votre processus sous différents utilisateurs et utilisez '--uid-owner' :)
la source