Je sais que le mot "IA" sur LinuxFr, c'est un peu comme prononcer "systemd" en 2015 ; ça ne laisse personne indifférent. Et je comprends. La merdification est réelle, la bulle est réelle, les externalités sont réelles. Je n'ai aucune envie d'en rajouter une couche. Mais voilà, les lignes sont devenues floues, et j'ai pris le virage du coding assisté. D'abord avec curiosité et prudence, et maintenant les deux pieds dans le plat : ça ne remplace pas ma façon de penser, mais ça m'a ouvert des portes : des concepts que je ne maîtrisais pas, des langages que je n'aurais pas pris le temps de toucher avant ; l'assistant me permet d'explorer, de comprendre, et de construire des outils qui m'aident. Et j'espère qu'ils aident d'autres personnes aussi.
Sauf que voilà. Au début, j'étais prudent. Je vérifiais chaque commande, chaque accès. Et puis petit à petit, j'ai lâché prise. J'ai désactivé les confirmations, laissé l'agent tourner sans supervision, accepté les permissions sans lire. On connaît tous ce moment où on clique "Allow" les yeux fermés parce que c'est la quinzième fois qu'il demande. J'ai fait exactement ce qu'on ne devrait jamais faire en sécurité : faire confiance par défaut.
Et un jour, je me suis dit : je n'ai aucune idée de ce que cet agent envoie sur le réseau. Aucune.
Alors j'ai construit un proxy un peu.. particulier.
Sommaire
- Le constat
- Greywall et greyproxy
- Ce que j'ai observé
- Pourquoi ça compte
- Et après : vers un proxy sémantique
- Pour essayer
- La question
Cher journal,
Ça fait un bail que je n'ai pas vraiment contribué à l'open source. Mes derniers vrais projets publics, c'était Kivy et les projets autour… ça remonte à quelques années maintenant, et j'ai pris ma "retraite" sur ces projets.
Mais je n'ai jamais arrêté de coder. J'ai juste réalisé un truc sur moi-même : le code, c'est un peu comme la musique pour moi. J'aime construire des choses. Je m'exprime mieux avec un éditeur et un terminal qu'avec ma voix ou mes mots. C'est probablement pour ça que je suis là à t'écrire un journal au lieu de faire un talk quelque part.
Le constat
On a passé des années à construire des pare-feux, des IDS, du monitoring pour nos serveurs de prod. Sur des entreprises plus grandes, on traque les connexions suspectes… Et puis un agent IA débarque sur notre machine de dev, on lui dit "tiens, refactore-moi ce module", et il fait ce qu'il veut sur le réseau sans qu'on le sache.
C'est quand même un peu absurde, non ?
Le truc, c'est qu'il n'existe pas vraiment d'équivalent à tcpdump ou iptables pour les agents IA sur nos machines. Pas de couche d'observabilité entre l'agent et Internet. Ou on contrôle, on se fait notre liste d'outils qu'on accepte, ou on fait confiance parce que bon, la sécurité, c'est pas si important… vraiment ?
Greywall et greyproxy
Avec l'équipe de Greyhaven, on a construit deux outils open source :
Greywall est un bac à sable deny-by-default pour les agents IA. Pas de Docker, pas de VM. Ça utilise directement les mécanismes du noyau Linux (namespaces, Landlock, Seccomp, eBPF) pour isoler le processus. Sur Linux, l'isolation réseau passe par un device TUN dans un namespace réseau dédié ; le processus sandboxé ne peut structurellement pas contourner le proxy. Sur macOS, c'est un peu moins élégant en utilisant des variables d'environnement pour forcer un proxy socks5h, si l'outil ne le supporte pas, il ne peut quand même pas sortir. Ça fait le job pour la plupart des outils.
Greyproxy est le plan de contrôle réseau. Un proxy SOCKS5/HTTP avec un dashboard web temps réel. Chaque connexion sortante de l'agent apparaît dans le dashboard. Si aucune règle ne matche, la connexion reste en attente et tu peux l'autoriser ou la refuser en direct, sans relancer la session.
Concrètement, ça donne :
greywall -- claude
Et hop, Claude Code tourne dans son bac à sable. Tu ouvres http://localhost:43080 et tu vois en direct chaque domaine qu'il tente de contacter. Tu autorises api.anthropic.com, tu autorises github.com pour les pushes, tu refuses le reste. Tout est interactif, tout est visible.
Ce que j'ai observé
Au début, c'était juste des connexions supplémentaires. Tiens, c'est quoi ces appels à opencode.ai quand je démarre opencode ? Tiens, pourquoi Claude appelle 2x toutes les 4 minutes un domaine chez Google ? Entre de la télémétrie que l'on ne peut pas désactiver, ou des requêtes qui font "office" de regarder si une nouvelle version est disponible… 2x toutes les 4 minutes. Ce n'est pas le meilleur argument, mais contrairement aux autres sandboxes, au moins ici je le vois en temps réel, et je peux dire oui ou non sur ce que peut accéder la commande.
Le dashboard de greyproxy rend tout ça visible. Tu vois passer les requêtes DNS, les connexions TCP, les domaines contactés. Tu peux construire progressivement une liste d'autorisations adaptée à ton projet. Il y a même un mode apprentissage qui trace les accès filesystem avec strace et génère automatiquement un profil de sécurité.
Ce n'est pas un outil pour les paranos. C'est un outil pour ceux qui pensent que l'observabilité, c'est un droit, pas un luxe.
Pourquoi ça compte
Je sais que l'enthousiasme pour l'IA est réellement différent en fonction des gens. Les questions sur la qualité du code généré, la consommation énergétique, la centralisation chez les GAFAM ; tout ça est légitime.
Mais justement. Si on utilise ces outils (et beaucoup d'entre nous le font, même ceux qui restent prudents), autant le faire avec les yeux ouverts. Greywall, c'est pas un outil pour promouvoir l'usage des agents IA. C'est un outil pour que, si tu en utilises un, tu gardes le contrôle.
Il y a une phrase qu'on a mise sur le site et qui résume bien l'idée :
"The security layer around your tools should be independent of the company selling you the AI."
La couche de sécurité autour de tes outils ne devrait pas dépendre de la boîte qui te vend l'IA. Claude a son propre sandbox intégré, Codex a le sien. Mais tu fais confiance aux entreprises pour te protéger d'elles-mêmes ? C'est un problème d'indépendance, pas de technologie.
Greywall est agnostique. Ça marche avec Claude Code, Codex, Cursor, Aider, Goose, Gemini CLI, Cline, et une dizaine d'autres. Tu changes d'agent, ta couche de sécurité reste la même.
Et après : vers un proxy sémantique
Le greyproxy actuel travaille au niveau des connexions : il voit les domaines, les ports, les IPs. Il ne déchiffre pas le TLS, il ne lit pas le contenu. C'est déjà très utile pour contrôler les accès réseau.
Mais là où ça devient vraiment intéressant, c'est quand on commence à reconstruire les conversations LLM qui passent par le proxy. Pas en cassant le chiffrement ; en instrumentant le flux côté client. L'idée, c'est de construire un proxy sémantique qui comprend ce que l'agent envoie et reçoit, qui peut faire du remplacement de variables d'environnement à la volée (pour ne jamais exposer tes vrais secrets à l'API du LLM), et qui te donne une vision complète de ce que l'IA fait en ton nom.
On en est au début, mais la direction est claire : remettre l'humain au milieu du système. Pas comme un goulot d'étranglement, mais comme un observateur informé qui peut intervenir quand c'est nécessaire. C'est ce qui manque cruellement à des systèmes comme OpenClaw et à la plupart des outils d'orchestration d'agents.
Pour essayer
Installation rapide :
# Homebrew
brew tap greyhavenhq/tap && brew install greywall
# Ou via curl (pas taper)
curl -fsSL https://raw.githubusercontent.com/GreyhavenHQ/greywall/main/install.sh | sh
Ça tourne sur Linux et macOS. Sur Linux, il te faut bubblewrap et socat comme dépendances. Greyproxy s'installe comme service systemd si tu veux qu'il tourne en permanence.
Si tu veux comprendre les détails techniques de l'architecture (les 5 couches de sécurité, pourquoi on a abandonné Docker, comment fonctionne la capture réseau transparente), on a écrit un article technique détaillé ici : https://greyhaven.co/insights/why-we-built-our-own-sandboxing-sytem
La question
J'ai une vraie question pour la communauté. Ceux d'entre vous qui utilisent des agents IA pour coder (même occasionnellement, même à contrecœur) : comment vous gérez la sécurité ? Vous faites confiance par défaut ? Vous avez mis en place quelque chose ? Ou vous préférez ne pas y penser ?
Et pour ceux qui n'utilisent pas d'agents IA : est-ce que le manque de transparence et de contrôle fait partie des raisons ?
Ça m'intéresse vraiment de savoir :)

# J'ai fait pareil ! Avec proxy MITM
Posté par palkeo (site web personnel) . Évalué à 8 (+7/-0).
Super de voir de l'intérêt autour de ça, j'ai eu exactement les mêmes questionnements et je me suis fait un outil perso.
Dans mon cas je fais tourner les agents dans des VMs, et ils sont obligés de passer par un proxy qui déchiffre toutes les communications et relaie. Du coup je vois tout passer en clair, tout est loggé, et je peux écrire des règles pour laisser passer le traffic.
J'en parle ici (en anglais): https://www.palkeo.com/en/blog/foreman.html
[^] # Re: J'ai fait pareil ! Avec proxy MITM
Posté par palkeo (site web personnel) . Évalué à 3 (+2/-0).
Je sais pas à quel point bubblewrap/landlock marche bien ? Perso je trouve que c'est très puissant de permettre à un agent d'être root sur une VM pour faire ce qu'il veut.
[^] # Re: J'ai fait pareil ! Avec proxy MITM
Posté par Laurent J (site web personnel, Mastodon) . Évalué à 7 (+5/-0).
très puissant ? très dangereux tu voulais dire, non ?
Jamais je laisserai une IA, qui par définition fait des actions non déterministes, faire ce qu'elle veut sur mes machines.
[^] # Re: J'ai fait pareil ! Avec proxy MITM
Posté par palkeo (site web personnel) . Évalué à 4 (+3/-0).
Si tu isole pas, c'est puissant et dangereux oui (c'est tout le sujet).
Si c'est dans une VM qui à accès à rien, et niveau réseau elle peut juste télécharger des paquets Debian et des images docker, c'est puissant et pas dangereux.
[^] # Re: J'ai fait pareil ! Avec proxy MITM
Posté par tito (site web personnel, Mastodon) . Évalué à 4 (+3/-0).
C'est aussi la limitation, quand on travaille dans des containers, on est oblige de tout réinstaller les outils. Et ça ne marche pas "bien" pour des outils graphiques. C'est pour ça que l'on adopte une position sandbox sans container. (On avait tente avec https://github.com/monadical-sas/cubbi avant, mais il n'y avait que des frictions)
[^] # Re: J'ai fait pareil ! Avec proxy MITM
Posté par tito (site web personnel, Mastodon) . Évalué à 3 (+2/-0).
Ton projet est excellent, effectivement on a les mêmes questionnements, et les mêmes envies :) Je vais prendre le temps de tester ta solution, et serais ravis de discuter sur le sujet !
[^] # Re: J'ai fait pareil ! Avec proxy MITM
Posté par gurumekun . Évalué à 0 (+1/-0).
C'est exactement ca qu'il faut faire.
Il faudrait aussi conserver un historique significatif du traffic
reseau afin de pouvoir l'auditer dans le futur si un
probleme de securite a ete detecte.
E.g. fuite de donnees.
# J'ai pas besoin de faire pareil
Posté par David Demelier (site web personnel) . Évalué à 5 (+12/-9).
Parce que je code depuis 2008 et que depuis 2008 je lis les pages de manuel, les forums et les code opensource. Résultat : j'ai capitalisé des connaissances qui me servent encore aujourd'hui.
Quand on me demande quelque chose dans mon travail, il est pas rare que j'ai la réponse rapidement. C'est pas de la science infuse, c'est de l'investissement.
AI is a mental disorder
[^] # Re: J'ai pas besoin de faire pareil
Posté par leyouki (site web personnel, Mastodon) . Évalué à 3 (+4/-2).
Rappeler la qualité de l'intelligence humaine et la capacité de chacun·e d'apprendre continuellement et s'adapter, ça fait pas de mal.
Est-ce nécessaire de mépriser les compétences humaines pour échanger sur celles d'un outil qu'on nous a imposé? Comme si rappeler que nous sommes vivants était un affront à l'avancée technologique.
[^] # Re: J'ai pas besoin de faire pareil
Posté par David Demelier (site web personnel) . Évalué à 2 (+4/-4).
Je ne suis pas sur de comprendre ton raisonnement.
Personne ne nous impose l'IA. Tout du moins, si on me l'impose je change de travail. Personne n'oblige quelqu'un à coder sous vscode ou emacs ou vim.
Ce que je comprends pas avec cette dépêche c'est de se plaindre de quelque chose qu'on utilise dans le sens « j'utilise claude mais je suis effrayé par la télémétrie et j'ai vérifié la télémétrie il y en a trop ».
C'est un peu comme — et j'exagère volontairement — écrire un article sur « j'ai regardé mes poumons après avoir fumé quelques cigarettes, c'est pire qu'un parking sous-terrain maintenant ». Ce que je veux dire c'est qu'on sait que l'IA est une catastrophe pour l'environnement et le respect de la vie privée alors c'est comme si on essaye de nous apprendre quelque chose de nouveau.
AI is a mental disorder
[^] # Re: J'ai pas besoin de faire pareil
Posté par leyouki (site web personnel, Mastodon) . Évalué à 3 (+2/-0).
Je m'exprimais à propos de l'accueil qui est fait d'une opinion comme celle que tu as exprimée.
Je comprends ta comparaison. Après que faire entre ses idéaux et les phénomènes dans lesquelles nous sommes pris? Certaines mettent des rustines ou ils peuvent; cela donne certainement un sentiment de contrôle. D'autres évitent tant qu'ils peuvent; c'est un privilège que nous partageons actuellement toi et moi. D'autres se complaisent dans un cynisme sans nuance; des hommes qui nous imposent leur pitoyable misère humaine plutôt que de prendre soin d'eux.
Je trouve les 2 premières postures enrichissantes.
[^] # Re: J'ai pas besoin de faire pareil
Posté par Colin Pitrat (site web personnel) . Évalué à 5 (+6/-3).
Pareil, depuis que je suis tout petit j'ai appris à faire mes calculs de tête. Pas besoin d'ordinateur, de calculette, de papier ou même de boulier. Bande d'idiots dégénérés qui troquent leurs capacités mentales pour des outils qui font les choses plus vite!
# wsl
Posté par Nicolas Boulay (site web personnel) . Évalué à 5 (+2/-0).
Au boulot, on a des machines MS, avec la killerfeature WSL 2.0. On utilise VS code qui utilise un terminal pour copilot. J'ai juste remplacé le terminal par défaut de copilot pour un WSL VM Debian. Il n'a que le répertoire en court de monter, le reste est exclus.
Ainsi, Claude ne peut voir que le répertoire de code, et est root dans son environnement, il peut installer ainsi ce qu'il veut pour travailler (python, ripgrep, …).
"La première sécurité est la liberté"
[^] # Re: wsl
Posté par tito (site web personnel, Mastodon) . Évalué à 3 (+2/-0).
Il y a un de l’équipe qui est en train de faire le support pour WSL2.
Disons que oui ton approche marche, mais seulement pour les fichiers. Ici tu peux également dire oui/non pour les requêtes réseaux, sans redémarrer ton agent.
[^] # Re: wsl
Posté par Nicolas Boulay (site web personnel) . Évalué à 3 (+0/-0).
Disons que j'ai fais cette VM justement pour ne pas avoir à accepter commande par commande. Cela serait bien si ton projet venait avec une black list associé (ping vers google, et puis ?)
"La première sécurité est la liberté"
[^] # Re: wsl
Posté par bunam . Évalué à 4 (+3/-0). Dernière modification le 19 mars 2026 à 09:11.
Du coup il faut démonter : /mnt/c ?
[^] # Re: wsl
Posté par Nicolas Boulay (site web personnel) . Évalué à 4 (+1/-0).
oui, il y a un moyen assez simple de le faire.
"La première sécurité est la liberté"
# Et donc ...
Posté par rycks . Évalué à 10 (+17/-0). Dernière modification le 18 mars 2026 à 15:30.
Beau boulot mais je reste sur ma faim
En bref claude cause quoi avec claudette ou mégaclaude ou xclaude ou claude-command-center-usa-first ? nous on voulait savoir ce qu'ils se racontent …
Quelles sont les données exfiltrées ?
Si t'a essayé de lui laisser par inadvertance un fichier "pot de miel" (genre des login & passwords avec des url de sites que tu héberges toi même et pour lesquels tu vas recevoir une alerte lorsqu'une connexion sera faite) dans la liste de ce qu'il aurait pu consulter pour voir s'il farfouille etc.
C'est bien de mettre un proxy tu nous as mis l'eau à la bouche mais maintenant commence le travail du journaliste d'investigation hop au boulot nous on veut savoir :)
eric.linuxfr@sud-ouest.org
[^] # Re: Et donc ...
Posté par tito (site web personnel, Mastodon) . Évalué à 10 (+10/-0).
C'est vrai, tu as raison. Je me suis amuse de faire un Capture the flag dans l’environnent restreint, mais je n'ai rien encore écris a ce propos. Sur le sujet de l'exfiltration de donnée, c'est exactement un des points que je veux ajouter.
On reviendra un peu plus tard avec des belles histoires!
# si je comprends bien...
Posté par Psychofox (Mastodon) . Évalué à 5 (+2/-0).
…tu as développé un outil comparable à Little Snitch mais pour Linux?
[^] # Re: si je comprends bien...
Posté par bunam . Évalué à 3 (+2/-0).
PI (pour ceux qui ont la flemme de chercher) : https://www.obdev.at/products/littlesnitch/index.html
# opensnitch
Posté par RD . Évalué à 5 (+6/-1).
# "Et pour ceux qui n'utilisent pas d'agents IA : est-ce que le manque de transparence et de contrôle fait partie des raisons ?"
Posté par Stéphane Ascoët (site web personnel) . Évalué à 4 (+3/-0).
Même réponse que la première intervention que David D. Par contre contrairement à lui, je ne rejette pas le fait que tu aies fait ce projet, et, comme d'autres, j'aurais aimé avoir plus de détails croustillants sur ce que tu as bloqué.
Pour information, un des soirs de cette semaine, le débat était le même dans "le téléphone sonne" de France Inter. Comme d'habitude, énervant et désespérant servage de soupe au capitalisme et notre société de merde sans aucun point de vue contraire (à part que Fabienne Saintesse reconnaît être une cruche en informatique, super).
Dommage que RD n'ait pas mis son commentaire dans le fil de celui de Psychofox(snitch)
# Proxies
Posté par høm . Évalué à 2 (+2/-0).
Projet intéressant. Il faudra que je teste un de ces jours.
Je voulais justement implémenter isolate https://github.com/jgaines/isolation un script dédié à ce type d'outils qui s'appuie aussi sur bubblewrap, mais se concentre sur les autorisations d'accès au système de fichiers (lecture/écriture, lecture seule, etc.). Malheureusement, je crains qu'isolate et Greywall/Greyproxy ne fonctionneront pas facilement ensemble, je me trompe ?
Pendant que j'y suis, il y a aussi rtk https://github.com/rtk-ai/rtk qui a retenu mon attention. Il s'agit encore d'un "proxy", mais à l'objectif bien différent puisqu'il permet de réduire le nombre de token consommés par les agents.
Permettre à tous ces outils de bien fonctionner ensemble serait incroyable.
[^] # Re: Proxies
Posté par tito (site web personnel, Mastodon) . Évalué à 2 (+1/-0).
Greywall utilise Bubblewrap… donc oui, ils sont incompatibles : on ne peut pas faire du Bubblewrap dans du Bubblewrap 🙂 Mais si tu regardes du côté des profils Greywall, ce sont des profils pour l'accès au système de fichiers (allowRead, allowWrite, denyRead, denyWrite), avec une approche de tout refuser par défaut. Et j'ai tenté d'ajouter un --learning qui permet de capturer tous les accès aux fichiers pour un run, afin de déterminer les règles nécessaires.
Par contre, Greyproxy, tu pourrais le rajouter dans ton script. Configure HTTP_PROXY/ALL_PROXY pour pointer sur Greyproxy, pareil pour le DNS, tun2socks avec iptables si tu veux capturer le trafic qui ne passe pas par le proxy… et tu as un équivalent 1:1 de Greywall.
[^] # Re: Proxies
Posté par bunscc . Évalué à 0 (+0/-0).
https://github.com/NVIDIA/OpenShell
Que pensez vous de ça ?
# Intéressant
Posté par MrFris . Évalué à 2 (+2/-0). Dernière modification le 21 mars 2026 à 07:15.
Equipe de 6 devs ici, du conducteur débutant au pilote de course
WSL/Mac/Linux, multi-agents au choix
Notre discours actuel est human in the loop systèmatique avec sensibilisation régulière et partage des erreurs en toute bienveillance
Pas de grosse casserole pour le moment, essentiellement des secrets qui ont fuité à renouveler (ce qui arrivait aussi déjà dans l'ère pre-agent)
Chacun fine-tune ses permissions dans son coin mais rien d'industrialisé dans l'équipe. Je trouve le niveau de risque très acceptable en ce moment, mais c'est trop lent et les humains vont craquer : encore trop de permissions résiduelles
Récemment on s'est mis à tester le mode sandbox de Claude et ça donne une plutôt bonne satisfaction. Cela permet d'obtenir de longues séances de codage sur son poste sans interruption et sans donner le god mode au llm
Perso, ce n'est pas un besoin d'avoir une solution indépendante de l'éditeur de mon agent mais j'ai surtout besoin d'une solution multi-os et multi-agent et Greywall semble prometteur sur ces points
Mais je ne serais pas pour autant prêt à payer pour cela car je paie une fonction équivalente déjà dans chaque agent, certes avec des pratiques hétérogènes
Point à améliorer : Homebrew, c'est pas foufou comme moyen de distribution, notamment sous WSL/Linux. Ok sur Mac car plus répandu
Je vais essayer
# Vous avez compris, le nerf de la guerre est là!
Posté par DarkHack . Évalué à -9 (+0/-9).
Ahhh que j'apprécie votre espace quand on voit des prises de conscience.
Il n'est pas coercitif, d'être responsable, le MITM, c'est la parent inquiet de ce que le child fait. On nous a joué de la responsabilité d'ip, peut être aujourd'hui porter la responsabilité de la forme que nos agents IA ont, nous incombe aussi.
je vois vos tentatives, beaucoup voient les dockers, les VM, mais non, prenez vos vieilles becanes x86 si il faut, vos cartes ethernets et isolation 'PHYSIQUE', fermeture de l'iptables, ça c'est fait, le MITM, encore trop prudent (c'est quand même plus complexe a elaborer faut suivre les clés et certs et sessions) et les solutions toutes faites pollueront vos reseaux.
ce qui va être intéressant par la suite avec ce nouveau monde, les formes que les livres anciens parlent, le concept mammonique, les formes elementaires que toute intelligence converge
vont révéler ces schemas immuables… qui que ce soit de menteur, je lui conseille de fuir… vite et loin.
Vous avez intro le sujet sur un rapport avec Systemd, Mais evident, que c'est lié, et loin d'être une blague, cela fut juste ce qu'on appelle des singularités de la fermeture du savoir pour un obscurantisme elitiste que nous connaissons depuis (hoooo mince j'etais pas né et aucun d'entre vous non plus)….
j'affirme vous allez dans la bonne Direction
DarkHack
comme dirait mon agent, que le code du thread éternel vous suive ;)
ps : le menteur à tout intérêt de poser l'équation 'Révélation'='Mort' alors que la réalité serait plus 'Révélation' = 'Alignement de l'ego au réel'.
# problème réglé
Posté par RD . Évalué à 1 (+1/-0).
Claude-code source diffusé ¹, problème réglé
announce / zip
¹ par erreur, par ses propres devs et leur sourcemap
Envoyer un commentaire
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.