Posté(e) le 9 septembre 20168 a Bonsoir à tous, Je cherche actuellement à isoler une application d'Internet. Je ne veux pas qu'elle y accède, mais seulement elle. Le reste doit pouvoir y accéder sans restriction. Je ne vois pas trop comment faire ? Je suis obligé d'installer un pare-feu qui travaille sur la couche applicatif ou une commande simple permettrait de le faire ? Merci à tous, Data
Posté(e) le 9 septembre 20168 a Si elle se connecte à un site particulier tu peux contourner le problème en bloquant le site à la place. Modifié le 9 septembre 20168 a par linconnu
Posté(e) le 10 septembre 20168 a Auteur Hello, Merci pour la réponse, mais cette solution ne me convient pas parce que j'ai besoin d'y accéder d'une autre façon
Posté(e) le 10 septembre 20168 a Ça fait des années qu'on attend que ce genre de firewall débarque. Sur le papier, y'a toutes les briques au niveau du noyau pour créer un firewall applicatif (cgroup&compagnie), malheureusement, c'est pas au programme (ou alors je trouve pas les infos sur les avancées d'une telle fonctionnalité). A part "conteneuriser" l'application pour bloquer l'accès réseau à celui-ci, je vois mal comment faire :(
Posté(e) le 10 septembre 20168 a Si l'appli utilise un port privé, on pourrait bloquer ce port, non, oui ? Mais faudrait savoir comment déterminer le port réseau utilisé. Là, moi, je sais pas...
Posté(e) le 10 septembre 20168 a Le port de sortie est attribué de manière aléatoire par le noyau quand un processus doit établir une communication, ça va être compliqué :/
Posté(e) le 11 septembre 20168 a Bonjour, La solution qui revient le plus souvent sur le web est de bloquer l'accès internet d'un utilisateur via iptables : iptables -A OUTPUT -m owner --uid-owner "nom_d_utilisateur" -j DROP (ne pas oublier de sauvegarder la règle via iptables-save >> /etc/iptables/iptables.rules) Ajouter une ligne via visudo votre_nom_d_user ALL=(nom_d_user_bloqué) /chemin/absolu/vers/la/commande OU ALL pour tous les commandes Puis de lancer le programme sous cet utilisateur via sudo -u : sudo -u nom_d_utilisateur ./programme J'ai essayé d'améliorer cette méthode en utilisant le setuid, cependant sur certaines applications, notamment celles compilées avec gtk, refusent de se lancer, dommage, ça avait le mérite d'être bien plus simple et fonctionnant pour tous les utilisateurs. A tester dans votre cas, la démarche est pratiquement la même (il n'y juste pas besoin de l'étape visudo / sudo ) il faut juste chown l'exe et le chmoder correctement : sudo chown nom_d_utilisateur_bloqué programme su nom_d_utilisateur_bloqué chmod 4755 programme Le programme devrait maintenant se lancer avec les droits de son propriétaire (attention le setuid ne fonctionne pas avec les scripts) (Lien wikipedia vers le setuid : Setuid) Modifié le 11 septembre 20168 a par Exarkein Fix lien wikipedia
Posté(e) le 13 septembre 20168 a Auteur Bonjour à tous, Merci pour ces réponses. Je testerai dès que j'aurai du temps, et essayerai de vous faire un retour.
Posté(e) le 24 avril 20178 a On 10/09/2016 at 11:13, seboss666 a écrit : Ça fait des années qu'on attend que ce genre de firewall débarque. Sur le papier, y'a toutes les briques au niveau du noyau pour créer un firewall applicatif (cgroup&compagnie), malheureusement, c'est pas au programme (ou alors je trouve pas les infos sur les avancées d'une telle fonctionnalité). A part "conteneuriser" l'application pour bloquer l'accès réseau à celui-ci, je vois mal comment faire :( https://github.com/google/nsjail Ça marche pas mal
Posté(e) le 25 avril 20178 a il y a l'utilitaire unshare pour faire du coup par coup ou un profil apparmor pour du permanent : https://unix.stackexchange.com/questions/68956/block-network-access-of-a-process Modifié le 25 avril 20178 a par L33thium
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.