<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Mac Souverain — Articles</title><description>Articles de fond Mac Souverain, hors veille et radars.</description><link>https://macsouverain.com/</link><language>fr</language><atom:link href="https://macsouverain.com/articles.xml" rel="self" type="application/rss+xml"/><item><title>Wazuh, écris la règle qui capte ce que tu cherches vraiment</title><link>https://macsouverain.com/wazuh-regles-custom-detection/</link><guid isPermaLink="true">https://macsouverain.com/wazuh-regles-custom-detection/</guid><description>Écrire une règle Wazuh custom, ce n&apos;est pas tout couvrir. C&apos;est poser une question précise à un log réel, la tester avec wazuh-logtest, puis la déployer.</description><pubDate>Thu, 13 Aug 2026 10:00:00 GMT</pubDate><content:encoded>&lt;p&gt;À l’épisode précédent, tu as appris à lire ton SIEM. Tu as ouvert l’audit de configuration, restreint la surveillance de fichiers à ce qui compte, trié tes vulnérabilités par sévérité. Trois usages, trois questions, des réponses nettes. Sauf que toutes ces alertes, tu ne les as pas écrites. Elles sortaient du jeu de règles fourni par Wazuh, des milliers de règles pensées par d’autres, pour des cas génériques.&lt;/p&gt;
&lt;p&gt;Aujourd’hui, tu passes de l’autre côté. Tu écris ta première règle.&lt;/p&gt;
&lt;p&gt;Et je vais te dire tout de suite ce qui distingue une bonne règle custom d’une mauvaise, parce que c’est tout le sujet. Une mauvaise règle part d’un fantasme, tout couvrir, ne rien rater, verrouiller l’univers. Une bonne règle part d’un log réel que tu as sous les yeux et d’une question précise que tu lui poses. Une seule question. C’est exactement le fil rouge de la série, du plus calme au plus bavard, sauf qu’ici tu tiens le stylo.&lt;/p&gt;
&lt;p&gt;Ce tuto vise la branche &lt;strong&gt;4.x&lt;/strong&gt; de Wazuh, la même que toute la série, version de référence &lt;strong&gt;4.14.7&lt;/strong&gt;. Prévois une petite heure, un log sous les yeux, et l’envie de résister à la tentation d’en faire trop.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-quil-te-faut&quot;&gt;Ce qu’il te faut&lt;/h2&gt;
&lt;p&gt;Rien de neuf à installer. Tout est hérité de la série.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ton manager Wazuh 4.x opérationnel, celui du tout-en-un.&lt;/li&gt;
&lt;li&gt;Au moins un agent en état &lt;code&gt;Active&lt;/code&gt; qui remonte des logs.&lt;/li&gt;
&lt;li&gt;Un accès shell au manager, parce que les règles vivent dans des fichiers, pas dans un formulaire.&lt;/li&gt;
&lt;li&gt;Un vrai log qui t’intéresse. Pas un exemple de doc, un log de &lt;strong&gt;chez toi&lt;/strong&gt;, celui pour lequel tu te dis « ça, je voudrais le savoir quand ça arrive ».&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ce dernier point n’est pas décoratif. Écrire une règle sans log réel devant soi, c’est deviner. Et une règle qui devine, elle se trompe.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;anatomie-dune-règle-décodage-champ-niveau&quot;&gt;Anatomie d’une règle, décodage, champ, niveau&lt;/h2&gt;
&lt;p&gt;Avant d’écrire, il faut comprendre le chemin que parcourt un log. Trois étapes, toujours les mêmes.&lt;/p&gt;
&lt;p&gt;Un log arrive. Wazuh le &lt;strong&gt;pré-décode&lt;/strong&gt;, il en extrait le squelette commun à tout message système, l’horodatage, le nom de la machine, le nom du programme. Puis un &lt;strong&gt;décodeur&lt;/strong&gt; entre en scène et découpe le reste en champs nommés, un utilisateur, une adresse source, une action. Enfin, le log passe devant le mur des &lt;strong&gt;règles&lt;/strong&gt;. La première règle dont toutes les conditions sont vraies gagne, et elle génère une alerte au niveau qu’elle porte.&lt;/p&gt;
&lt;p&gt;Retiens cette distinction, c’est le cœur de tout ce qui suit. Une règle peut chercher de deux façons.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Avec &lt;code&gt;&amp;#x3C;match&gt;&lt;/code&gt; ou &lt;code&gt;&amp;#x3C;regex&gt;&lt;/code&gt;, elle fouille le &lt;strong&gt;texte brut&lt;/strong&gt; du log, la ligne entière, telle quelle.&lt;/li&gt;
&lt;li&gt;Avec &lt;code&gt;&amp;#x3C;field&gt;&lt;/code&gt;, elle interroge un &lt;strong&gt;champ déjà extrait&lt;/strong&gt; par un décodeur, proprement isolé.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La première méthode, c’est le filet à grosses mailles. La seconde, c’est la pince à épiler. Une règle précise, celle qui pose une vraie question, s’accroche presque toujours à un décodeur et compare un champ nommé. On y revient.&lt;/p&gt;
&lt;p&gt;Côté écriture, une règle est un bloc XML. Ses attributs principaux, tu n’en utiliseras que deux au début.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;id&lt;/code&gt;, l’identifiant numérique unique de la règle.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;level&lt;/code&gt;, sa sévérité, sur une échelle dont on parle plus bas.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Et ses balises enfant utiles pour commencer.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&amp;#x3C;if_sid&gt;&lt;/code&gt;, le chaînage, « ne me déclenche que si telle autre règle a déjà matché ». La clé de la précision.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;#x3C;field name=&quot;...&quot;&gt;&lt;/code&gt;, la comparaison sur un champ décodé.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;#x3C;match&gt;&lt;/code&gt;, la recherche dans le texte brut.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;#x3C;description&gt;&lt;/code&gt;, la phrase qui s’affichera dans l’alerte. Écris-la pour toi dans six mois, pas pour la machine.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;D’autres balises existent, &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/rules.html#options&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;&lt;code&gt;frequency&lt;/code&gt; et &lt;code&gt;timeframe&lt;/code&gt;&lt;/a&gt; pour compter les répétitions dans une fenêtre de temps, &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/pcre2.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;&lt;code&gt;pcre2&lt;/code&gt;&lt;/a&gt; pour les motifs costauds, &lt;code&gt;decoded_as&lt;/code&gt;, tu les découvriras quand une question précise les réclamera. Pas avant. Garde la &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/rules.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;référence des options de règle&lt;/a&gt; ouverte le jour où tu écris, c’est la page qui liste tout, balise par balise.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;où-vivent-tes-règles-et-lerreur-qui-te-les-efface&quot;&gt;Où vivent tes règles, et l’erreur qui te les efface&lt;/h2&gt;
&lt;p&gt;Deux fichiers, deux règles d’or.&lt;/p&gt;
&lt;p&gt;Tes &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/rules/custom.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;règles custom&lt;/a&gt; vont dans &lt;code&gt;/var/ossec/etc/rules/local_rules.xml&lt;/code&gt;. Tes &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/decoders/custom.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;décodeurs custom&lt;/a&gt;, quand tu en auras besoin, dans &lt;code&gt;/var/ossec/etc/decoders/local_decoder.xml&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Ce que tu ne touches &lt;strong&gt;jamais&lt;/strong&gt;, c’est le répertoire &lt;code&gt;/var/ossec/ruleset/&lt;/code&gt;. C’est le jeu de règles fourni par Wazuh, et il est réécrit intégralement à chaque mise à jour. Une personnalisation posée là-dedans disparaît à la première montée de version, sans un mot d’adieu. Tout ce qui t’appartient reste dans &lt;code&gt;etc/&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Deuxième règle, les identifiants. Réserve à tes règles la plage &lt;strong&gt;100000 à 120000&lt;/strong&gt;. Le moteur accepte techniquement n’importe quel numéro jusqu’à 999999, mais rester au-dessus de 100000 t’évite d’entrer en collision avec les règles système. La borne haute, 120000, est une recommandation confortable, pas un mur.&lt;/p&gt;
&lt;p&gt;Et si tu veux modifier une règle fournie plutôt qu’en créer une ? Tu la recopies dans ton fichier local avec l’attribut &lt;code&gt;overwrite=&quot;yes&quot;&lt;/code&gt;, en gardant son identifiant. Attention, certaines balises structurelles comme &lt;code&gt;if_sid&lt;/code&gt; ou &lt;code&gt;if_group&lt;/code&gt; ne se laissent pas réécrire ainsi, dans ce cas tu crées une nouvelle règle qui s’appuie sur l’existante.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;la-méthode-du-log-réel-à-la-règle-testée&quot;&gt;La méthode, du log réel à la règle testée&lt;/h2&gt;
&lt;p&gt;Voici la boucle. Tu vas la répéter à chaque règle que tu implémenteras, alors autant la créer proprement dès la première.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Tu attrapes le log brut.&lt;/strong&gt; La ligne exacte, copiée telle qu’elle apparaît, sans la reformuler.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tu regardes comment Wazuh la comprend déjà.&lt;/strong&gt; Quels champs un décodeur en tire, quelle règle système la ramasse peut-être au passage.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tu écris ta règle&lt;/strong&gt; dans &lt;code&gt;local_rules.xml&lt;/code&gt;, en t’accrochant à ce qui existe.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tu la testes à froid&lt;/strong&gt;, avant même de recharger le service, avec &lt;code&gt;wazuh-logtest&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tu recharges&lt;/strong&gt; le manager seulement quand le test est vert.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;L’outil qui rend tout ça possible, c’est &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/reference/tools/wazuh-logtest.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;&lt;code&gt;wazuh-logtest&lt;/code&gt;&lt;/a&gt;, à &lt;code&gt;/var/ossec/bin/wazuh-logtest&lt;/code&gt;. Un mot pour les vétérans, si tu as croisé de vieux tutos parlant d’&lt;code&gt;ossec-logtest&lt;/code&gt;, c’est le même outil, rebaptisé lors du passage d’OSSEC à Wazuh en version 4.0. Le nom d’aujourd’hui, c’est &lt;code&gt;wazuh-logtest&lt;/code&gt;, l’ancien ne répondra plus.&lt;/p&gt;
&lt;p&gt;Tu le lances, il t’invite à coller une ligne de log, et il rejoue sous tes yeux les &lt;strong&gt;trois phases&lt;/strong&gt; dont on parlait, pré-décodage, décodage, matching. Le décodage est ton point de contrôle, c’est là que tu vérifies qu’un champ que tu veux interroger existe bien. Le matching t’annonce la règle qui l’emporte, son identifiant, son niveau, sa description.&lt;/p&gt;
&lt;p&gt;Cette console, c’est ton banc d’essai. Tu peux y coller un log, voir qu’aucune règle ne le ramasse, écrire ta règle, recoller le log, et regarder la phase 3 changer. Sans jamais toucher à la production.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/body-01-wazuh-logtest.png&quot; alt=&quot;Sortie de wazuh-logtest sur une ligne de log Vaultwarden d&amp;#x27;échec d&amp;#x27;authentification : phase de décodage avec les champs srcip et srcuser extraits, phase de matching sur la règle 100011 au niveau 10.&quot;&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;un-exemple-de-bout-en-bout&quot;&gt;Un exemple de bout en bout&lt;/h2&gt;
&lt;p&gt;Assez de théorie. Prenons une vraie question, la plus banale qui soit, et déroulons-la jusqu’au bout.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La question.&lt;/strong&gt; « Je veux savoir quand quelqu’un rate l’authentification sur mon coffre Vaultwarden, et de quelle adresse il s’y essaie. » Une question, un service, un événement. Quelqu’un qui tape à côté du mot de passe de ton gestionnaire de mots de passe, c’est exactement le genre de bruit que tu veux entendre.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le log sous les yeux.&lt;/strong&gt; À chaque échec, Vaultwarden écrit cette ligne.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;[2026-08-13 09:42:11.523][vaultwarden::api::identity][ERROR] Username or password is incorrect. Try again. IP: 203.0.113.42. Username: victime@example.com.&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Regarde le format, ce n’est pas du syslog classique, pas de &lt;code&gt;machine programme[pid]&lt;/code&gt;. Vaultwarden préfixe chaque ligne de &lt;code&gt;[horodatage][module][niveau]&lt;/code&gt;. Retiens-le, ça va compter pour le décodeur.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le premier réflexe, la grosse maille.&lt;/strong&gt; Tu pourrais écrire une règle qui fouille le texte brut.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;group&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;vaultwarden,&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100010&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;5&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;match&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Username or password is incorrect. Try again&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;match&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Vaultwarden, échec d&apos;authentification&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;group&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Ça marche, ça sonne à chaque échec. Mais tu n’as qu’un fait nu, « quelqu’un s’est planté ». L’adresse et le compte visé sont là, dans la ligne, sauf que Wazuh ne les voit pas comme des champs. Impossible de compter les tentatives par adresse, de géolocaliser, de repérer l’acharné qui revient toutes les dix secondes. Tu as ouvert un robinet, pas posé une question.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La bonne maille, la pince à épiler.&lt;/strong&gt; On repart de zéro. Pour interroger l’adresse et le compte, il te faut ces champs décodés. Or Vaultwarden ne fait pas partie des formats que Wazuh connaît d’origine, tu vas devoir le lui apprendre, la section suivante détaille le décodeur. Admettons qu’il extraie déjà &lt;code&gt;srcip&lt;/code&gt; et &lt;code&gt;srcuser&lt;/code&gt;. Ta règle devient alors chirurgicale.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;group&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;vaultwarden,&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100010&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;0&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoded_as&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;vaultwarden&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoded_as&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Vaultwarden, ligne reconnue, socle de détection&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100011&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;10&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;100010&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;match&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Username or password is incorrect&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;match&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Vaultwarden, échec d&apos;authentification de $(srcuser) depuis $(srcip)&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;group&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Regarde ce qui se joue là. La règle 100010 est en &lt;code&gt;level=&quot;0&quot;&lt;/code&gt;, elle ne sonne pas, elle sert juste de socle, elle dit « cette ligne vient de Vaultwarden ». La règle 100011 s’y accroche via &lt;code&gt;&amp;#x3C;if_sid&gt;&lt;/code&gt;, ne se déclenche que sur l’échec d’authentification, et rappelle dans sa description le compte visé et l’adresse d’où vient la tentative.&lt;/p&gt;
&lt;p&gt;Une question posée, une réponse donnée, et un silence total sur tout le reste. Et si demain tu ne veux d’alerte que pour un compte précis, tu remplaces ce &lt;code&gt;&amp;#x3C;match&gt;&lt;/code&gt; par un &lt;code&gt;&amp;#x3C;field name=&quot;srcuser&quot;&gt;toncompte@exemple.tld&amp;#x3C;/field&gt;&lt;/code&gt;, la pince se resserre encore. Le jour où tu voudras hurler quand la même adresse se plante dix fois en une minute, tu ajouteras &lt;code&gt;frequency&lt;/code&gt; et &lt;code&gt;timeframe&lt;/code&gt; par-dessus, mais ça, c’est une autre règle pour un autre jour.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le test, avant de déployer quoi que ce soit.&lt;/strong&gt;&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;/var/ossec/bin/wazuh-logtest&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Colle ta ligne de log. En phase 3, tu dois voir sonner la règle 100011, au niveau 10, avec ta description remplie : &lt;em&gt;Vaultwarden, échec d’authentification de &lt;a href=&quot;mailto:victime@example.com&quot;&gt;victime@example.com&lt;/a&gt; depuis 203.0.113.42&lt;/em&gt;. L’adresse est là, récupérée, prête à géolocaliser ou à corréler. Si tu veux valider en une commande, sans lire la sortie, l’option &lt;code&gt;-U&lt;/code&gt; compare le résultat à un triplet attendu, identifiant, niveau, décodeur, et te rend un code de sortie propre.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;/var/ossec/bin/wazuh-logtest&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -U&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; 100011:10:vaultwarden&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Puis tu recharges.&lt;/strong&gt;&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; restart&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-manager&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Un redémarrage coupe brièvement la réception des logs, le temps que le service revienne. Sur un manager de PME, c’est indolore.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;L’exemple 100010/100011 illustre la syntaxe exacte du chaînage &lt;code&gt;if_sid&lt;/code&gt;, avec les champs décodés réinjectés dans la description. Avant de compter sur l’alerte en prod, colle-le dans &lt;code&gt;wazuh-logtest&lt;/code&gt; et vérifie que les substitutions &lt;code&gt;$(srcip)&lt;/code&gt; et &lt;code&gt;$(srcuser)&lt;/code&gt; s’affichent bien. Trente secondes, et pas de coquille découverte le jour où l’alerte compte vraiment.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;quand-il-faut-un-décodeur-et-quand-il-nen-faut-surtout-pas&quot;&gt;Quand il faut un décodeur, et quand il n’en faut surtout pas&lt;/h2&gt;
&lt;p&gt;C’est le piège du débutant zélé, écrire un décodeur pour tout. Ne le fais pas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le principe est simple.&lt;/strong&gt; Si un décodeur existant sort déjà le champ qui t’intéresse, tu n’écris &lt;strong&gt;aucun&lt;/strong&gt; décodeur. Tu écris directement une règle qui s’accroche à la règle existante et compare le champ. La plupart des formats standards, ceux de SSH, des services système, des serveurs connus, sont déjà décodés par Wazuh. Vérifie-le d’abord dans la phase 2 de &lt;code&gt;wazuh-logtest&lt;/code&gt;, si ton champ apparaît, le travail est fait.&lt;/p&gt;
&lt;p&gt;Tu n’écris un décodeur que dans un cas précis, quand Wazuh ne comprend pas le format d’un log &lt;strong&gt;maison&lt;/strong&gt; ou exotique. La phase 2 du test reste vide, ou ne sort pas le champ que tu cherches ? Alors, et seulement alors, tu apprends à Wazuh à lire ce format.&lt;/p&gt;
&lt;p&gt;Un décodeur custom, ça vit dans &lt;code&gt;/var/ossec/etc/decoders/local_decoder.xml&lt;/code&gt;, et ça se compose de &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/decoders.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;deux blocs&lt;/a&gt;, un parent qui reconnaît l’application, un enfant qui extrait les champs. Pour notre Vaultwarden, ça donne :&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;vaultwarden&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;prematch&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;][vaultwarden::&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;prematch&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;vaultwarden&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;parent&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;vaultwarden&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;parent&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;regex&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;IP: (\d+.\d+.\d+.\d+). Username: (\S+).&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;regex&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;order&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;srcip, srcuser&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;order&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le parent reconnaît la ligne à une sous-chaîne stable, &lt;code&gt;][vaultwarden::&lt;/code&gt;, le nom du module que Vaultwarden colle dans chacune de ses lignes. Pourquoi pas un &lt;code&gt;&amp;#x3C;program_name&gt;&lt;/code&gt; comme d’habitude ? Parce que Vaultwarden n’écrit pas en syslog, il n’y a pas de champ programme à accrocher. Si tu fais passer tes logs par journald ou syslog en amont, alors le préfixe standard réapparaît et tu peux revenir au &lt;code&gt;&amp;#x3C;program_name&gt;vaultwarden&amp;#x3C;/program_name&gt;&lt;/code&gt; classique.&lt;/p&gt;
&lt;p&gt;En lecture directe du fichier ou de la sortie Docker, le &lt;code&gt;&amp;#x3C;prematch&gt;&lt;/code&gt; sur le module est ta prise la plus solide. L’enfant, lui, capture l’adresse puis le compte, dans cet ordre, et les nomme &lt;code&gt;srcip&lt;/code&gt; et &lt;code&gt;srcuser&lt;/code&gt;, exactement les champs que ta règle 100011 attend. Le nom &lt;code&gt;srcip&lt;/code&gt; n’est pas un caprice, c’est celui que Wazuh sait géolocaliser et corréler. La boucle est bouclée.&lt;/p&gt;
&lt;p&gt;Un avertissement sur les expressions régulières, parce que c’est là qu’on perd des heures. La &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/regex.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;syntaxe des motifs Wazuh&lt;/a&gt; n’est pas tout à fait la regex classique à laquelle tu penses, le moteur par défaut (OS_Regex) a ses propres conventions. Teste chaque décodeur dans &lt;code&gt;wazuh-logtest&lt;/code&gt; avant de t’y fier, et considère l’exemple ci-dessus comme un patron à valider sur ton format réel, pas comme du copier-coller garanti.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-vrai-danger-ce-nest-pas-la-syntaxe-cest-le-nombre&quot;&gt;Le vrai danger, ce n’est pas la syntaxe, c’est le nombre&lt;/h2&gt;
&lt;p&gt;Tu sais maintenant écrire une règle. La partie technique est derrière toi. Reste la partie qui tue les SIEM, la retenue.&lt;/p&gt;
&lt;p&gt;Chaque règle que tu ajoutes est une bouche de plus qui parlera. Le réflexe, une fois qu’on sait écrire, c’est d’écrire trop, une règle pour ci, une pour ça, au cas où. Trois semaines plus tard, ton flux ressemble au mur indistinct dont l’épisode 1 t’avait sorti, sauf que cette fois, c’est toi qui l’as bâti.&lt;/p&gt;
&lt;p&gt;D’où la seule règle d’hygiène qui compte, la même qu’au premier épisode.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ne crée jamais une règle dont tu ne sais pas quoi faire quand elle sonnera.&lt;/strong&gt; Si ta seule réaction possible à l’alerte est de hausser les épaules, cette règle n’a pas de raison d’exister.&lt;/p&gt;
&lt;p&gt;Le &lt;code&gt;level&lt;/code&gt; est ton outil de dosage, il va de &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/rules/rules-classification.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;0 à 15&lt;/a&gt;, le 16 existe mais reste non documenté. Sers-t’en sérieusement.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Le 0 est silencieux.&lt;/strong&gt; Il décode et observe sans jamais réveiller personne. C’est le niveau des règles socles, comme la 100010 de l’exemple. Parfaitement légitime, et sous-utilisé.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Les niveaux bas, de 2 à 7,&lt;/strong&gt; sont le bruit de fond, erreurs mineures, tentatives sans gravité.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le milieu, de 8 à 11,&lt;/strong&gt; mérite un œil.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le haut, de 12 à 14,&lt;/strong&gt; ce sont les événements de sécurité importants.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le 15 est l’attaque sévère,&lt;/strong&gt; celle qui appelle une réaction immédiate, sans faux positif attendu.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;N’invente pas de signification pour le 16, non documenté. Et surtout, ne colle pas un niveau élevé à une règle par excès de zèle. Un &lt;code&gt;level&lt;/code&gt; haut n’a de sens que si une action concrète est prévue quand il tombe. Sinon, tu fabriques de l’angoisse, pas de la sécurité.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;si-ça-ne-marche-pas&quot;&gt;Si ça ne marche pas&lt;/h2&gt;
&lt;h3 id=&quot;problème-ta-règle-ne-se-déclenche-jamais-dans-le-test&quot;&gt;Problème, ta règle ne se déclenche jamais dans le test&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; le champ que tu interroges n’est pas décodé, ou la règle parente référencée dans &lt;code&gt;&amp;#x3C;if_sid&gt;&lt;/code&gt; ne matche pas ce log.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; relance &lt;code&gt;wazuh-logtest&lt;/code&gt; avec l’option verbeuse &lt;code&gt;-v&lt;/code&gt; et lis la phase 2. Si ton champ n’y apparaît pas, aucun décodeur ne le produit, il te faut donc en écrire un avant d’écrire ta règle. Vérifie aussi que l’identifiant dans &lt;code&gt;&amp;#x3C;if_sid&gt;&lt;/code&gt; correspond bien à une règle qui, elle, ramasse le log.&lt;/p&gt;
&lt;h3 id=&quot;problème-wazuh-logtest-voit-ta-règle-mais-le-manager-lignore-en-production&quot;&gt;Problème, wazuh-logtest voit ta règle mais le manager l’ignore en production&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; le service n’a pas été rechargé depuis que tu as modifié le fichier.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; &lt;code&gt;sudo systemctl restart wazuh-manager&lt;/code&gt;. L’outil de test lit tes fichiers directement, le moteur de production, lui, travaille sur le jeu de règles chargé en mémoire. Tant que tu ne recharges pas, il ne connaît pas ta nouvelle règle.&lt;/p&gt;
&lt;h3 id=&quot;problème-ta-règle-a-disparu-après-une-mise-à-jour-de-wazuh&quot;&gt;Problème, ta règle a disparu après une mise à jour de Wazuh&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; tu l’avais écrite dans &lt;code&gt;/var/ossec/ruleset/&lt;/code&gt; au lieu de &lt;code&gt;/var/ossec/etc/rules/&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; réécris-la dans &lt;code&gt;local_rules.xml&lt;/code&gt; et ne remets plus jamais les pieds dans &lt;code&gt;ruleset/&lt;/code&gt;. Ce répertoire est terrain de Wazuh, réécrit à chaque montée de version.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Ce que fait cet article.&lt;/strong&gt; Il t’apprend à écrire ta première règle de détection Wazuh, en partant d’un log réel et d’une question précise, à la tester hors production, puis à la déployer sans casser quoi que ce soit.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, la marche à suivre.&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Attrape le log brut qui t’intéresse et lance &lt;code&gt;/var/ossec/bin/wazuh-logtest&lt;/code&gt; pour voir quels champs Wazuh en extrait déjà.&lt;/li&gt;
&lt;li&gt;Écris ta règle dans &lt;code&gt;/var/ossec/etc/rules/local_rules.xml&lt;/code&gt;, identifiant entre 100000 et 120000, jamais dans &lt;code&gt;ruleset/&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Privilégie la précision, accroche-toi à une règle existante avec &lt;code&gt;&amp;#x3C;if_sid&gt;&lt;/code&gt; et compare un champ décodé avec &lt;code&gt;&amp;#x3C;field&gt;&lt;/code&gt;, plutôt que de fouiller le texte brut avec &lt;code&gt;&amp;#x3C;match&gt;&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Si le champ voulu n’est pas décodé, et seulement dans ce cas, écris un décodeur dans &lt;code&gt;/var/ossec/etc/decoders/local_decoder.xml&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Teste dans &lt;code&gt;wazuh-logtest&lt;/code&gt; jusqu’au vert, au besoin avec &lt;code&gt;-U identifiant:niveau:decodeur&lt;/code&gt; pour une validation en une commande.&lt;/li&gt;
&lt;li&gt;Recharge, &lt;code&gt;sudo systemctl restart wazuh-manager&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Règle d’or, n’écris aucune règle dont tu ne sais pas quoi faire quand elle sonnera. Le &lt;code&gt;level&lt;/code&gt; 0 pour observer sans alerter est ton ami.&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Tu es passé de lecteur à auteur. Tu ne subis plus les règles écrites par d’autres, tu poses tes propres questions à tes propres logs.&lt;/p&gt;
&lt;p&gt;Et la leçon n’est pas dans la syntaxe XML, que tu maîtriseras en trois règles. Elle est dans la retenue. Une bonne règle vise un log précis, chaîne sur ce qui existe déjà, et se tait sur le reste. Le décodeur, tu ne l’écris que forcé. Le niveau d’alerte, tu le dis honnêtement. Et chaque règle que tu ajoutes, tu la mérites par une action que tu es prêt à mener quand elle sonnera.&lt;/p&gt;
&lt;p&gt;Choisis peu de questions. Réponds-y vraiment. C’est valable pour lire, c’est valable pour écrire.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-creuser-la-doc-officielle&quot;&gt;Pour creuser, la doc officielle&lt;/h2&gt;
&lt;p&gt;Toute la syntaxe que tu viens de manipuler est documentée, page par page. Garde ces liens sous la main, ce sont tes sources.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/rules.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Référence des options de règle&lt;/a&gt; : &lt;code&gt;id&lt;/code&gt;, &lt;code&gt;level&lt;/code&gt;, &lt;code&gt;if_sid&lt;/code&gt;, &lt;code&gt;field&lt;/code&gt;, &lt;code&gt;match&lt;/code&gt;, &lt;code&gt;regex&lt;/code&gt;, et les options avancées &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/rules.html#options&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;&lt;code&gt;frequency&lt;/code&gt; et &lt;code&gt;timeframe&lt;/code&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/rules/custom.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Règles custom et &lt;code&gt;overwrite&lt;/code&gt;&lt;/a&gt;, où et comment écrire dans &lt;code&gt;local_rules.xml&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/decoders.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Syntaxe des décodeurs&lt;/a&gt; : &lt;code&gt;prematch&lt;/code&gt;, &lt;code&gt;parent&lt;/code&gt;, &lt;code&gt;regex&lt;/code&gt;, &lt;code&gt;order&lt;/code&gt;, et les &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/decoders/custom.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;décodeurs custom&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/regex.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Expressions régulières Wazuh&lt;/a&gt;, pour ne pas confondre OS_Regex et &lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/ruleset-xml-syntax/pcre2.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;PCRE2&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/ruleset/rules/rules-classification.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Classification des niveaux&lt;/a&gt;, de 0 à 15.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://documentation.wazuh.com/current/user-manual/reference/tools/wazuh-logtest.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;&lt;code&gt;wazuh-logtest&lt;/code&gt;&lt;/a&gt;, l’outil de test, options &lt;code&gt;-v&lt;/code&gt; et &lt;code&gt;-U&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;et-après-montre-à-ton-siem-ce-que-tu-bloques&quot;&gt;Et après, montre à ton SIEM ce que tu bloques&lt;/h2&gt;
&lt;p&gt;Tu sais lire ton SIEM, tu sais maintenant lui apprendre de nouvelles questions. Le prochain cran, c’est de lui donner à voir un signal qu’il ne capte pas encore, ce que tes Mac laissent tourner, et surtout ce qu’ils refusent.&lt;/p&gt;
&lt;p&gt;Au prochain épisode, on branche le contrôle d’exécution de tes Mac sur Wazuh, pour que chaque blocage devienne une alerte lisible dans le même tableau de bord que le reste. Le geste d’écriture que tu viens d’apprendre y sera ton outil de base.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire bientôt : Brancher Santa sur Wazuh, corréler ce qui s’exécute et ce qu’on bloque&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Et pour l’épisode qui précède, celui où l’on apprend à lire avant d’écrire.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/wazuh-premier-usage-siem-souverain/&quot;&gt;Ton SIEM souverain, lis-le vraiment puis fais-le passer à l’action&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>wazuh</category><category>securite</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-wazuh-regles-custom-detection-1.png" length="0" type="image/png"/></item><item><title>Ton SIEM souverain, lis-le vraiment puis fais-le passer à l&apos;action</title><link>https://macsouverain.com/wazuh-premier-usage-siem-souverain/</link><guid isPermaLink="true">https://macsouverain.com/wazuh-premier-usage-siem-souverain/</guid><description>Wazuh est installé et tu ne sais pas quoi en faire. Trois premiers usages dans le bon ordre, sans crouler sous les alertes.</description><pubDate>Sun, 02 Aug 2026 12:01:00 GMT</pubDate><content:encoded>&lt;p&gt;Tu as suivi la série SIEM. Tu as &lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;monté Wazuh en tout-en-un&lt;/a&gt; sur ton VPS durci, puis &lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;déployé les agents&lt;/a&gt;. Ton dashboard s’allume, il liste tes machines, il affiche chiffres, courbes et alertes qui montent. Et là tu restes planté devant, avec une question bête que personne ne pose dans les tutos d’installation, tu en fais quoi de toutes ces infos ?&lt;/p&gt;
&lt;p&gt;Parce qu’il faut être franc, le dashboard Wazuh, comme ça, de but en blanc, ben… ça ressemble un peu à un cockpit de Boeing. Un de nos lecteurs m’en a gentiment fait part, c’est l’origine de cette série d’articles.&lt;/p&gt;
&lt;p&gt;Je dis bien série, parce qu’après avoir un peu réfléchi à la problématique, je me suis dit qu’un seul article au format normal ne suffirait pas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La mauvaise réponse&lt;/strong&gt; à la question initiale, celle vers laquelle tout te pousse, c’est de &lt;strong&gt;tout allumer&lt;/strong&gt; d’un coup &lt;strong&gt;pour « ne rien rater »&lt;/strong&gt;. La guirlande de Noël toute éclairée, c’est beau, mais avec tellement de trucs à regarder que tu ne sais plus où donner de la tête.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Wazuh n’est pas un antivirus&lt;/strong&gt;. Il ne bloque rien avant que l’on active rootcheck et réponse active, il ne nettoie rien, en l’état il ne te protège pas. &lt;strong&gt;C’est un collecteur&lt;/strong&gt;, un moteur de règles et un stockage. Il rend visible ce qui se passe sur tes machines. Toute sa valeur naît le jour où tu lui poses deux ou trois questions précises, pas le jour où tu le laisses tout observer et où tu essaies de suivre le match en même temps.&lt;/p&gt;
&lt;p&gt;Aujourd’hui, on active tes trois premiers usages utiles, dans l’ordre, avec un fil rouge unique, ne pas te noyer sous les alertes. Ce tuto vise la branche &lt;strong&gt;4.x&lt;/strong&gt; de Wazuh, celle de toute la série SIEM, pas la nouvelle version 5.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-quil-te-faut&quot;&gt;Ce qu’il te faut&lt;/h2&gt;
&lt;p&gt;Rien à installer aujourd’hui, tout est déjà en place. On configure et on lit. Trois prérequis, tous hérités de la série.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ton manager Wazuh opérationnel, celui de l’épisode 2 SIEM.&lt;/li&gt;
&lt;li&gt;Au moins un agent en état &lt;code&gt;Active&lt;/code&gt;, celui de l’épisode 3.&lt;/li&gt;
&lt;li&gt;Ton accès au tableau de bord, verrouillé en Tailnet, comme on l’a laissé.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-déclic-wazuh-te-montre-il-ne-te-défend-pas&quot;&gt;Le déclic, Wazuh te montre, il ne te défend pas&lt;/h2&gt;
&lt;p&gt;Imagine une caméra de surveillance sans vigile derrière l’écran. Elle filme tout, parfaitement. Elle n’arrête personne. Wazuh, c’est ça, la caméra. Le vigile, c’est toi.&lt;/p&gt;
&lt;p&gt;Et un vigile qui fixe quarante écrans en même temps ne voit plus rien. C’est le piège qui tue les SIEM de PME, pas en six mois, en deux semaines.&lt;/p&gt;
&lt;p&gt;Classique, tu actives tous les modules le premier jour, chacun déverse ses centaines, voire milliers, d’événements, tu ne tunes rien, le signal se perd dans le vacarme, et au bout de quinze jours tu ne regardes même plus le dashboard.&lt;/p&gt;
&lt;p&gt;Là, ton SIEM est mort. Pas planté, pas cassé, juste ignoré. Ce qui revient au même.&lt;/p&gt;
&lt;p&gt;La règle d’or de tout ce qui suit, écris-la sur un post-it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;N’active aucune règle dont tu ne sais pas quoi faire quand elle se déclenchera.&lt;/strong&gt; Si une alerte tombe et que ta seule réaction possible est de hausser les épaules, cette alerte n’aurait pas dû exister.&lt;/p&gt;
&lt;p&gt;Trois usages, dans cet ordre précis. Chacun répond à une question, et à une seule.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-change-ce-que-ça-ne-change-pas&quot;&gt;Ce que ça change, ce que ça ne change pas&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça change.&lt;/strong&gt; À la fin, tu ne regardes plus un mur d’alertes indistinct. Tu as trois vues qui t’apportent chacune une réponse claire, tu sais laquelle ouvrir et pourquoi.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça ne change pas.&lt;/strong&gt; Tu observes, tu ne bloques toujours pas. Décider quelles applications ont le droit de tourner, couper une connexion hostile, ça viendra, c’est un autre étage. Ici, on apprend à regarder juste avant d’apprendre à agir.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;premier-usage-laudit-de-configuration-ta-seule-liste-qui-a-une-fin&quot;&gt;Premier usage, l’audit de configuration, ta seule liste qui a une fin&lt;/h2&gt;
&lt;p&gt;Commence par le &lt;strong&gt;SCA&lt;/strong&gt;, pour &lt;strong&gt;Security Configuration Assessment&lt;/strong&gt;, l’audit de configuration de sécurité. Et commence par lui pour une raison très concrète, c’est le seul module de Wazuh qui produit une liste &lt;strong&gt;finie&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Tous les autres crachent un flux sans fin, des événements qui tombent tant que tes machines tournent. Le SCA, lui, prend une machine, la compare à une politique de durcissement de référence, du type des référentiels CIS, et te rend un résultat borné, un score et une liste de points en échec. Cent quatre-vingts vérifications, une partie sans objet sur ta machine, et sur le reste tu en passes à peu près la moitié d’entrée. L’autre moitié te donne une liste d’échecs, bornée, que tu traites en une heure, sans rien tuner, dès le premier jour.&lt;/p&gt;
&lt;p&gt;Dans le dashboard, ouvre la vue d’audit de configuration de l’un de tes agents, l’onglet &lt;strong&gt;Configuration Assessment&lt;/strong&gt; si ton interface est en anglais. Tu y trouves un score global et le détail des contrôles, chacun avec son verdict, réussi ou échoué, et surtout la remédiation associée, la valeur attendue et comment l’atteindre.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/08/capture-01-configuration-assessment-wazuh-premier-usage-siem-souverain-1.png&quot; alt=&quot;L&amp;#x27;onglet Configuration Assessment de Wazuh sur une machine Ubuntu, le score global de 48 pour cent, la répartition passed, failed, not applicable, et la liste des contrôles CIS avec leur verdict.&quot;&gt;&lt;/p&gt;
&lt;p&gt;Ta seule tâche, la voici.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Trie par contrôles en échec.&lt;/li&gt;
&lt;li&gt;Repère ceux qui comptent vraiment pour toi, un service SSH mal configuré, un compte sans expiration de mot de passe, une permission trop large sur un répertoire système.&lt;/li&gt;
&lt;li&gt;Corrige, relance le scan, regarde ton score grimper.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;C’est gratifiant, et ce n’est pas un hasard si je te le fais faire en premier. Le SCA ne te réveille pas la nuit, il ne t’inonde pas.&lt;/p&gt;
&lt;p&gt;C’est une check-list que tu ouvres, que tu traites, et que tu refermes. Le contraire exact d’une source d’angoisse. Le bon endroit pour prendre confiance avant d’affronter les modules qui, eux, parlent en continu.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;deuxième-usage-la-surveillance-de-fichiers-surveille-peu-pour-entendre-quelque-chose&quot;&gt;Deuxième usage, la surveillance de fichiers, surveille peu pour entendre quelque chose&lt;/h2&gt;
&lt;p&gt;Le &lt;strong&gt;FIM&lt;/strong&gt;, pour &lt;strong&gt;File Integrity Monitoring&lt;/strong&gt;, la surveillance d’intégrité des fichiers. Tu l’as croisé à l’épisode 3, quand on l’a déployé via les groupes. Aujourd’hui, ce n’est pas la mécanique qui compte, c’est la &lt;strong&gt;discipline&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Le réflexe naturel, catastrophique, c’est de vouloir surveiller large. Tout &lt;code&gt;/etc&lt;/code&gt;, tout &lt;code&gt;/usr&lt;/code&gt;, tant qu’à faire tout le disque. Sauf que chaque mise à jour de paquets réécrit des dizaines de fichiers parfaitement légitimes, et le FIM t’alerte à chaque fois. Tu surveilles tout, donc tu entends un vacarme permanent, donc tu n’entends plus rien.&lt;/p&gt;
&lt;p&gt;Fais l’inverse. Choisis trois ou quatre répertoires qui comptent vraiment, tes données clients, ta comptabilité, un partage métier, les configs critiques d’un service exposé. Ceux où un changement que tu n’as pas décidé est, en soi, une nouvelle qui mérite ton attention.&lt;/p&gt;
&lt;p&gt;La configuration, tu la pousses proprement par le groupe, dans le fichier partagé du manager, exactement comme à l’épisode 3.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;syscheck&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;directories&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; check_all&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;yes&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; realtime&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;yes&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;/srv/donnees-clients&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;directories&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;syscheck&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le &lt;code&gt;check_all=&quot;yes&quot;&lt;/code&gt; enregistre tout ce qui caractérise un fichier, empreintes, taille, propriétaire, permissions, dates, la moindre altération est vue. Le &lt;code&gt;realtime=&quot;yes&quot;&lt;/code&gt; demande l’alerte à l’instant du changement.&lt;/p&gt;
&lt;p&gt;Une nuance d’honnêteté déjà posée dans la série, ce temps réel n’existe que sur Linux et Windows. Sur macOS, le FIM retombe sur des scans planifiés, une modification entre deux passages n’est vue qu’au passage suivant.&lt;/p&gt;
&lt;p&gt;Le principe à retenir tient en une phrase. &lt;strong&gt;Chaque répertoire surveillé est une promesse de réagir.&lt;/strong&gt; Ne surveille que ce sur quoi tu bougerais vraiment. Le reste, c’est du bruit que tu t’infliges à toi-même.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;Déploie Wazuh partout, le SIEM voit enfin ton réseau&lt;/a&gt;&lt;/em&gt; pour la mécanique complète des groupes et du FIM par agent.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;troisième-usage-la-détection-de-vulnérabilités-linventaire-qui-vieillit-tout-seul&quot;&gt;Troisième usage, la détection de vulnérabilités, l’inventaire qui vieillit tout seul&lt;/h2&gt;
&lt;p&gt;En troisième seulement, la détection de vulnérabilités, l’onglet &lt;strong&gt;Vulnerability Detection&lt;/strong&gt; du dashboard, que les versions récentes ne rangent plus à côté des deux premiers mais dans la section chasse aux menaces. Le principe est élégant, l’agent dresse l’inventaire des paquets installés sur chaque machine, et le manager croise cet inventaire avec un flux de failles connues, les fameuses CVE, pour &lt;strong&gt;Common Vulnerabilities and Exposures&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Le résultat, c’est une liste, par machine, des logiciels dont une version vulnérable est installée chez toi. Puissant. Et pour ça même, à manier en dernier des trois, parce que c’est le module qui déverse le plus. Sur un parc réel, tu vas voir tomber des centaines d’entrées, la plupart en sévérité basse ou moyenne.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/08/capture-02-vulnerability-detection-wazuh-premier-usage-siem-souverain-1.png&quot; alt=&quot;L&amp;#x27;inventaire des vulnérabilités dans Wazuh, filtré sur la seule sévérité critique, chaque ligne une machine, un paquet, sa version et la CVE correspondante, 255 entrées à trier.&quot;&gt;&lt;/p&gt;
&lt;p&gt;Si tu débarques là-dessus sans avoir dompté les deux premiers usages, tu te noies. Alors on trie, on ne lit pas tout.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Filtre par sévérité, concentre-toi sur le critique et le haut.&lt;/li&gt;
&lt;li&gt;Croise avec l’exposition réelle, une faille sur un service accessible depuis le Tailnet n’a pas le même poids qu’une faille sur un paquet jamais lancé, ou accessible depuis le net.&lt;/li&gt;
&lt;li&gt;Traite, patche ou mets à jour, puis laisse le prochain inventaire confirmer que la ligne a disparu.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Le piège ici est sournois. Une liste de vulnérabilités que tu ne tries jamais est &lt;strong&gt;pire que pas de liste du tout&lt;/strong&gt;, parce qu’elle t’installe dans un faux sentiment de sécurité, tu crois savoir, tu ne fais rien. Un inventaire ne vaut que par le tri qui le suit, et par les correctifs qu’il engendre.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-quon-nallume-surtout-pas-encore&quot;&gt;Ce qu’on n’allume surtout pas encore&lt;/h2&gt;
&lt;p&gt;Wazuh embarque d’autres modules, et deux d’entre eux te font de l’œil. Résiste.&lt;/p&gt;
&lt;p&gt;Le &lt;strong&gt;rootcheck&lt;/strong&gt;, la détection de rootkits et d’anomalies système, tourne déjà en tâche de fond par défaut. Ne t’y attarde pas pour autant, tant que les trois premiers usages ne sont pas calmes et lus, ce n’est pas là qu’est ta priorité du moment.&lt;/p&gt;
&lt;p&gt;Et surtout, surtout, la &lt;strong&gt;réponse active&lt;/strong&gt;. Ce module exécute des scripts en réaction à une alerte, bloquer une adresse, tuer un processus, couper une session. Sur le papier, c’est le rêve, le SIEM qui se défend seul. En vrai, branché avant d’avoir tuné tes règles, c’est le meilleur moyen de te &lt;strong&gt;verrouiller toi-même hors de ta propre infrastructure&lt;/strong&gt; sur un faux positif. Il existe bien un garde-fou, une liste blanche d’adresses jamais bloquées où tu mets ton IP d’admin, mais c’est justement le genre de réglage qu’on ne cale bien qu’une fois qu’on maîtrise le reste.&lt;/p&gt;
&lt;p&gt;La réponse active vient en dernier, une fois que tu connais tes règles par cœur et que tu leur fais confiance. Pas avant.&lt;/p&gt;
&lt;p&gt;Tu vois le fil, il n’a pas changé depuis le premier paragraphe. On active dans l’ordre du plus calme au plus bavard, et on n’automatise une réaction que le jour où on sait exactement ce qu’elle va faire.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-limites-réelles&quot;&gt;Les limites réelles&lt;/h2&gt;
&lt;p&gt;Wazuh est un excellent outil, souverain, gratuit, sans limite d’agents. Il a aussi des angles morts précis, que tu dois connaître pour ne pas te faire piéger.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sur Mac, la surveillance de fichiers n’est pas en temps réel.&lt;/strong&gt; On l’a vu plus haut, macOS retombe sur des scans planifiés. Concrètement, sur un parc majoritairement Apple, ne compte jamais sur une alerte à la seconde côté FIM, raisonne en fenêtres de scan et place tes garde-fous temps réel sur tes endpoints Linux et Windows.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le SCA juge ta machine contre des politiques génériques.&lt;/strong&gt; Certains contrôles ne collent pas à ta configuration réelle et remontent en échec alors que ton choix est délibéré et justifié. Ces faux positifs se trient à la main, une fois, puis se mettent de côté. C’est du travail d’humain, pas un défaut à corriger dans l’outil.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La détection de vulnérabilités raisonne au niveau du paquet et de sa version.&lt;/strong&gt; Elle peut te signaler une CVE que ta distribution a déjà corrigée par un correctif rétroporté sans changer le numéro de version affiché. Résultat, une alerte pour un trou déjà bouché.&lt;/p&gt;
&lt;p&gt;Croise systématiquement avec les bulletins de sécurité de ta distribution avant de t’affoler sur une ligne critique.&lt;/p&gt;
&lt;p&gt;Aucune de ces limites n’est rédhibitoire. Toutes se gèrent, à condition de les avoir en tête avant, pas après une nuit blanche.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;si-ça-ne-marche-pas&quot;&gt;Si ça ne marche pas&lt;/h2&gt;
&lt;h3 id=&quot;problème-laudit-de-configuration-reste-vide-ou-à-zéro&quot;&gt;Problème, l’audit de configuration reste vide ou à zéro&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; le module n’est pas actif sur l’agent, ou aucune politique n’est chargée pour ce système.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; vérifie que le SCA est activé dans la configuration de l’agent et qu’une politique correspond bien à son système d’exploitation. Relance un scan et laisse-lui le temps de remonter.&lt;/p&gt;
&lt;h3 id=&quot;problème-le-fim-ne-talerte-pas-en-temps-réel-sur-un-mac&quot;&gt;Problème, le FIM ne t’alerte pas en temps réel sur un Mac&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable, aucune&lt;/strong&gt;. C’est le comportement attendu, le temps réel n’existe pas côté macOS.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; rien à réparer. Sur Mac, tu raisonnes en scans périodiques. Si tu veux du temps réel, c’est sur tes endpoints Linux et Windows que ça se joue.&lt;/p&gt;
&lt;h3 id=&quot;problème-la-détection-de-vulnérabilités-naffiche-rien&quot;&gt;Problème, la détection de vulnérabilités n’affiche rien&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; le module vient d’être activé et son flux de failles n’a pas encore été téléchargé, ou l’inventaire des paquets n’est pas encore remonté.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; patiente le temps du premier téléchargement du flux et de la première remontée d’inventaire. Si après un délai raisonnable c’est toujours vide, vérifie que le module est bien activé côté manager.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Ce que fait cet article.&lt;/strong&gt; Une fois Wazuh installé et les agents déployés, il te dit quoi faire en premier, sans te noyer. Trois usages dans l’ordre, du plus calme au plus bavard, et deux modules qu’on laisse éteints exprès.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, la marche à suivre.&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Ouvre l’audit de configuration d’un agent, trie les contrôles en échec, corrige les quelques-uns qui comptent, relance le scan.&lt;/li&gt;
&lt;li&gt;Restreins la surveillance de fichiers à trois ou quatre répertoires vraiment sensibles, via le groupe, bloc &lt;code&gt;&amp;#x3C;syscheck&gt;&lt;/code&gt; avec &lt;code&gt;check_all=&quot;yes&quot;&lt;/code&gt; et &lt;code&gt;realtime=&quot;yes&quot;&lt;/code&gt; (temps réel sur Linux et Windows seulement, pas macOS).&lt;/li&gt;
&lt;li&gt;Active la détection de vulnérabilités, filtre par sévérité, traite le critique et le haut, ignore le tout-venant.&lt;/li&gt;
&lt;li&gt;Laisse le rootcheck et surtout la réponse active &lt;strong&gt;éteints&lt;/strong&gt; tant que le reste n’est pas calme et maîtrisé.&lt;/li&gt;
&lt;li&gt;Règle d’or, n’active aucune règle dont tu ne sais pas quoi faire quand elle se déclenchera.&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Ton SIEM était allumé et muet pour toi, il devient lisible. Tu es parti d’un dashboard qui crépitait sans te parler, tu repars avec trois vues qui répondent chacune à une question nette.&lt;/p&gt;
&lt;p&gt;L’audit de configuration t’a donné une liste finie à traiter en une heure. La surveillance de fichiers, restreinte à l’essentiel, ne t’alerte plus que sur ce qui compte. La détection de vulnérabilités te dresse l’inventaire de ce qui doit être patché, à condition que tu le tries. Et deux modules puissants restent au repos, parce qu’on ne les branche qu’une fois le reste dompté.&lt;/p&gt;
&lt;p&gt;La techno n’était pas le dur. Le dur, c’est la retenue. Choisis peu de questions, mais réponds-y vraiment.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;et-après-apprends-à-ton-siem-à-agir&quot;&gt;Et après, apprends à ton SIEM à agir&lt;/h2&gt;
&lt;p&gt;Tu viens d’apprendre à faire parler Wazuh, à lui poser peu de questions et à les écouter vraiment. C’est la moitié du chemin. L’autre moitié, c’est de le faire passer de spectateur à acteur, sans qu’il se retourne contre toi.&lt;/p&gt;
&lt;p&gt;Cet article ouvre la marche. La suite s’écrit un cran à la fois, dans le même esprit, du plus calme au plus engageant.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Épisode 2, écrire tes propres règles.&lt;/strong&gt; Pour qu’il te réveille sur ce qui compte chez toi et se taise sur le reste.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 3, brancher Santa sur Wazuh.&lt;/strong&gt; Pour que ton SIEM voie non seulement ce qui s’exécute sur tes &lt;a href=&quot;https://macsouverain.com/santa-controle-execution-mac-siem-souverain/&quot;&gt;Mac sous contrôle d’exécution&lt;/a&gt;, mais aussi ce qu’on a bloqué.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 4, la réponse active.&lt;/strong&gt; Le module qu’on a laissé éteint exprès aujourd’hui, celui qui agit seul, bloque une adresse, coupe une session, et qu’on ne branche qu’une fois qu’on lui fait vraiment confiance.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 5, la conformité SCA vers NIS2.&lt;/strong&gt; Transformer l’audit de configuration en rapport de conformité présentable à un auditeur.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Et pour l’ajustement fin, calibrer les seuils, régler les notifications pour n’être réveillé que quand ça compte vraiment, la série a son chapitre dédié.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/alerting-cout-total-siem-souverain/&quot;&gt;Alerting et coût total, le bilan de ton SIEM souverain&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;rappel-de-la-série&quot;&gt;Rappel de la série&lt;/h2&gt;
&lt;p&gt;Cet article ouvre la suite de la série SIEM souverain, celle où on apprend à ton SIEM à lire puis à agir. Si tu débarques, rattrape d’abord les épisodes qui précèdent.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;Épisode 0, le fondement.&lt;/a&gt;&lt;/strong&gt; Pourquoi une PME a besoin d’un SIEM souverain, NIS2, RGPD, et le coût du statu quo.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;Épisode 1, le socle.&lt;/a&gt;&lt;/strong&gt; Le VPS durci hors CLOUD Act.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;Épisode 2, Wazuh en tout-en-un.&lt;/a&gt;&lt;/strong&gt; Manager, indexeur et tableau de bord sur un seul nœud.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;Épisode 3, les agents partout.&lt;/a&gt;&lt;/strong&gt; Déploiement sur tes serveurs, Mac et Windows.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/&quot;&gt;Épisode 4, la défense réseau.&lt;/a&gt;&lt;/strong&gt; Bloquer les attaquants connus avant qu’ils n’arrivent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;Épisode 5, le filtre mail.&lt;/a&gt;&lt;/strong&gt; Anti-spam et anti-hameçonnage devant ta messagerie.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/santa-controle-execution-mac-siem-souverain/&quot;&gt;Épisode 6, le contrôle d’exécution sur les Mac.&lt;/a&gt;&lt;/strong&gt; Décider quelles applications ont le droit de démarrer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/alerting-cout-total-siem-souverain/&quot;&gt;Épisode 7, alerting et coût total.&lt;/a&gt;&lt;/strong&gt; Notifications calibrées et bilan financier honnête face au SaaS.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>wazuh</category><category>securite</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-wazuh-premier-usage-siem-souverain-1.png" length="0" type="image/png"/></item><item><title>Mac et Tailscale, ton réseau privé wireguard en 15 min chrono</title><link>https://macsouverain.com/tailscale-multi-mac/</link><guid isPermaLink="true">https://macsouverain.com/tailscale-multi-mac/</guid><description>Monte un réseau privé chiffré entre tous tes Macs en 15 minutes, sans ouvrir un port ni toucher au routeur. Installation, MagicDNS, accès aux fichiers à distance, accès à tes services sans les exposer, les vraies limites.</description><pubDate>Sat, 01 Aug 2026 07:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Tu as plus d’un Mac. Un fixe à la maison, un portable qui bouge, peut-être un vieux Mac recyclé en serveur de fichiers, ou encore un Mac mini dédié pour un LLM souverain &lt;em&gt;(&lt;a href=&quot;https://macsouverain.com/ton-ia-peut-etre-eteinte-monte-la-tienne/&quot;&gt;lire l’article&lt;/a&gt;)&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Ce LLM, tu veux pouvoir l’interroger où que tu sois, et quel que soit le Mac sur lequel tu te trouves.&lt;/p&gt;
&lt;p&gt;Et tes dossiers, idem. Parce que pour le moment, sans iCloud, à chaque fois que tu veux passer un dossier de l’un à l’autre, c’est la même comédie : AirDrop qui fait la sourde oreille, une clé USB qu’on ne retrouve pas, ou un partage réseau qui marchait la semaine dernière et plus aujourd’hui.&lt;/p&gt;
&lt;p&gt;Il existe une façon propre de régler ça une fois pour toutes. Tu mets toutes tes machines sur un même réseau privé, un mesh, chiffré de bout en bout par un protocole béton, le WireGuard, où chaque Mac peut joindre les autres directement, qu’ils soient dans la même pièce, à l’autre bout du pays ou sur un autre continent.&lt;/p&gt;
&lt;p&gt;Le tout en un quart d’heure, &lt;strong&gt;sans ouvrir un seul port, sans toucher aux réglages de ta box et sans terminal&lt;/strong&gt;. Avoue, t’es bluffé, non ?&lt;/p&gt;
&lt;p&gt;Cet outil s’appelle Tailscale, et voici comment on monte le réseau.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;un-mesh-vpn-cest-quoi-au-juste&quot;&gt;Un mesh VPN, c’est quoi au juste&lt;/h2&gt;
&lt;p&gt;Le mot VPN, tu le connais déjà. Un VPN classique, c’est un tunnel : ton Mac se connecte à un serveur distant, et tout ton trafic passe par ce serveur. C’est parfait pour cacher ta navigation ou débloquer un catalogue à l’étranger. Mais ça ne relie pas tes machines entre elles.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/pourquoi-tu-as-besoin-dun-vpn/&quot;&gt;Pourquoi tu as besoin d’un VPN et comment le choisir&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Un mesh VPN, c’est l’idée inverse. Au lieu de tout faire transiter par un serveur central, &lt;strong&gt;chaque machine parle directement à chaque autre&lt;/strong&gt;, en ligne droite, dans un tunnel chiffré individuel. Tes cinq Macs forment une toile où chacun est relié à tous les autres. C’est de là que vient le mot mesh, le maillage.&lt;/p&gt;
&lt;p&gt;Concrètement, c’est comme si tes machines étaient toutes branchées sur le même switch réseau, dans la même pièce, avec des câbles invisibles et chiffrés. Sauf qu’elles peuvent être chez toi, à l’autre bout du pays et dans un placard à la cave (faut un câble quand même hein !), ça marche pareil.&lt;/p&gt;
&lt;p&gt;Sous le capot, Tailscale s’appuie sur &lt;a href=&quot;https://www.wireguard.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;WireGuard&lt;/a&gt;, un protocole de tunnel chiffré moderne, assez compact pour être audité de fond en comble et intégré directement &lt;strong&gt;au cœur de Linux. Mullvad, Proton VPN&lt;/strong&gt; et pas mal d’autres l’ont adopté, &lt;strong&gt;ce n’est pas un gadget maison&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Tu n’as pas à le configurer, Tailscale s’en charge. Ton boulot à toi, c’est de cliquer sur « Se connecter » sur chaque machine. Le sale travail réseau, la traversée des box et des pare-feux, c’est lui qui l’encaisse.&lt;/p&gt;
&lt;p&gt;Une chose à poser tout de suite : les applications Tailscale qui vont tourner sur tes machines sont open source et auditées. En revanche, le service se pilote depuis une console web tenue par la société Tailscale, sous juridiction US. On y reviendra en toute fin d’article, parce que ça a son importance pour la suite de la série.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-quil-te-faut&quot;&gt;Ce qu’il te faut&lt;/h2&gt;
&lt;p&gt;Trois choses, et tu les as sans doute déjà.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Au moins deux machines.&lt;/strong&gt; Deux Macs, ou un Mac et un iPhone, ou dix appareils, peu importe. Le principe est le même à partir de deux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Un compte pour t’identifier.&lt;/strong&gt; L’inscription à Tailscale passe par un fournisseur d’identité existant, Apple, Google, GitHub ou Microsoft. Pour rester dans l’esprit maison, tu peux tout à fait choisir « Se connecter avec Apple ». Pas de nouveau mot de passe à retenir.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Un quart d’heure.&lt;/strong&gt; La majeure partie sera passée à regarder deux téléchargements se terminer. Le reste, c’est des clics.&lt;/p&gt;
&lt;p&gt;Note au passage : ce guide parle de Mac, mais l’app existe aussi sur iPhone et iPad. Une fois le réseau monté, ajouter ton téléphone à la même toile prend trente secondes. Pratique pour la famille.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;installer-tailscale-sur-ton-premier-mac&quot;&gt;Installer Tailscale sur ton premier Mac&lt;/h2&gt;
&lt;p&gt;Commence par la machine devant laquelle tu es assis.&lt;/p&gt;
&lt;p&gt;Tu as deux façons de récupérer l’app. La plus simple, l’&lt;strong&gt;App Store&lt;/strong&gt; : cherche « Tailscale », installe, comme n’importe quelle app. La seconde, le &lt;strong&gt;site officiel&lt;/strong&gt;, qui te donne une version un peu plus complète côté fonctions avancées. Pour un premier réseau entre tes Macs, la version App Store suffit largement. On notera la différence plus bas, quand elle comptera.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/01-appstore-tailscale.png&quot; alt=&quot;La fiche Tailscale sur le Mac App Store, prête à installer d&amp;#x27;un clic.&quot;&gt;&lt;/p&gt;
&lt;p&gt;Une fois l’app installée, lance-la. Elle se loge dans la barre de menus, en haut à droite de ton écran, à côté de l’horloge. Clique sur son icône, puis sur « Log in ». Ton navigateur s’ouvre sur la page de connexion Tailscale. Tu choisis ton fournisseur d’identité, tu valides, et c’est fait.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/02-menubar-tailscale.png&quot; alt=&quot;Le menu Tailscale dans la barre de menus, ton réseau connecté et tes machines à portée de clic.&quot;&gt;&lt;/p&gt;
&lt;p&gt;De retour dans la barre de menus, l’icône Tailscale s’anime puis se stabilise. Ta première machine vient de rejoindre son réseau privé, que Tailscale appelle un &lt;strong&gt;tailnet&lt;/strong&gt;. Pour l’instant, elle est toute seule dessus. On va lui trouver de la compagnie.&lt;/p&gt;
&lt;p&gt;Si tu préfères tout piloter au clavier, l’app existe aussi via &lt;a href=&quot;https://brew.sh&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Homebrew&lt;/a&gt; avec &lt;code&gt;brew install tailscale&lt;/code&gt;. Mais pour un premier montage, l’app graphique est plus parlante. Reste sur elle.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ajouter-les-autres-macs-au-tailnet&quot;&gt;Ajouter les autres Macs au tailnet&lt;/h2&gt;
&lt;p&gt;Répète l’opération sur ta deuxième machine.&lt;/p&gt;
&lt;p&gt;Installe l’app, lance-la, connecte-toi. Point crucial : connecte-toi avec &lt;strong&gt;le même compte&lt;/strong&gt; que sur le premier Mac. C’est ce compte qui définit ton tailnet. Deux machines connectées avec le même identifiant se retrouvent automatiquement sur le même réseau, et se voient l’une l’autre. Rien d’autre à configurer.&lt;/p&gt;
&lt;p&gt;Recommence pour chaque Mac que tu veux ajouter. Le Mac du salon, le portable, le vieux serveur dans le placard. Chacun rejoint la toile dès qu’il se connecte avec ton compte.&lt;/p&gt;
&lt;p&gt;Pour vérifier que tout ce petit monde s’est bien réuni, ouvre la &lt;strong&gt;console d’administration&lt;/strong&gt; sur Tailscale. Tu y trouves la liste de toutes tes machines, avec leur nom, leur adresse sur le tailnet, et un point vert quand elles sont en ligne. C’est ton tableau de bord. C’est aussi là que tu virerais un appareil que tu ne reconnais pas, en un clic.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/03-console-admin.png&quot; alt=&quot;La console d&amp;#x27;administration Tailscale, toutes tes machines réunies avec leur nom et leur point vert quand elles sont en ligne.&quot;&gt;&lt;/p&gt;
&lt;p&gt;À ce stade, tes Macs sont sur le même réseau privé chiffré. Techniquement, tu pourrais déjà les joindre par leur adresse. Sauf que retenir des adresses réseau par cœur, personne n’a envie de le faire. On va régler ça.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;magicdns-appeler-tes-macs-par-leur-nom&quot;&gt;MagicDNS, appeler tes Macs par leur nom&lt;/h2&gt;
&lt;p&gt;Voici le réglage qui transforme le confort d’usage.&lt;/p&gt;
&lt;p&gt;Par défaut, chaque machine du tailnet a une adresse numérique. Fonctionnel, mais illisible. &lt;strong&gt;MagicDNS&lt;/strong&gt; remplace ces numéros par les noms de tes machines. Ton MacBook s’appelle &lt;code&gt;mack-macbook&lt;/code&gt; ? Tu le joins en tapant &lt;code&gt;mack-macbook&lt;/code&gt;, tout simplement. Ton serveur du placard s’appelle &lt;code&gt;mack-mini&lt;/code&gt; ? Pareil.&lt;/p&gt;
&lt;p&gt;Bonne nouvelle, sur un tailnet monté aujourd’hui, MagicDNS est déjà activé par défaut. Tu n’as rien à faire, sinon jeter un œil dans la console d’administration, onglet &lt;strong&gt;DNS&lt;/strong&gt;, pour confirmer qu’il est bien vert. Chaque machine du tailnet est joignable par son nom, depuis n’importe quelle autre, où qu’elle soit.&lt;/p&gt;
&lt;p&gt;Le nom de chaque machine est repris de son nom système, ce qui donne parfois des noms à rallonge, du genre &lt;code&gt;mack-macbook-de-prenom&lt;/code&gt;. Tu peux le raccourcir. Dans la console, clique sur une machine, puis sur son nom. Coupe l’interrupteur &lt;strong&gt;Auto-generate from OS hostname&lt;/strong&gt;, tape le nom court que tu veux, et valide. C’est ce nom-là qui te servira à la joindre partout.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/04-magicdns-nom.png&quot; alt=&quot;Le dialogue de renommage d&amp;#x27;une machine dans la console Tailscale, l&amp;#x27;auto-génération coupée pour saisir un nom court, réutilisé tel quel par MagicDNS.&quot;&gt;&lt;/p&gt;
&lt;p&gt;Cette résolution de noms reste strictement interne à ton tailnet. Personne d’autre que toi ne peut deviner ni joindre &lt;code&gt;mack-mini&lt;/code&gt;. C’est un annuaire privé, qui n’existe que pour tes machines.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-cas-concret-accéder-aux-fichiers-du-mac-resté-à-la-maison&quot;&gt;Le cas concret, accéder aux fichiers du Mac resté à la maison&lt;/h2&gt;
&lt;p&gt;Assez de théorie. Voici l’usage qui justifie à lui seul les quinze minutes.&lt;/p&gt;
&lt;p&gt;Tu es en déplacement avec ton portable. Le fichier dont tu as besoin est resté sur le Mac de la maison. Tu me diras, iCloud fait déjà ça. Sauf qu’iCloud, ça veut dire copier tes fichiers sur les serveurs d’Apple et ne retrouver que ce que tu y as poussé. Avec Tailscale, tu ouvres le disque du Mac distant en entier, tel quel, comme s’il était branché en USB. &lt;strong&gt;Rien ne monte dans un cloud, rien ne quitte tes machines&lt;/strong&gt;, et tu pioches le fichier depuis ton canapé d’hôtel.&lt;/p&gt;
&lt;p&gt;D’abord, sur le Mac de la maison, active le partage de fichiers. Réglages Système, &lt;strong&gt;Général&lt;/strong&gt;, &lt;strong&gt;Partage&lt;/strong&gt;, puis active &lt;strong&gt;Partage de fichiers&lt;/strong&gt;. Tu ne touches à rien d’autre. Surtout pas au routeur, surtout pas à une redirection de port. Le partage écoute, Tailscale s’occupe du chemin.&lt;/p&gt;
&lt;p&gt;Ensuite, depuis ton portable, ouvre le Finder. Menu &lt;strong&gt;Aller&lt;/strong&gt;, &lt;strong&gt;Se connecter au serveur&lt;/strong&gt;, ou le raccourci Cmd+K. Tu tapes &lt;code&gt;smb://&lt;/code&gt; suivi du nom MagicDNS de la machine, par exemple &lt;code&gt;smb://mac-maison&lt;/code&gt;. Tu valides, tu entres ton identifiant du Mac distant, et son disque s’ouvre dans une fenêtre Finder. Tu glisses ton fichier, exactement comme s’il était en local.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/05-finder-smb.png&quot; alt=&quot;La fenêtre Se connecter au serveur du Finder, l&amp;#x27;adresse smb:// suivie du nom MagicDNS de la machine.&quot;&gt;&lt;/p&gt;
&lt;p&gt;Même logique pour prendre la main sur l’écran d’un autre Mac. Sur le Mac distant, active d’abord le &lt;strong&gt;Partage d’écran&lt;/strong&gt; : Réglages Système, &lt;strong&gt;Général&lt;/strong&gt;, &lt;strong&gt;Partage&lt;/strong&gt;, &lt;strong&gt;Partage d’écran&lt;/strong&gt;. Ensuite, dans la même fenêtre « Se connecter au serveur », tape &lt;code&gt;vnc://&lt;/code&gt; suivi du nom de la machine, et tu contrôles son bureau à distance. Le Mac de tes parents qui rame ? Tu le dépannes depuis chez toi, sans TeamViewer et sans qu’un tiers voie passer la session.&lt;/p&gt;
&lt;p&gt;Tout ce trafic circule dans le tunnel chiffré. Rien ne transite par un serveur qui traîne quelque part. C’est ton Mac, ton portable, et une ligne droite chiffrée entre les deux.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-vrai-gain-ne-plus-rien-exposer&quot;&gt;Le vrai gain, ne plus rien exposer&lt;/h2&gt;
&lt;p&gt;Le transfert de fichiers, c’est l’exemple qui parle tout de suite. Mais le meilleur du mesh, c’est ce que tu arrêtes de faire : ouvrir des portes sur Internet.&lt;/p&gt;
&lt;p&gt;Avant, pour joindre ton NAS ou ton Mac depuis l’extérieur, il fallait bricoler une redirection de port sur ta box. Autrement dit, planter une porte sur l’Internet public, avec ton adresse écrite dessus. Et cette porte, elle est scannée en boucle, jour et nuit, par des robots qui testent les mots de passe à la chaîne.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Avec Tailscale, il n’y a plus de porte du tout&lt;/strong&gt;. Tes services écoutent uniquement sur le tailnet, invisibles du reste du monde. Quelqu’un qui scanne ton adresse publique ne voit rien, parce qu’il n’y a rien à voir.&lt;/p&gt;
&lt;p&gt;Ça change ce que tu peux te permettre d’héberger chez toi. Un NAS Synology, un Home Assistant, l’admin d’un petit serveur, un site que tu bricoles le week-end : tu les joins par leur nom depuis n’importe où, et ils restent injoignables pour tout le reste du monde.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tu profites de tes machines à distance sans jamais les mettre en vitrine.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Même les réseaux pourris deviennent inoffensifs. Le WiFi d’un café, d’un aéroport, d’un hôtel, ces endroits où n’importe qui peut renifler ce qui passe. Ton lien vers tes machines reste dans le tunnel chiffré, sur un réseau hostile comme ailleurs.&lt;/p&gt;
&lt;p&gt;Ce que tu échanges avec ton tailnet ne fuit pas. Et le jour où un appareil se perd ou se fait voler, tu ouvres la console, un clic, tu le révoques. Il perd l’accès au réseau sur-le-champ, avant même que tu aies fini de paniquer.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sortir-autrement-exit-node-et-dns-no-log&quot;&gt;Sortir autrement, exit node et DNS no-log&lt;/h2&gt;
&lt;p&gt;Deux réglages valent le détour si la souveraineté te titille.&lt;/p&gt;
&lt;p&gt;Le premier, l’&lt;strong&gt;exit node&lt;/strong&gt; : en l’activant sur une machine, tu fais passer tout le trafic Internet d’un autre appareil par elle. Router ton portable en voyage à travers ton Mac resté à la maison, par exemple, pour naviguer comme si tu y étais.&lt;/p&gt;
&lt;p&gt;Le second, dans l’onglet &lt;strong&gt;DNS&lt;/strong&gt; de la console : tu imposes à tout ton tailnet un résolveur qui ne journalise rien, comme &lt;a href=&quot;https://www.quad9.net&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Quad9&lt;/a&gt;, et tu coupes d’un geste ceux de ton FAI. Tes machines demandent qui est qui à un service no-log, plus à ton opérateur.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/06-dns-quad9.png&quot; alt=&quot;L&amp;#x27;onglet DNS de la console, un résolveur no-log Quad9 imposé à tout le tailnet en surchargeant ceux du FAI.&quot;&gt;&lt;/p&gt;
&lt;p&gt;Un piège à connaître : ce réglage peut être court-circuité en douce. Si ta box distribue son propre résolveur en IPv6, macOS a tendance à le préférer, et tes requêtes repartent vers ton FAI sans rien te dire.&lt;/p&gt;
&lt;p&gt;Le réflexe, une fois ton DNS no-log posé : file sur &lt;a href=&quot;https://ipleak.net&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;ipleak.net&lt;/a&gt; et vérifie qu’aucun résolveur de ton opérateur ne dépasse. S’il en sort un, coupe l’IPv6 sur ta box, ou déclare aussi ton résolveur en v6. Sinon, tu crois être chez Quad9 alors que tu es toujours chez ton FAI.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-limites-à-savoir-avant-de-te-lancer&quot;&gt;Les limites, à savoir avant de te lancer&lt;/h2&gt;
&lt;p&gt;Tailscale fait le job remarquablement bien, mais il y a des bornes réelles. Autant les connaître.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le plan gratuit est généreux, pas illimité.&lt;/strong&gt; Le plan Personal couvre largement un particulier ou une famille : jusqu’à 6 utilisateurs, avec un nombre illimité d’appareils personnels. Tant que tu montes ton propre réseau pour tes machines, tu ne verras jamais le mur.&lt;/p&gt;
&lt;p&gt;Ce n’est que si tu veux partager ton tailnet avec toute une tribu, au-delà de six personnes, que tu bascules sur un plan payant. Autre borne du gratuit : il est réservé à l’usage perso. Pour faire tourner une boîte dessus, c’est plan payant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce n’est pas un VPN d’anonymat, du moins pas par défaut.&lt;/strong&gt; Tailscale chiffre le trafic entre tes machines, mais il ne masque pas ta navigation vers le reste du web.&lt;/p&gt;
&lt;p&gt;L’exit node fait sortir ton trafic par une autre machine. Le piège : si cette machine, ton Mac de la maison par exemple, n’a pas de VPN elle-même, ton trafic ressort au grand jour depuis son adresse. Tu sors « depuis chez toi », pas anonymement.&lt;/p&gt;
&lt;p&gt;La vraie réponse, c’est l’option &lt;a href=&quot;https://tailscale.com/mullvad&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Mullvad&lt;/a&gt; intégrée à Tailscale : 5 dollars par mois pour cinq appareils, et tu utilises les serveurs Mullvad comme exit nodes, no-log, dans une cinquantaine de pays, sans quitter l’app ni créer de compte à part.&lt;/p&gt;
&lt;p&gt;Pourquoi l’add-on plutôt que lancer l’app Mullvad ou Proton VPN à côté ? Parce qu’un VPN classique qui prend la main sur tout ton trafic entre en conflit avec Tailscale et peut carrément couper ton tailnet. L’add-on, lui, cohabite proprement. C’est pour ça que je tourne avec sur mon réseau.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La version App Store est un peu bridée.&lt;/strong&gt; Pour rester dans le bac à sable d’Apple, la version App Store met de côté quelques fonctions annexes : elle ne sait pas lancer la commande &lt;code&gt;tailscale ssh&lt;/code&gt; (il faut passer par le &lt;code&gt;ssh&lt;/code&gt; classique), et perd la compatibilité Temps d’écran ainsi que les rapports de configuration complets. L’exit node, lui, fonctionne à l’identique dans les deux versions. Si un jour tu veux ces fonctions, désinstalle et reprends la version du site officiel. Pour le réseau de fichiers décrit ici, aucune différence.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;L’identité passe par un tiers.&lt;/strong&gt; Pas de compte email plus mot de passe maison : tu t’identifies via Apple, Google, GitHub ou Microsoft. C’est plus sûr techniquement, mais ça veut dire qu’un fournisseur externe est dans la boucle de connexion. Choisir Apple limite la casse si ce point te chatouille. Une nuance quand même, Tailscale propose aussi l’option OIDC, brancher ton propre fournisseur d’identité. C’est le fil qu’on tire dans le prochain article.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;et-après-couper-le-cordon-du-coordinateur&quot;&gt;Et après, couper le cordon du coordinateur&lt;/h2&gt;
&lt;p&gt;Ton réseau tourne. En quinze minutes, tu as fait ce qui aurait demandé une soirée de config réseau il y a cinq ans.&lt;/p&gt;
&lt;p&gt;Reste un détail qui va te turlupiner si tu tiens à ta souveraineté. Le petit serveur qui orchestre tout ça, celui qui présente tes machines les unes aux autres, il est tenu par une société américaine, donc soumis au droit américain, CLOUD Act compris. Washington peut donc lui réclamer ce qu’il détient sur toi, même stocké hors des États-Unis.&lt;/p&gt;
&lt;p&gt;La bonne nouvelle, tes fichiers ne fuitent pas par là, le contenu circule chiffré, en direct d’une machine à l’autre, le coordinateur n’a pas les clés. La moins bonne, il voit tout le reste : la liste de tes appareils, leurs noms, qui se connecte à qui et quand. &lt;strong&gt;La carte de ton réseau, en somme.&lt;/strong&gt; Un maillon que tu ne contrôles pas.&lt;/p&gt;
&lt;p&gt;Dans le prochain article de la série, on remplace ce maillon par le tien. On monte ton propre serveur de contrôle avec Headscale, la ré-implémentation open source du coordinateur, et là, tout le réseau t’appartient de bout en bout. Une étape de plus vers la maison souveraine.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire bientôt : Tailscale souverain, ton propre coordinateur avec Headscale&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/quest-ce-que-la-souverainete-digitale-en-pratique/&quot;&gt;Qu’est-ce que la souveraineté digitale en pratique&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques dans cet article ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>tutoriels</category><category>tailscale</category><category>reseau</category><category>vpn</category><category>mesh</category><category>macos</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-tailscale-multi-mac-1.png" length="0" type="image/png"/></item><item><title>Mets ton IA locale au travail, sans le cloud</title><link>https://macsouverain.com/mets-ton-ia-locale-au-travail/</link><guid isPermaLink="true">https://macsouverain.com/mets-ton-ia-locale-au-travail/</guid><description>Ton modèle local expose une API compatible OpenAI, chez toi. Branche-la sur tes vraies tâches via Raccourcis ou Python, sans qu&apos;aucun SaaS ne voie tes données.</description><pubDate>Tue, 28 Jul 2026 07:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Tu as installé ton modèle local. Tu lui as parlé. Tu as même coupé le Wi-Fi pour vérifier qu’il répondait encore, et il répondait. Belle démonstration. Et depuis, ton IA locale vit dans une fenêtre de chat où tu colles ton texte à la main, tu lis la réponse, tu la recolles ailleurs.&lt;/p&gt;
&lt;p&gt;Autrement dit, tu as un moteur souverain, et &lt;strong&gt;tu t’en sers comme d’un carnet&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Une IA coincée dans sa fenêtre de discussion ne rend que la moitié de ce qu’elle sait faire. L’autre moitié, celle qui compte pour de vrai, c’est quand elle travaille pendant que tu fais autre chose. Trier un lot de mails, résumer un dossier de notes, reformuler trente lignes d’un coup, sans que tu joues les copistes. Et le meilleur, c’est que le geste pour y arriver tient dans un après-midi.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire d’abord : &lt;a href=&quot;https://macsouverain.com/installer-premier-modele-ia-local-mac/&quot;&gt;Installe ton premier modèle d’IA en local sur Mac&lt;/a&gt;. Cet article part de là, un modèle qui tourne déjà chez toi.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-vrai-problème-tu-es-devenu-lassistant-de-ton-assistant&quot;&gt;Le vrai problème, tu es devenu l’assistant de ton assistant&lt;/h2&gt;
&lt;p&gt;Regarde comment tu utilises ton modèle local aujourd’hui. Tu ouvres LM Studio, tu tapes ta demande, tu attends, tu récupères le texte. Pour une question, ça va. Pour trente mails à trier ou cinquante notes à résumer, tu deviens la courroie de transmission, le maillon lent entre la tâche et la machine.&lt;/p&gt;
&lt;p&gt;C’est exactement le travail répétitif qu’une IA est censée t’enlever. Sauf que là, &lt;strong&gt;c’est toi qui l’exécutes à sa place&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Le réflexe classique, quand on veut automatiser, c’est de se tourner vers un Zapier, un IFTTT, un Make. Tu relies deux services, tu ajoutes une pincée d’IA au milieu, et ça tourne tout seul. Pratique. Sauf que chacun de ces outils est un intermédiaire cloud, et que la pincée d’IA, c’est encore un modèle distant. Tu voulais automatiser du travail sensible, tes mails, tes notes, tes documents, et tu viens de le faire transiter par deux entreprises étrangères au lieu d’une.&lt;/p&gt;
&lt;p&gt;Tu as monté ton IA en local précisément pour que rien ne sorte. Ce serait dommage de rouvrir la porte par la petite fenêtre de l’automatisation.&lt;/p&gt;
&lt;p&gt;La bonne nouvelle : tu n’as besoin d’aucun de ces services. Ton modèle local sait déjà se brancher. Il t’attend, et personne d’autre n’écoute.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;la-clé-que-tu-ne-voyais-pas-ton-modèle-expose-une-api-locale&quot;&gt;La clé que tu ne voyais pas, ton modèle expose une API locale&lt;/h2&gt;
&lt;p&gt;Voilà ce que personne ne t’a dit en installant LM Studio. La fenêtre de chat n’est qu’une des deux portes de la maison. La seconde, c’est un petit serveur qui tourne sur ta machine et qui parle le même langage que les grands modèles distants.&lt;/p&gt;
&lt;p&gt;Une image pour situer. La fenêtre de chat, c’est le comptoir du magasin, tu viens, tu demandes, on te sert. Le serveur local, c’est le quai de livraison à l’arrière, celui par où passent les palettes entières, sans faire la queue au comptoir. Même magasin, même stock, mais un accès taillé pour le volume et pour les machines.&lt;/p&gt;
&lt;p&gt;Concrètement, LM Studio peut démarrer un serveur qui écoute en local, sur ta machine et sur elle seule. N’importe quel programme sur ton Mac, un script, une app, un raccourci, peut alors lui envoyer une demande et récupérer la réponse, sans un clic de ta part. Tu passes du « je pose une question » au « ce programme pose mille questions pendant que je déjeune ».&lt;/p&gt;
&lt;p&gt;Et le détail qui fait toute la différence, c’est que cette API est &lt;strong&gt;compatible OpenAI&lt;/strong&gt;. Traduction en clair : elle parle exactement le même langage que l’API des gros fournisseurs distants. Le format de la demande, la structure de la réponse, tout est identique. Ça veut dire que la quasi-totalité des outils, tutoriels et bouts de code écrits pour « brancher une IA » fonctionnent avec ton modèle local, en changeant une seule chose, l’adresse. Au lieu de pointer vers un serveur à l’autre bout du monde, tu pointes vers &lt;code&gt;localhost&lt;/code&gt;, chez toi.&lt;/p&gt;
&lt;p&gt;Ton texte part vers ta propre machine, ta machine répond, &lt;strong&gt;rien ne franchit ta carte réseau&lt;/strong&gt;. Pas de facture à la requête. Pas de conditions d’utilisation. Pas de tiers qui lit au passage.&lt;/p&gt;
&lt;p&gt;C’est là que ton IA locale cesse d’être un jouet et devient un outil.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;allumer-le-serveur-le-seul-réglage-à-connaître&quot;&gt;Allumer le serveur, le seul réglage à connaître&lt;/h2&gt;
&lt;p&gt;Avant de brancher quoi que ce soit, il faut ouvrir le quai de livraison. C’est &lt;strong&gt;une case à cocher, littéralement&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Dans LM Studio, va dans l’onglet &lt;strong&gt;Developer&lt;/strong&gt;, celui à l’icône en chevrons &lt;code&gt;&gt;_&lt;/code&gt;, l’ancien « Local Server » des versions précédentes. Charge le modèle que tu utilises déjà, celui de l’article précédent, puis bascule le serveur sur « Start ». Une adresse s’affiche, &lt;code&gt;http://localhost:1234&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Retiens deux choses de cet écran, et une seule compte vraiment pour ta tranquillité.&lt;/p&gt;
&lt;p&gt;L’adresse commence par &lt;code&gt;localhost&lt;/code&gt;, aussi noté &lt;code&gt;127.0.0.1&lt;/code&gt;. Ça signifie « cette machine, et rien d’autre ». Le serveur n’est pas exposé au réseau, ton voisin de café ne peut pas s’y connecter, une page web ouverte dans ton navigateur non plus. C’est le comportement par défaut, et c’est le bon. Ne le change pas pour l’ouvrir à &lt;code&gt;0.0.0.0&lt;/code&gt; sans savoir précisément pourquoi, ce serait ouvrir ton quai de livraison sur la rue.&lt;/p&gt;
&lt;p&gt;Le numéro à la fin, le port, c’est juste la porte précise à laquelle frapper. Note-le, tu vas t’en servir dans deux minutes.&lt;/p&gt;
&lt;p&gt;Voilà, le serveur tourne. Ton modèle attend qu’on lui donne du travail.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/01-serveur-lmstudio.png&quot; alt=&quot;L&amp;#x27;onglet Developer de LM Studio, le serveur démarré sur http://127.0.0.1:1234 et le modèle chargé, prêt à recevoir des requêtes.&quot;&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sans-une-ligne-de-code-lapp-raccourcis&quot;&gt;Sans une ligne de code, l’app Raccourcis&lt;/h2&gt;
&lt;p&gt;Si le mot « script » te fait déjà lever les yeux au ciel, cette section est pour toi, et elle suffit à te changer la vie.&lt;/p&gt;
&lt;p&gt;macOS embarque une app qui s’appelle &lt;strong&gt;Raccourcis&lt;/strong&gt;, celle avec l’icône aux deux carrés colorés. Elle sert à enchaîner des actions automatiquement, et parmi ces actions, il y en a une qui sait parler à un serveur, exactement le nôtre. Elle s’appelle « Obtenir le contenu de l’URL ».&lt;/p&gt;
&lt;p&gt;L’idée : tu construis un raccourci qui prend un texte, l’envoie à ton modèle local avec une consigne, et te rend la réponse. Une fois monté, tu le lances quand tu veux, depuis Spotlight ou la barre des menus : il t’ouvre une fenêtre, tu tapes ta question ou tu colles ton texte, et la réponse s’affiche.&lt;/p&gt;
&lt;p&gt;Voici la recette, en clair.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;L’entrée.&lt;/strong&gt; Ton raccourci récupère un texte, celui que tu tapes ou que tu colles dans la fenêtre qui s’ouvre au lancement.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;La demande.&lt;/strong&gt; Une action « Obtenir le contenu de l’URL » pointée vers l’adresse de ton serveur, suivie de &lt;code&gt;/v1/chat/completions&lt;/code&gt;. Méthode POST, en-tête &lt;code&gt;Content-Type: application/json&lt;/code&gt;, et un corps de requête JSON qui contient le nom du modèle, ta consigne et le texte à traiter.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;La sortie.&lt;/strong&gt; Le serveur répond en JSON. Tu extrais le passage utile avec l’action « Obtenir la valeur du dictionnaire », puis tu l’affiches. Un piège t’attend là, et il fait perdre un quart d’heure à tout le monde : dans Raccourcis, le chemin pour attraper la réponse est &lt;code&gt;choices.1.message.content&lt;/code&gt;. &lt;strong&gt;Oui, &lt;code&gt;1&lt;/code&gt;, pas &lt;code&gt;0&lt;/code&gt;.&lt;/strong&gt; L’app numérote les éléments d’une liste à partir de un, quand tout le JSON du monde compte à partir de zéro. Mets &lt;code&gt;0&lt;/code&gt;, tu récoltes une erreur ; mets &lt;code&gt;1&lt;/code&gt;, tu récoltes ta réponse.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/02-raccourci-qwen.png&quot; alt=&quot;Le raccourci monté dans l&amp;#x27;app Raccourcis : l&amp;#x27;URL du serveur local en POST, le corps JSON avec le modèle et ta consigne, puis l&amp;#x27;extraction de la réponse via choices.1.message.content.&quot;&gt;&lt;/p&gt;
&lt;p&gt;Un exemple concret et immédiatement utile : un raccourci « Reformule ça proprement ». Tu le lances, tu lui colles un paragraphe bancal, ta consigne dit au modèle « réécris ce texte dans un français clair et poli », et la version corrigée s’affiche. &lt;strong&gt;Le texte n’a pas quitté ton Mac.&lt;/strong&gt; Aucun service en ligne n’a vu passer ton brouillon.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/03-question-reponse.png&quot; alt=&quot;Tu lances le raccourci, tu tapes ta question, et quelques secondes plus tard la réponse s&amp;#x27;affiche, calculée entièrement sur ta machine.&quot;&gt;&lt;/p&gt;
&lt;p&gt;Le premier montage demande un peu de patience, le temps de placer les bonnes actions dans le bon ordre. Après, tu le dupliques et tu changes juste la consigne. « Résume en trois points », « traduis en anglais », « extrais les dates et les montants ». Un raccourci par usage, tous branchés sur le même moteur qui dort sur ta machine.&lt;/p&gt;
&lt;p&gt;C’est la voie sans code, et pour beaucoup de gens, elle est largement suffisante.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-aller-plus-loin-quelques-lignes-de-python&quot;&gt;Pour aller plus loin, quelques lignes de Python&lt;/h2&gt;
&lt;p&gt;Tu veux traiter non pas un texte, mais un dossier entier ? Là, un petit script fait ce qu’aucun clic ne fera aussi bien. Pas besoin d’être développeur, juste de recopier et d’adapter.&lt;/p&gt;
&lt;p&gt;Le principe est le même que pour Raccourcis, en plus souple : ton script parle au serveur local, en boucle, sur autant d’éléments que tu veux. Et comme l’API est compatible OpenAI, tu peux utiliser la bibliothèque Python officielle d’OpenAI en lui donnant simplement l’adresse de ta machine au lieu de celle du cloud.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;python&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;from&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; openai &lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; OpenAI&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6A737D&quot;&gt;# On pointe la bibliothèque vers TON serveur local, pas vers le cloud&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;client &lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; OpenAI(&lt;/span&gt;&lt;span style=&quot;color:#E36209&quot;&gt;base_url&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;http://localhost:1234/v1&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;color:#E36209&quot;&gt;api_key&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;local&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;)&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;def&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; demande&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;(consigne, texte):&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    reponse &lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; client.chat.completions.create(&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#E36209&quot;&gt;        model&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;local-model&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;,  &lt;/span&gt;&lt;span style=&quot;color:#6A737D&quot;&gt;# mets ici l&apos;identifiant du modèle chargé, visible dans l&apos;onglet Developer&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#E36209&quot;&gt;        messages&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;[&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;            {&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;role&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;system&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;content&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: consigne},&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;            {&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;role&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;user&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;content&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: texte},&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;        ],&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    )&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;    return&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; reponse.choices[&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;].message.content&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;En local, LM Studio ignore la clé, n’importe quelle chaîne non vide fait l’affaire, « local » ici. Pour &lt;code&gt;model&lt;/code&gt;, indique l’identifiant du modèle que tu as chargé, celui affiché dans l’onglet Developer.&lt;/p&gt;
&lt;p&gt;Cette poignée de lignes, c’est le socle. Autour, tu enroules la tâche que tu veux. Trois recettes qui rapportent gros, tout de suite.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Résumer un dossier de notes ou de mails exportés.&lt;/strong&gt; Tu boucles sur les fichiers d’un dossier, tu passes chacun à la fonction avec la consigne « résume en trois points », tu écris le résumé à côté. Cinquante notes digérées le temps d’un café, et pas une ligne partie ailleurs que dans ta RAM.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Trier et classer des documents.&lt;/strong&gt; Tu demandes au modèle de coller une étiquette à chaque fichier, « facture », « contrat », « courrier », « à ignorer », puis ton script range chaque document dans le bon sous-dossier selon la réponse. Le tri intelligent que tu paierais à un service cloud, tu le fais tourner chez toi, gratuitement, sur des documents qui n’ont rien à faire dehors.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Reformuler ou nettoyer par lot.&lt;/strong&gt; Une colonne de commentaires clients à uniformiser, une liste de titres à réécrire, un export à mettre au propre. Tu boucles, le modèle passe sur chaque ligne, tu récupères un fichier propre. Le genre de corvée qui prend une heure à la main et deux minutes en local.&lt;/p&gt;
&lt;p&gt;Le point commun de ces trois recettes : elles sont répétitives, elles sont un peu sensibles, et elles n’ont aucune raison de sortir de ta machine. C’est le terrain de jeu naturel du local. J’y fais passer mes propres lots de notes depuis des mois, et l’idée qu’un brouillon parte chez un tiers me paraît aujourd’hui aussi bizarre que d’imprimer mon journal intime chez le voisin.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-change-et-ce-que-ça-ne-fait-pas&quot;&gt;Ce que ça change, et ce que ça ne fait pas&lt;/h2&gt;
&lt;p&gt;Ton modèle local n’a pas la puissance brute du meilleur modèle distant. Sur une reformulation, un tri, un résumé, la différence est invisible. Sur un raisonnement tordu en dix étapes, elle existe encore, on en a parlé en montant ta machine. Le local n’est pas là pour gagner tous les concours. Il est là pour abattre, en silence et sans facture, la montagne de travail répétitif qui fait l’essentiel de ton volume.&lt;/p&gt;
&lt;p&gt;Et le bénéfice cardinal ne se mesure pas en points de performance. Il se mesure en &lt;strong&gt;ce qui ne se passe pas&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Pas de requête envoyée à un serveur étranger. Pas de conditions d’utilisation qui changent un matin. Pas de facture qui grimpe avec ton usage. Pas de SaaS d’automatisation qui garde une copie de ce que tu lui fais transiter. Ton texte entre dans ta machine, en ressort transformé, et n’a croisé personne. C’est le même contrat que pour ton modèle en chat, étendu à tout ce que tu automatises.&lt;/p&gt;
&lt;p&gt;Reste une limite qu’il faut nommer. Ce que tu viens de brancher, c’est du sur-mesure, tes scripts, tes raccourcis, à toi de les entretenir. Le jour où tu voudras connecter ton IA à des outils entiers, ton agenda, ton dépôt de code, ton système de fichiers, de façon standardisée, il existe une autre voie, plus puissante et plus profonde. Elle porte un nom, MCP, et elle ouvre une porte qu’il faut savoir verrouiller avant de s’en servir. C’est le cran d’après, et il mérite son propre article.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Ton modèle local expose une API, chez toi, compatible avec les outils du marché. Tu l’allumes en cochant une case dans LM Studio. Tu la branches sans code avec Raccourcis, ou avec quelques lignes de Python pour traiter des lots entiers. Et tu automatises enfin le travail répétitif que tu faisais à la main, sans qu’un seul octet ne quitte ta machine.&lt;/p&gt;
&lt;p&gt;Le modèle que tu as installé la semaine dernière ne dormait qu’à moitié. Tu viens de le mettre au travail. Choisis une corvée, une seule, celle qui te gonfle le plus, et &lt;strong&gt;fais-lui faire ce soir&lt;/strong&gt;. Le reste suivra tout seul.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/ton-ia-peut-etre-eteinte-monte-la-tienne/&quot;&gt;Ton IA peut être éteinte par les US, monte la tienne&lt;/a&gt;, le pourquoi de toute cette histoire.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sources&quot;&gt;Sources&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;L’outil et son serveur local&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://lmstudio.ai/docs/developer/core/server&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;LM Studio, documentation du serveur local&lt;/a&gt;, l’application embarque un serveur qui tourne sur ta machine.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://lmstudio.ai/docs/developer/openai-compat&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;LM Studio, compatibilité OpenAI&lt;/a&gt;, les endpoints &lt;code&gt;/v1/*&lt;/code&gt; et le port &lt;code&gt;1234&lt;/code&gt; par défaut.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;La voie sans code&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://support.apple.com/fr-fr/guide/shortcuts-mac/apd58d46713f/mac&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Apple, faire une requête d’API dans Raccourcis&lt;/a&gt;, l’action « Obtenir le contenu de l’URL » en POST JSON.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://support.apple.com/fr-fr/guide/shortcuts-mac/apdde2dfe749/mac&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Apple, analyser des données JSON dans Raccourcis&lt;/a&gt;, pour extraire la réponse du modèle.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;La voie scriptée&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/openai/openai-python&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Bibliothèque Python OpenAI&lt;/a&gt;, réutilisable contre un serveur local via &lt;code&gt;base_url&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ia</category><category>modele-local</category><category>automatisation</category><category>api-locale</category><category>lm-studio</category><category>raccourcis</category><category>macos</category><category>tutoriels</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-mets-ton-ia-locale-au-travail-1.png" length="0" type="image/png"/></item><item><title>Passwork, app mdp « Made in EU » dehors, certifiée FSB dedans</title><link>https://macsouverain.com/made-in-eu-souverainete-logicielle/</link><guid isPermaLink="true">https://macsouverain.com/made-in-eu-souverainete-logicielle/</guid><description>Un logiciel vendu Made in EU, du code poussé depuis la Russie. Le label n&apos;a aucune valeur juridique. La grille pour vérifier ta chaîne logicielle.</description><pubDate>Mon, 27 Jul 2026 07:00:00 GMT</pubDate><content:encoded>&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Une société de logiciels basée à Barcelone. Un gestionnaire de mots de passe vendu à des administrations européennes. Sur le site, jusqu’à récemment, deux mentions rassurantes : « Made in EU 2017 » et « no affiliations with any US, Russian, or other non-European entities ».&lt;/p&gt;
&lt;p&gt;Petit problème. Le logiciel est bien affilié à la Russie. Et le code source est certifié par &lt;strong&gt;le FSB&lt;/strong&gt;, qui &lt;strong&gt;y a eu accès&lt;/strong&gt;. Presque rien en somme.&lt;/p&gt;
&lt;p&gt;Le 17 juillet 2026, un consortium mené par l’OCCRP et VSquare, avec une dizaine de rédactions dont Le Monde, NU.nl, De Groene Amsterdammer, Investico et De Tijd, publie une enquête. Le code de ce logiciel européen est développé en Russie, à Arkhangelsk, et les mises à jour transitent par une entité aux Émirats. Les deux mentions rassurantes ont disparu du site après les questions des journalistes.&lt;/p&gt;
&lt;p&gt;Ce papier n’est pas seulement sur Passwork. Passwork n’est qu’un exemple qui prouve, une fois de plus, l’incompétence de Bruxelles. Retiens bien ça, &lt;strong&gt;« Made in EU » sur une page produit n’a aucune valeur juridique, et ne te protège de rien&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Personne, ni Bruxelles, ni un label, ne vérifie ça à ta place. Alors on va apprendre à le faire.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-problème--un-drapeau-ne-prouve-rien&quot;&gt;Le problème : un drapeau ne prouve rien&lt;/h2&gt;
&lt;p&gt;Tu choisis un logiciel pour protéger tes données. Tu vois « européen », tu vois un siège dans l’UE, tu te dis que la souveraineté est cochée. Tu viens de confondre deux choses qui n’ont rien à voir.&lt;/p&gt;
&lt;p&gt;L’adresse d’immatriculation d’une société te dit où sont ses avocats et ses impôts. Elle ne te dit pas d’où vient le code qui tourne sur ta machine. Ce sont deux chaînes distinctes : la chaîne juridique, et la chaîne d’approvisionnement logicielle. La première est facile à afficher sur un site. La seconde est invisible, et c’est la seule qui compte.&lt;/p&gt;
&lt;p&gt;Prends le cas documenté par l’enquête. Passwork Europe S.L. est bien immatriculée à Barcelone. Mais Passwork LLC, elle, est enregistrée à Arkhangelsk, en Russie, en novembre 2022. Même logo, base de code d’origine commune, et des manuels utilisateurs que l’enquête décrit comme « virtually indistinguishable aside from the language ». Sur les deux versions publiées début avril 2026, un chercheur relève un script d’installation d’environ 517 lignes qu’il qualifie de « basically identical ».&lt;/p&gt;
&lt;p&gt;Deux produits présentés comme séparés. &lt;strong&gt;Un seul code, ou presque.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Le point n’est pas « une société russe, c’est mal ». Le point est plus gênant : rien sur la page produit ne te permettait de le savoir. Le label « Made in EU » a fait exactement le travail pour lequel il existe, te rassurer, sans rien prouver.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-mécanisme--les-trois-questions-que-le-label-ne-pose-pas&quot;&gt;Le mécanisme : les trois questions que le label ne pose pas&lt;/h2&gt;
&lt;p&gt;La souveraineté d’un logiciel ne se lit pas sur un drapeau. Elle se lit sur trois questions concrètes, et aucune des trois n’apparaît dans une plaquette commerciale.&lt;/p&gt;
&lt;h3 id=&quot;qui-pousse-le-binaire&quot;&gt;Qui pousse le binaire ?&lt;/h3&gt;
&lt;p&gt;Le code que tu utilises n’est pas celui qui est sur un dépôt public. C’est celui qui arrive sur ta machine à la prochaine mise à jour. La vraie question, c’est donc : quelle entité fabrique et livre cette mise à jour ?&lt;/p&gt;
&lt;p&gt;Dans le cas Passwork, les cofondateurs Ilya Garakh, propriétaire des domaines, et Andrey Pyankov, manager, opèrent via Passwork FZ-LLC, enregistrée à Ras Al Khaimah, aux Émirats, en juillet 2022. C’est cette entité qui fournit les mises à jour à la branche européenne. Passwork parle d’un « limited product related knowledge-transfer support » dans une période de transition qui doit s’achever en août 2026.&lt;/p&gt;
&lt;p&gt;Traduction : le binaire européen est, au moins jusqu’à cette date, alimenté depuis l’extérieur de l’Europe. Un chercheur cité par l’enquête résume la séparation UE/Russie comme « technically shallow ».&lt;/p&gt;
&lt;h3 id=&quot;qui-signe-le-code-et-avec-quelle-clé&quot;&gt;Qui signe le code, et avec quelle clé ?&lt;/h3&gt;
&lt;p&gt;Une mise à jour légitime est signée cryptographiquement. C’est ce qui garantit que le fichier que tu installes vient bien de l’éditeur et n’a pas été modifié en route. Sauf que la signature garantit l’origine, pas l’innocence. Si l’entité qui détient la clé de signature est aussi celle qui pourrait glisser quelque chose dans une mise à jour, la signature valide ne te protège de rien. Elle certifie juste que le colis vient bien de l’expéditeur, quel que soit son contenu.&lt;/p&gt;
&lt;p&gt;C’est &lt;strong&gt;le canal de mise à jour&lt;/strong&gt;, pas le stockage, qui &lt;strong&gt;concentre le risque&lt;/strong&gt;. Un chercheur cité par l’enquête le décrit comme « the most elegant and hardest-to-detect attack vector ». L’OCCRP fait elle-même le parallèle avec SolarWinds, cette attaque de 2019-2020 où un logiciel de supervision parfaitement légitime avait servi de véhicule à une compromission massive, via ses mises à jour signées.&lt;/p&gt;
&lt;p&gt;Restons précis : à ce jour, aucune backdoor n’a été trouvée dans Passwork, aucune fuite, aucun client compromis. On parle d’un vecteur qui existe, pas d’une attaque qui a eu lieu. Le canal permettrait, structurellement, ce que SolarWinds a démontré possible. &lt;strong&gt;Ce n’est pas une accusation. C’est une géométrie.&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id=&quot;quel-état-a-pu-revoir-la-source&quot;&gt;Quel État a pu revoir la source ?&lt;/h3&gt;
&lt;p&gt;Voilà la question que personne ne pense à poser, et c’est peut-être la plus lourde.&lt;/p&gt;
&lt;p&gt;Passwork LLC est certifiée par le FSTEC, que VSquare rattache au ministère de la Défense russe, et par &lt;strong&gt;le FSB&lt;/strong&gt;. Or ces certifications ne sont pas des tampons administratifs. Le processus impose la soumission du code source à des laboratoires accrédités, chargés d’y détecter « vulnerabilities or undeclared capabilities ».&lt;/p&gt;
&lt;p&gt;Autrement dit : un État a organisé la relecture du code source de ce logiciel. Pas l’Union européenne. Pas un auditeur mandaté par tes soins. Un service placé sous une autre juridiction, avec ses propres priorités.&lt;/p&gt;
&lt;p&gt;Quand tu installes un logiciel, tu ne fais pas que faire confiance à l’éditeur. Tu fais confiance, sans le savoir, à tous ceux qui ont eu les mains dans son code avant toi.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;lusine-à-gaz-qui-na-rien-vu-passer&quot;&gt;L’usine à gaz qui n’a rien vu passer&lt;/h2&gt;
&lt;p&gt;À ce stade, tu te dis peut-être que c’est bien pour ça qu’on paie des régulateurs. L’Europe pond du règlement numérique au kilomètre, un acronyme neuf par trimestre, un communiqué triomphal à chaque texte voté. Alors ce coffre russe déguisé en produit européen, vendu à ses propres administrations, ils l’ont vu venir ? Non. Pas une alerte, pas une ligne.&lt;/p&gt;
&lt;p&gt;Regarde la pile réglementaire censée couvrir ce terrain. Le Cyber Resilience Act impose la sécurité « by-design » aux produits numériques : comment ils sont conçus, pas par qui ni depuis où.&lt;/p&gt;
&lt;p&gt;Le Cyber Solidarity Act, entré en vigueur le 4 février 2025, organise la réponse aux crises : un système d’alerte européen, une réserve de cybersécurité, une revue post-incident. Utile le jour où ça brûle, muet sur qui a posé l’allumette. Et les schémas de certification de l’ENISA, l’EUCC pour les produits, l’EUCS pour le cloud, évaluent des niveaux d’assurance sur des critères techniques.&lt;/p&gt;
&lt;p&gt;Cherche dans tout ça la case « quelle entité pousse le binaire » ou « quel État a relu la source ». Elle n’existe pas. Aucun de ces textes ne certifie un produit selon son origine réelle, et aucun n’interdit quoi que ce soit sur ce critère.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Une société peut afficher « Made in EU », faire relire son code par un service de renseignement étranger, et rester parfaitement en règle avec Bruxelles&lt;/strong&gt;. Conforme, tamponnée, irréprochable sur le papier. Voilà le niveau de protection qu’on t’a vendu à coups de milliards engloutis dans la cybersécurité européenne et de conférences de presse.&lt;/p&gt;
&lt;p&gt;Pendant que ce coffre, dont la souche russe est certifiée FSB, prospérait sur le marché public européen, à quoi la même Union consacrait-elle son énergie ? À vouloir forcer les messageries à scanner tes conversations privées avant chiffrement, le CSAR (Chat Control 2.0). Traduction : Bruxelles n’a pas su repérer un logiciel relu par un service russe et vendu à ses propres administrations, mais elle veut fouiller les messages de centaines de millions d’Européens. &lt;strong&gt;Incapable sur la vraie menace, zélée sur la surveillance des innocents.&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/chat-control-csar-surveillance-messageries-chiffrees/&quot;&gt;Chat Control 2.0, l’UE veut lire tes messages avant que tu les envoies&lt;/a&gt; et &lt;a href=&quot;https://macsouverain.com/nis2-csar-contradiction-ue-chiffrement-surveillance/&quot;&gt;NIS2 oblige à chiffrer, CSAR interdit de le faire vraiment&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La conclusion est désagréable mais nette. La souveraineté logicielle n’est pas à déléguer à un régulateur. &lt;strong&gt;Elle est à ta charge. Toi, citoyen. Toi, PME.&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-change-concrètement--ta-grille-de-vérification&quot;&gt;Ce que ça change concrètement : ta grille de vérification&lt;/h2&gt;
&lt;p&gt;Bonne nouvelle, tu n’as pas besoin d’être analyste en cyberdéfense. Tu as besoin d’une méthode. Avant de confier tes mots de passe, tes contrats ou ta comptabilité à un logiciel, fais-le passer par ces six questions. Prends l’exemple le plus sensible qui soit, un coffre-fort de mots de passe, celui qui garde les clés de tout le reste.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Qui pousse le binaire ?&lt;/strong&gt; Cherche l’entité qui édite réellement les mises à jour, pas celle qui encaisse ta facture. Registre du commerce, mentions légales, historique de la société. Une adresse européenne sur la page d’accueil et une maison mère ailleurs, c’est un signal, pas une réponse.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Qui signe le code, et avec quelle clé ?&lt;/strong&gt; Un éditeur sérieux publie ses signatures et permet de les vérifier. Regarde qui détient la clé de signature et où. Une clé contrôlée par une entité sous une juridiction opaque annule le bénéfice de la signature.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Quel État a pu revoir la source ?&lt;/strong&gt; Les certifications nationales sont publiques. Une certification FSTEC ou FSB implique une relecture du code par des labos russes accrédités. À l’inverse, un visa ANSSI (comme celui obtenu par KeePassXC) implique une évaluation française. Ce n’est pas neutre : demande-toi quel État tu es prêt à laisser regarder sous le capot.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted ou cloud ?&lt;/strong&gt; Un logiciel que tu héberges toi-même retire l’éditeur de la boucle du stockage. Tes données restent sur ton infrastructure, sous ta juridiction. Ça ne règle pas le problème du canal de mise à jour, mais ça réduit la surface. Le cloud de l’éditeur, lui, cumule les deux dépendances.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Quel historique de mises à jour, par quel canal ?&lt;/strong&gt; Un projet mûr a un journal de versions lisible, un canal de distribution stable et documenté. Des mises à jour opaques, un canal qui change, une entité de distribution exotique : autant de drapeaux rouges. Le canal est le vrai point d’entrée, surveille-le comme tel.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le code est-il auditable ?&lt;/strong&gt; L’open source ne rend pas un logiciel magiquement sûr, mais il rend le mensonge plus difficile. Un code public a pu être relu par n’importe qui, y compris des gens qui n’ont aucun intérêt à te rassurer. Un code fermé te demande de croire l’éditeur sur parole, et tu viens de voir ce que valent les paroles sur une page produit.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Aucune de ces six questions n’a besoin d’un budget. Elles ont besoin de dix minutes et de l’envie de regarder derrière le drapeau. Applique-les à ton gestionnaire actuel ce soir. Certains passeront le test sans transpirer, d’autres beaucoup moins.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/gestionnaire-mots-de-passe-mac-comparatif/&quot;&gt;Apple, Bitwarden, KeePassXC ou 1Password, le comparatif honnête des coffres à mots de passe&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-limites--ce-que-cette-grille-ne-dit-pas&quot;&gt;Les limites : ce que cette grille ne dit pas&lt;/h2&gt;
&lt;p&gt;Il faut être honnête sur deux points, sinon on tombe dans le procès d’intention.&lt;/p&gt;
&lt;p&gt;D’abord, l’équité envers l’éditeur mis en cause. Passwork revendique son indépendance, affirme que la transition avec l’entité russe s’achève en août 2026, et que les données de ses clients résident sur les serveurs de ces clients. Son PDG, Alexander Muntyan, invoque une « zero-knowledge architecture », avec chiffrement et déchiffrement côté client : « we would simply have no data to provide ».&lt;/p&gt;
&lt;p&gt;Cet argument mérite d’être pris pour ce qu’il est, un argument marketing, pas une garantie technique. En version auto-hébergée, cette couche peut être désactivée, et une couche serveur existe. Surtout, le zero-knowledge protège le stockage, pas le canal de mise à jour, et c’est le canal qui inquiète les chercheurs.&lt;/p&gt;
&lt;p&gt;Côté clients, prudence aussi. L’enquête établit que deux organismes irlandais, l’Office of Public Works et le State Laboratory, se disent non informés de l’origine du produit, le second traitant désormais le sujet comme un « potential risk ».&lt;/p&gt;
&lt;p&gt;Pour le reste, Passwork LLC affiche côté russe des clients du complexe militaro-industriel, dont Almaz-Antey, MMZ Avangard, Kometa et Gazprom Neft. Plusieurs figurent sur des listes de sanctions occidentales, mais selon des régimes différents, UE, États-Unis ou contrôles à l’export selon les cas. On ne fait pas d’amalgame : ni « tous sanctionnés par l’UE », ni « tous les clients européens compromis ».&lt;/p&gt;
&lt;p&gt;Ensuite, la grille elle-même a des limites. Elle ne détecte pas une compromission active, elle évalue un risque structurel. Un logiciel qui coche toutes les cases peut quand même être attaqué, et un logiciel qui en rate une n’est pas forcément un piège. La grille ne remplace pas un audit, elle t’évite de confondre une plaquette commerciale avec une preuve. C’est déjà énorme.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;« Made in EU » est une allégation marketing. Pas un label contrôlé, pas une garantie juridique, pas une preuve de souveraineté. L’affaire Passwork le montre sans avoir besoin d’une seule compromission avérée : un logiciel peut être immatriculé à Barcelone, codé à Arkhangelsk, mis à jour depuis les Émirats, et relu par un service russe, tout en restant parfaitement en règle avec la pile réglementaire européenne. Cette pile, Cyber Resilience Act, Cyber Solidarity Act, schémas ENISA, n’a jamais posé les bonnes questions. Elle ne les pose toujours pas. Ne compte pas sur elle. &lt;strong&gt;Elle ne t’a pas protégé, elle t’a rassuré. Ce n’est pas le même métier.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Alors pose-les toi-même. Qui pousse le binaire, qui signe le code, quel État a pu en relire la source, est-ce hébergeable chez toi, quel est le canal de mise à jour, le code est-il auditable. Six questions, dix minutes, appliquées d’abord à l’endroit le plus sensible : le coffre où vivent tous tes mots de passe. La souveraineté ne se lit pas sur un drapeau. Elle se vérifie. &lt;strong&gt;Personne ne le fera pour toi.&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sources&quot;&gt;Sources&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;L’enquête&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.occrp.org/en/investigation/european-password-manager-shares-origins-and-updates-with-state-certified-russian-firm&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;OCCRP, European Password Manager Shares Origins and Updates with State-Certified Russian Firm&lt;/a&gt;, l’enquête primaire du 17 juillet 2026.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://vsquare.org/european-password-manager-shares-origins-and-updates-with-state-certified-russian-firm/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;VSquare, la même enquête&lt;/a&gt;, la co-publication du consortium.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.irishtimes.com/ireland/2026/07/17/how-russian-password-technology-made-its-way-into-irish-state-agencies/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;The Irish Times, How Russian password technology made its way into Irish State agencies&lt;/a&gt;, les organismes publics irlandais clients.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Le cadre réglementaire&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://eur-lex.europa.eu/eli/reg/2025/38/oj/eng&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;EUR-Lex, Règlement (UE) 2025/38, Cyber Solidarity Act&lt;/a&gt;, le texte officiel, en vigueur depuis le 4 février 2025.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://digital-strategy.ec.europa.eu/en/policies/cyber-solidarity&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Commission européenne, EU Cyber Solidarity Act&lt;/a&gt;, le budget et les mécanismes.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://eur-lex.europa.eu/EN/legal-content/summary/digital-europe-programme-2021-2027.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;EUR-Lex, Digital Europe Programme 2021-2027&lt;/a&gt;, le volet cybersécurité.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://messervices.cyber.gouv.fr/visas/ANSSI-CSPN-2025-16-rapport.pdf&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;ANSSI, rapport de certification CSPN-2025/16 (KeePassXC 2.7.9)&lt;/a&gt;, l’exemple du visa ANSSI.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>privacy</category><category>securite</category><category>souverainete</category><category>reglementation</category><category>informatif</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-made-in-eu-souverainete-logicielle-1.png" length="0" type="image/png"/></item><item><title>Alerting et coût total, le bilan de ton SIEM souverain</title><link>https://macsouverain.com/alerting-cout-total-siem-souverain/</link><guid isPermaLink="true">https://macsouverain.com/alerting-cout-total-siem-souverain/</guid><description>Brancher l&apos;alerting Wazuh sans crouler sous le bruit, puis le bilan honnête de ta stack souveraine face à une facture SaaS six à trente fois plus lourde.</description><pubDate>Sat, 25 Jul 2026 12:25:13 GMT</pubDate><content:encoded>&lt;p&gt;Six épisodes. Un VPS durci, Wazuh qui centralise, des agents sur tout le parc, CrowdSec au réseau, Rspamd au mail, Santa sur les Mac. Ta stack est debout, elle collecte, elle détecte, elle journalise.&lt;/p&gt;
&lt;p&gt;Et elle est muette.&lt;/p&gt;
&lt;p&gt;Un binaire refusé sur un poste, une rafale d’échecs d’authentification, un compte qui se réveille à 3 heures du matin, tout ça atterrit sagement dans un tableau de bord que personne ne regarde à 3 heures du matin. Une détection que personne ne voit passer n’est pas une détection, c’est un log de plus.&lt;/p&gt;
&lt;p&gt;Aujourd’hui, dernier épisode de la série, on branche l’alerting. La brique qui transforme un SIEM qui sait en un SIEM qui prévient. Et ensuite on fait ce qu’on a promis dès &lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;le premier article&lt;/a&gt;, les comptes. Combien te coûte vraiment cette stack, face à la facture qu’on t’aurait présentée en SaaS. La réponse est plus tranchée que tu ne le crois.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;lalerting-être-prévenu-sans-être-harcelé&quot;&gt;L’alerting, être prévenu sans être harcelé&lt;/h2&gt;
&lt;p&gt;Wazuh sait déjà envoyer des notifications. Un démon dédié, &lt;code&gt;wazuh-integratord&lt;/code&gt;, démarre avec le manager, lit le flux d’alertes en continu, et pousse chaque alerte qui dépasse un seuil vers la cible que tu lui as désignée. La mécanique est là. Tout le travail est dans le réglage.&lt;/p&gt;
&lt;p&gt;Premier réflexe souverain, regarde qui reçoit tes alertes. Wazuh propose des intégrations natives clés en main, et le piège est là, presque toutes sont des services américains, Slack, PagerDuty, VirusTotal. Brancher ton SIEM souverain sur Slack, c’est monter une stack entière pour rester maître de tes logs, puis expédier toutes tes alertes de sécurité chez un tiers américain. La dépendance qui rentre par la petite porte.&lt;/p&gt;
&lt;p&gt;Deux canaux restent cohérents avec ce qu’on a construit. L’&lt;strong&gt;email&lt;/strong&gt;, servi par le serveur mail que tu administres déjà depuis &lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;l’épisode Rspamd&lt;/a&gt;, qui est le mécanisme de notification historique de Wazuh. Et le &lt;strong&gt;chat auto-hébergé&lt;/strong&gt;, un Mattermost ou un Matrix posé sur ton infrastructure. Mattermost accepte les webhooks au format Slack, donc l’intégration native &lt;code&gt;slack&lt;/code&gt; fonctionne le plus souvent telle quelle, son &lt;code&gt;hook_url&lt;/code&gt; pointé vers ton serveur à toi. À retester sur ta version, les formats bougent d’une release à l’autre.&lt;/p&gt;
&lt;p&gt;La configuration vit dans &lt;code&gt;ossec.conf&lt;/code&gt;, sur le manager. L’email natif est géré directement par le manager, les canaux chat passent par l’Integrator via un bloc &lt;code&gt;&amp;#x3C;integration&gt;&lt;/code&gt;. Côté email d’abord.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;global&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;email_notification&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;yes&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;email_notification&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;smtp_server&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;localhost&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;smtp_server&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;email_from&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;wazuh@ton-domaine.tld&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;email_from&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;email_to&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;secu@ton-domaine.tld&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;email_to&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;global&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;alerts&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;email_alert_level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;7&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;email_alert_level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;alerts&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Côté chat, un bloc &lt;code&gt;&amp;#x3C;integration&gt;&lt;/code&gt; par canal.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;integration&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;slack&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;hook_url&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;https://mattermost.ton-domaine.tld/hooks/xxxxxxxx&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;hook_url&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;10&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;alert_format&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;json&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;alert_format&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;integration&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le champ qui commande tout, c’est &lt;code&gt;&amp;#x3C;level&gt;&lt;/code&gt;. Wazuh note chaque alerte sur une échelle de &lt;strong&gt;0 à 16&lt;/strong&gt;, et le seuil transmet cette valeur &lt;strong&gt;ou toute valeur supérieure&lt;/strong&gt;. Un canal à &lt;code&gt;&amp;#x3C;level&gt;10&amp;#x3C;/level&gt;&lt;/code&gt; ne verra jamais un niveau 6. Tu peux affiner avec &lt;code&gt;&amp;#x3C;rule_id&gt;&lt;/code&gt; ou &lt;code&gt;&amp;#x3C;group&gt;&lt;/code&gt;, mais retiens un piège classique, quand tu combines plusieurs de ces filtres, ils se cumulent en ET, pas en OU. L’alerte doit satisfaire tous les critères pour passer, et beaucoup de monde s’est demandé pourquoi son intégration restait silencieuse pour cette seule raison.&lt;/p&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/body-alerting-config-alerting-cout-total-siem-souverain.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Configuration de l&amp;#x27;alerting dans ossec.conf, seuils email_alert_level et level mis en évidence&quot;&gt;
&lt;p&gt;Reste la vraie question, quel niveau pour quel canal. Voici les repères que je te propose, une recommandation d’usage et non un barème gravé par Wazuh, à ajuster à ton parc :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;0 à 3&lt;/strong&gt;, du bruit informatif. Tu journalises, tu ne notifies rien.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;4 à 6&lt;/strong&gt;, faible. Ça vit dans le tableau de bord, pas dans ta poche.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;7 à 9&lt;/strong&gt;, moyen. Email groupé, l’équipe le lit dans la journée.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;10 à 12&lt;/strong&gt;, élevé. Échecs d’authentification en série, atteinte à l’intégrité d’un fichier, un binaire refusé par Santa. Chat en temps réel plus email.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;13 à 16&lt;/strong&gt;, critique. Compromission probable, agent désactivé. Astreinte, on réveille quelqu’un.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Un bloc &lt;code&gt;&amp;#x3C;integration&gt;&lt;/code&gt; par canal, chacun son seuil. L’email digest à 7 pour tout le monde, le chat à 10 pour l’équipe technique, un script custom vers du SMS ou du ntfy à 12 pour le responsable. Le patron ne veut pas être tiré du lit pour un niveau 8, et le jour où tu le réveilles pour rien, il coupe les notifications. C’est comme ça qu’on meurt.&lt;/p&gt;
&lt;p&gt;Parce que le vrai risque de l’alerting, ce n’est pas d’en rater. C’est d’en avoir trop. Une attaque en force brute non dédupliquée, ce sont des centaines d’alertes en quelques minutes, et une équipe qui apprend à les ignorer. La déduplication se règle en amont, dans la fréquence et la fenêtre temporelle de tes règles, jamais au moment de la notification. Un SIEM qui crie tout le temps, c’est un SIEM qu’on n’écoute plus. La fatigue d’alerte est pire que l’absence d’alerte, parce qu’elle te donne l’illusion d’être couvert.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-la-stack-ta-vraiment-coûté&quot;&gt;Ce que la stack t’a vraiment coûté&lt;/h2&gt;
&lt;p&gt;Le moment des comptes, coût affiché et coût caché, parce que te vendre du gratuit serait te mentir.&lt;/p&gt;
&lt;p&gt;Le poste visible, c’est le VPS. Wazuh en mononœud, manager, indexeur et tableau de bord sur une seule machine, tourne confortablement pour une PME de 25 à 50 postes sur &lt;strong&gt;8 vCPU, 16 Go de RAM et 100 Go de disque&lt;/strong&gt; pour trois mois de rétention. Chez un hébergeur européen hors emprise américaine, ça se loue entre &lt;strong&gt;300 et 1 700 euros par an&lt;/strong&gt; selon que tu vises le bas de gamme allemand ou le souverain français haut de gamme. Une seule ligne de facture, pour toute la stack.&lt;/p&gt;
&lt;p&gt;Le poste des licences, ensuite. Wazuh, les agents, CrowdSec, Rspamd, Santa, l’alerting. &lt;strong&gt;Zéro.&lt;/strong&gt; Pas un centime, pas un palier entreprise, pas un quota de postes. Open source de bout en bout.&lt;/p&gt;
&lt;p&gt;Et puis le poste qu’aucun tableau de prix ne t’affiche, le temps. L’installation de la stack, plusieurs jours cumulés pour qui découvre, moins pour un sysadmin aguerri. Puis la maintenance, les mises à jour, la surveillance du disque, et surtout le tuning des règles qui bouffe l’essentiel des premières semaines. Je ne te donnerai pas un chiffre d’heures par mois, il serait inventé, et aucun de ceux que tu liras ailleurs ne repose sur autre chose que du doigt mouillé. Compte en jours-homme, pose ton taux, fais ton addition.&lt;/p&gt;
&lt;p&gt;Voilà la nuance qui tient tout l’épisode. Souverain n’est pas gratuit, souverain déplace la dépense de la licence vers la compétence interne. Tu ne paies plus une rente à un éditeur, tu paies un investissement qui reste dans ta maison. Le VPS se compte en centaines d’euros, le temps est le poste dominant, et les deux ensemble restent très loin sous ce que t’aurait coûté l’équivalent loué.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;épisode-par-épisode-la-même-stack-en-saas&quot;&gt;Épisode par épisode, la même stack en SaaS&lt;/h2&gt;
&lt;p&gt;Reprenons la stack brique par brique, et mettons en face ce que le marché facture pour la même fonction. Hypothèses affichées, parce que sans elles un chiffre ne veut rien dire, une PME d’une quarantaine de postes dont une vingtaine de Macs, environ cinq gigaoctets de logs par jour.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Wazuh&lt;/strong&gt; remplace un Microsoft Sentinel ou un Splunk ES. Compte &lt;strong&gt;7 800 dollars par an&lt;/strong&gt; pour cinq gigaoctets de logs quotidiens côté Sentinel, de &lt;strong&gt;8 000 à 12 500 dollars&lt;/strong&gt; côté Splunk. &lt;strong&gt;CrowdSec&lt;/strong&gt; tient le rôle d’une offre de threat intelligence managée, qui démarre à &lt;strong&gt;1 900 dollars par mois&lt;/strong&gt; en Platinum, soit près de &lt;strong&gt;23 000 dollars l’année&lt;/strong&gt;. &lt;strong&gt;Rspamd&lt;/strong&gt; fait le travail d’un Proofpoint ou d’un Mimecast, &lt;strong&gt;1 200 à 8 640 dollars&lt;/strong&gt; pour quarante boîtes. &lt;strong&gt;Santa&lt;/strong&gt; se substitue à un Jamf Protect, autour de &lt;strong&gt;1 440 dollars&lt;/strong&gt; pour vingt Macs. En face de chaque ligne, le même chiffre, &lt;strong&gt;zéro de licence.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Additionne cette colonne de droite. Selon les options retenues et sans même compter l’EDR managé ni le filtrage réseau haut de gamme, l’équivalent SaaS complet d’une PME de cette taille se situe &lt;strong&gt;entre 12 000 et 40 000 dollars par an&lt;/strong&gt;. En face, ta stack souveraine, entre 300 et 1 700 euros de cash, plus ton temps. Même en comparant le pire de la stack souveraine au meilleur prix SaaS, le rapport est de l’ordre de &lt;strong&gt;six à trente fois&lt;/strong&gt;. Et l’écart n’est pas figé, il se creuse. La licence SaaS, tu la repaies chaque année à vie, à chaque poste ajouté, à chaque gigaoctet ingéré en plus. Le VPS, lui, reste stable, et le temps d’installation s’amortit une fois pour toutes.&lt;/p&gt;
&lt;p&gt;Deux précisions d’honnêteté. D’abord, les tarifs que je te donnais dans le premier article tiennent tous, Sentinel autour de 4,30 dollars du gigaoctet, CrowdStrike de 60 à 185 dollars par poste, Splunk de 8 000 à 12 500 dollars. Rien n’a baissé. Ces éditeurs ne publient d’ailleurs pas de grille publique, ils masquent leurs prix et te poussent vers des engagements de volume, ce qui pénalise la PME qui n’ingère que quelques gigaoctets par jour. Ensuite, le zéro de la colonne souveraine est un zéro de licence, pas un zéro tout court. Le coût existe, mutualisé sur une ligne de VPS et étalé sur ton temps. Mais l’addition d’en face, elle, se compte par brique, par poste, et par an.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-pièges-pour-ne-pas-te-raconter-dhistoires&quot;&gt;Les pièges, pour ne pas te raconter d’histoires&lt;/h2&gt;
&lt;p&gt;Une stack souveraine bien montée peut mal vieillir. Quatre points de vigilance, à regarder en face.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;La rétention gonfle le VPS en silence.&lt;/strong&gt; Trois mois par défaut, mais le jour où tu veux six mois ou un an de recul pour une enquête, le disque double ou triple, et tu passes à un plan supérieur. Le coût souverain n’est pas gelé, il croît avec ta rétention et ton nombre d’agents. Anticipe-le au dimensionnement.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le mononœud est un point de défaillance unique.&lt;/strong&gt; Toute la stack sur un seul VPS, c’est aussi une seule cible. Tes sauvegardes chiffrées hors-site, posées dès &lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;le socle&lt;/a&gt;, ne sont pas une option. Le multi-nœud existe, mais il sort du périmètre d’une PME.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Les hébergeurs augmentent, eux aussi.&lt;/strong&gt; Souverain ne veut pas dire prix bloqué à vie, certains ont relevé leurs tarifs en 2026. La différence tient en un mot, changer d’hébergeur, c’est une migration de VPS de quelques jours. Ce n’est pas un contrat de licence qui te tient à la gorge.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le tuning est chronophage au démarrage.&lt;/strong&gt; Les premières semaines croulent sous les faux positifs, et c’est là que se joue la qualité de tout le reste. Bâcle cette phase, et tu retombes dans la fatigue d’alerte.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Aucun de ces pièges n’est rédhibitoire. Ce sont des paramètres que tu contrôles, précisément parce que la stack est chez toi.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;conformité-la-brique-qui-rend-le-délai-tenable&quot;&gt;Conformité, la brique qui rend le délai tenable&lt;/h2&gt;
&lt;p&gt;On a ouvert la série sur une obligation, &lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;RGPD et NIS2 t’imposent de notifier vite&lt;/a&gt;. Soixante-douze heures pour caractériser une violation côté RGPD, un triptyque de 24 heures, 72 heures et 30 jours côté NIS2.&lt;/p&gt;
&lt;p&gt;L’alerting est la brique qui rend ce délai tenable. Collecter et détecter, c’est produire la preuve. Alerter, c’est qu’un humain la voie à temps pour agir. Sans notification calibrée, le triptyque reste un vœu, la stack sait qu’il s’est passé quelque chose et personne ne le sait à temps. Avec elle, l’horloge des 72 heures démarre à la détection, pas le lundi matin quand quelqu’un rouvre le tableau de bord. C’est la différence entre une conformité sur le papier et une conformité qui tient devant le régulateur.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé-tu-ne-dépends-de-personne&quot;&gt;En résumé, tu ne dépends de personne&lt;/h2&gt;
&lt;p&gt;Recule d’un pas et regarde ce que tu as monté. Sept épisodes, un VPS, des briques open source, et un dispositif qui voit, bloque, filtre, contrôle et, depuis aujourd’hui, prévient au bon niveau sans te harceler. Ce que les grandes entreprises paient une fortune, tu l’as bâti pour le prix d’un VPS et de quelques week-ends.&lt;/p&gt;
&lt;p&gt;Mais le vrai gain n’est pas sur la facture. Il tient dans une phrase, tu ne dépends de personne. Trois indépendances.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Juridique.&lt;/strong&gt; Tes logs de sécurité, le matériau le plus sensible de ton SI, vivent sur ton VPS européen, hors de portée du CLOUD Act. En juin 2025, devant une commission d’enquête du Sénat français, Anton Carniaux, directeur des affaires publiques et juridiques de Microsoft France, interrogé sous serment sur sa capacité à garantir que les données d’un citoyen français ne partiraient jamais vers les autorités américaines, a répondu, « Non, je ne peux pas le garantir ». Chez un fournisseur soumis au droit américain, c’est ce niveau de garantie que tu acceptes. Aucun.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Économique.&lt;/strong&gt; Pas de rente de licence, pas de choc de prix décidé sans toi. Rappelle-toi les clients de VMware après le rachat par Broadcom, licences perpétuelles supprimées, abonnement forcé. AT&amp;#x26;T est allé jusqu’à poursuivre Broadcom en justice en dénonçant une hausse de plus de 1 000 pour cent sur son renouvellement. Payer ou migrer dans la douleur, sans voix au chapitre. Personne ne peut faire ça à ta stack.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Opérationnelle.&lt;/strong&gt; Personne ne coupe ton accès, ne déprécie une fonction dont tu dépends, ne t’impose un calendrier de migration. Tu possèdes ta stack, tes logs, ta détection.&lt;/p&gt;
&lt;p&gt;Le prix de ces trois libertés, c’est un VPS et de la compétence qui reste chez toi. Compare-le une dernière fois à une facture SaaS qui revient chaque année sans t’acheter aucune d’elles.&lt;/p&gt;
&lt;p&gt;C’est là que finit la série. Pas sur un produit, sur une position. La souveraineté n’est pas un slogan, c’est une addition que tu viens de faire, et elle penche d’un seul côté.&lt;/p&gt;
&lt;hr&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;La suite, parce que tu l’as demandée.&lt;/strong&gt; Un lecteur nous a écrit après cette série pour réclamer un vrai plongeon dans Wazuh, plus loin que le tout-en-un de l’épisode 2. Message reçu. Un tutoriel Wazuh approfondi arrive bientôt, règles maison, décodeurs, tableaux de bord aux petits oignons. Tu as une demande, une coquille repérée, une brique que tu voudrais voir décortiquée ? Écris-nous.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;rappel-de-la-série&quot;&gt;Rappel de la série&lt;/h2&gt;
&lt;p&gt;Sept épisodes pour monter ta plomberie de sécurité souveraine, brique par brique.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;Épisode 0, le fondement de la série.&lt;/a&gt;&lt;/strong&gt; Pourquoi une PME a besoin d’un SIEM souverain, NIS2, RGPD, et le coût du statu quo.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;Épisode 1, le socle.&lt;/a&gt;&lt;/strong&gt; Le VPS durci hors CLOUD Act.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;Épisode 2, Wazuh en tout-en-un.&lt;/a&gt;&lt;/strong&gt; Manager, indexeur et tableau de bord sur un seul nœud.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;Épisode 3, les agents partout.&lt;/a&gt;&lt;/strong&gt; Déploiement sur tes serveurs, Mac et Windows.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/&quot;&gt;Épisode 4, la défense réseau communautaire.&lt;/a&gt;&lt;/strong&gt; Bloquer les attaquants connus avant qu’ils n’arrivent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;Épisode 5, le filtre mail.&lt;/a&gt;&lt;/strong&gt; Anti-spam et anti-hameçonnage devant ton serveur de messagerie.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/santa-controle-execution-mac-siem-souverain/&quot;&gt;Épisode 6, le contrôle d’exécution sur les Mac.&lt;/a&gt;&lt;/strong&gt; Décider quelles applications ont le droit de démarrer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 7, alerting et coût total.&lt;/strong&gt; Notifications calibrées et bilan financier face au SaaS. Tu viens de le lire.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>wazuh</category><category>securite</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-alerting-cout-total-siem-souverain-1.png" length="0" type="image/png"/></item><item><title>Santa sur tes Mac, le binaire non invité reste à la porte</title><link>https://macsouverain.com/santa-controle-execution-mac-siem-souverain/</link><guid isPermaLink="true">https://macsouverain.com/santa-controle-execution-mac-siem-souverain/</guid><description>Installer Santa sur tes Mac, cartographier en mode Monitor, verrouiller en Lockdown, écrire ton allowlist par TeamID, et faire remonter chaque blocage dans Wazuh.</description><pubDate>Mon, 20 Jul 2026 07:01:16 GMT</pubDate><content:encoded>&lt;p&gt;À l’épisode précédent, tu as posé &lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;Rspamd devant ta boîte mail&lt;/a&gt;. Chaque message entrant est noté, l’hameçonnage lève une alerte, et le verdict remonte dans Wazuh. Trois briques debout, le serveur, le réseau, le mail. Ton SIEM voit, il bloque, il filtre.&lt;/p&gt;
&lt;p&gt;Et il reste une porte. La dernière, celle qu’aucune des trois premières ne garde.&lt;/p&gt;
&lt;p&gt;Un salarié télécharge un fichier. Une fausse mise à jour d’un logiciel qu’il connaît, un utilitaire trouvé sur un forum, une pièce jointe qui a franchi le filtre mail parce qu’elle était propre le jour où elle est passée. Il double-clique. Le binaire démarre. À cette seconde précise, ni CrowdSec ni Rspamd n’ont voix au chapitre, l’exécution se joue sur le Mac, en local, loin de tes serveurs.&lt;/p&gt;
&lt;p&gt;C’est l’angle mort qui reste. Ton dispositif surveille tout ce qui entre, et laisse s’exécuter n’importe quoi une fois entré.&lt;/p&gt;
&lt;p&gt;Aujourd’hui, on ferme cette porte. On installe &lt;a href=&quot;https://northpole.security/santa&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;Santa&lt;/strong&gt;&lt;/a&gt;, un système de contrôle d’exécution pour macOS. Son principe est brutalement simple, tu établis la liste des applications qui ont le droit de tourner, et &lt;strong&gt;tout le reste est refusé&lt;/strong&gt;. Puis on branche ses décisions sur Wazuh, pour que chaque binaire bloqué s’affiche dans ton tableau de bord, à côté de tes rejets mail et de tes blocages réseau.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;avant-de-commencer&quot;&gt;Avant de commencer&lt;/h2&gt;
&lt;p&gt;Trois choses en tête avant la première commande.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce qu’il te faut.&lt;/strong&gt; Un ou plusieurs Mac sous une version récente de macOS, un accès administrateur dessus, et l’agent Wazuh de l’épisode 3 déjà installé sur ces Mac, pour la partie intégration en fin de tuto. Santa est open source, maintenu par North Pole Security, la société fondée par ses créateurs d’origine, ceux qui l’ont écrit chez Google en 2014. Licence Apache 2.0, zéro version payante pour ce qu’on fait ici.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça change.&lt;/strong&gt; À la fin, un binaire inconnu ne s’exécute plus sur tes Mac. Pas « s’exécute et lève une alerte », ne s’exécute pas. Tu passes d’un poste qui lance tout ce qu’on lui présente à un poste qui ne lance que ce que tu as approuvé, et chaque tentative bloquée remonte dans ton SIEM.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça ne change pas.&lt;/strong&gt; Santa contrôle l’exécution de &lt;strong&gt;binaires&lt;/strong&gt;. Il ne lit pas le contenu d’un script Python ou d’un shell, on y reviendra, c’est sa limite la plus importante et je ne vais pas te la cacher. Il ne remplace pas ton antivirus, il ne répare pas un compte dont le mot de passe a fuité. Et il ne se règle pas tout seul, la vraie dépense n’est pas la RAM, c’est la liste que tu vas devoir tenir à jour.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;santa-ninterdit-rien-il-nautorise-que&quot;&gt;Santa n’interdit rien, il n’autorise que&lt;/h2&gt;
&lt;p&gt;Le renversement mental qui fait tout, et qui sépare Santa d’un antivirus.&lt;/p&gt;
&lt;p&gt;Un antivirus travaille sur une liste noire. Il connaît des milliers de menaces, il les cherche, il les bloque, et il laisse passer tout ce qu’il ne reconnaît pas comme mauvais. Le problème est structurel, une menace qu’il ne connaît pas encore est une menace qu’il autorise. Il court après le mal, il a toujours un train de retard.&lt;/p&gt;
&lt;p&gt;Santa fait l’inverse. Il travaille sur une &lt;strong&gt;liste blanche&lt;/strong&gt;, une allowlist. Il ne se demande pas si un binaire est mauvais, il se demande s’il est &lt;strong&gt;autorisé&lt;/strong&gt;. Ce qui n’est pas sur la liste ne tourne pas, qu’il soit malveillant, inconnu, ou parfaitement légitime mais oublié. Tu ne cours plus après les menaces, tu définis une fois ce qui a le droit d’exister sur tes machines.&lt;/p&gt;
&lt;p&gt;Ce basculement se règle avec un seul paramètre, le &lt;strong&gt;mode client&lt;/strong&gt;, et il a trois positions.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Monitor.&lt;/strong&gt; Tout s’exécute, mais tout est journalisé. Santa regarde, note, et ne bloque rien. C’est le mode d’observation, celui par lequel on commence toujours.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Lockdown.&lt;/strong&gt; Le verrou. Ce qui n’est pas explicitement autorisé est refusé. C’est la position cible, celle qui ferme la porte.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Standalone.&lt;/strong&gt; Entre les deux. Un binaire inconnu déclenche une fenêtre qui demande à l’utilisateur d’autoriser lui-même, Touch ID à l’appui. Utile sur un poste isolé, mais il délègue la décision au salarié, exactement ce qu’une allowlist d’entreprise cherche à ne pas faire.&lt;/p&gt;
&lt;p&gt;La progression est mécanique. On démarre en Monitor pour cartographier ce qui tourne réellement sur le parc, on construit l’allowlist à partir de ces observations, et on bascule en Lockdown une fois qu’on est sûr de ne bloquer personne d’utile. On ne verrouille jamais à l’aveugle.&lt;/p&gt;
&lt;p&gt;Reste à savoir comment Santa reconnaît une application. Il dispose de cinq façons de l’identifier, de la plus précise à la plus large.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Le CDHash&lt;/strong&gt;, l’empreinte d’une version exacte d’un binaire. Change à la moindre mise à jour.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le hash SHA-256&lt;/strong&gt; du binaire lui-même. Aussi fragile, il casse à chaque update.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le SigningID&lt;/strong&gt;, l’identifiant de signature d’une application précise d’un éditeur donné.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le certificat&lt;/strong&gt; de signature, plus large, il couvre tout ce qu’un certificat signe.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le TeamID&lt;/strong&gt;, l’identifiant de l’équipe Apple Developer. Le plus large côté éditeur, il autorise &lt;strong&gt;toutes&lt;/strong&gt; les applications signées par ce développeur.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Santa les évalue dans cet ordre, du plus spécifique au plus général, et la première règle qui correspond l’emporte. Pour une PME, le bon niveau se situe presque toujours sur les deux derniers. Le &lt;strong&gt;TeamID&lt;/strong&gt; dit « je fais confiance à cet éditeur », une règle unique qui survit à toutes ses mises à jour. Le &lt;strong&gt;SigningID&lt;/strong&gt; affine quand tu veux autoriser une application précise d’un éditeur sans lui signer un chèque en blanc. Les hash, eux, tu les laisses aux cas particuliers, sinon tu passes ton temps à réécrire des règles que la prochaine mise à jour cassera.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-1-installer-santa-et-démarrer-en-monitor&quot;&gt;Étape 1, installer Santa et démarrer en Monitor&lt;/h2&gt;
&lt;p&gt;Sur chaque Mac, tu récupères le paquet d’installation signé depuis les publications officielles de North Pole Security, et tu l’installes.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; installer&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -pkg&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; santa-&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;.pkg&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -target&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Santa tourne comme une &lt;strong&gt;extension système&lt;/strong&gt;, du type Endpoint Security, la même famille d’API que les outils de sécurité sérieux sur macOS. Concrètement, deux autorisations vont t’être réclamées à la première installation. macOS te demande d’&lt;strong&gt;approuver l’extension système&lt;/strong&gt;, dans Réglages, Confidentialité et sécurité. Et il faut accorder à Santa l’&lt;strong&gt;accès disque complet&lt;/strong&gt;, le Full Disk Access, pour qu’il voie tout ce qui s’exécute.&lt;/p&gt;
&lt;p&gt;Tu reconnais ce Full Disk Access, c’est celui de l’agent Wazuh à l’épisode 3, la même contrainte TCC propre à macOS. Sur un parc géré en MDM, ces deux approbations se poussent par profil de configuration, une fois pour toutes, sur toutes les machines. Sans MDM, ça se coche à la main, poste par poste. C’est le premier endroit où l’absence de MDM se paie en manipulations manuelles, autant le savoir tout de suite.&lt;/p&gt;
&lt;p&gt;Une fois installé, Santa démarre en &lt;strong&gt;Monitor&lt;/strong&gt; par défaut. C’est exactement ce qu’on veut. Vérifie son état.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;santactl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; status&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu dois lire un mode &lt;code&gt;Monitor&lt;/code&gt; et une extension active. À partir de maintenant, chaque exécution sur ce Mac est notée dans son journal, sans que rien ne soit bloqué. Laisse-le tourner. Une journée de travail normal, une semaine si tu peux, le temps que tes salariés lancent tout ce qu’ils lancent d’habitude. Tu n’installes pas un mur aujourd’hui, tu prends des photos de qui passe la porte.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-2-cartographier-ton-parc-et-écrire-ton-allowlist&quot;&gt;Étape 2, cartographier ton parc et écrire ton allowlist&lt;/h2&gt;
&lt;p&gt;Santa écrit ses décisions dans &lt;code&gt;/var/db/santa/santa.log&lt;/code&gt;, une ligne par exécution. Va les lire, c’est ta matière première.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;tail&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -f&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /var/db/santa/santa.log&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Chaque ligne te donne l’action, la décision, la raison, le chemin du binaire, son éditeur. En Monitor, tout est en &lt;code&gt;decision=ALLOW&lt;/code&gt;, mais la raison t’apprend &lt;strong&gt;pourquoi&lt;/strong&gt; Santa aurait laissé passer, ou aurait bloqué en Lockdown. Un &lt;code&gt;reason=UNKNOWN&lt;/code&gt;, c’est un binaire que rien n’autorise, exactement ce qui tomberait le jour de la bascule.&lt;/p&gt;
&lt;p&gt;Pour transformer une observation en règle, il te faut l’identité de l’application. Santa te la donne.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;santactl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; fileinfo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /Applications/UneApp.app&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Il t’affiche la signature, le TeamID, le SigningID, les empreintes, et la règle qui s’appliquerait aujourd’hui. C’est là que tu décides du bon niveau. Un éditeur en qui tu as confiance sur tout son catalogue, tu l’autorises par son TeamID.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; santactl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; rule&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --allow&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --teamid&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --identifier&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;TEAMI&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;D&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;&gt;&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --comment&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; &quot;editeur maison&quot;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Une application précise, tu la prends par son SigningID.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; santactl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; rule&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --allow&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --signingid&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --identifier&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;SIGNINGI&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;D&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu répètes pour chaque éditeur et chaque application légitimes que Monitor a vus passer. Ta liste se construit à partir du réel, pas d’un catalogue théorique. C’est le travail de fond de cet épisode, et il n’y a pas de raccourci, une bonne allowlist est celle qui colle à ton usage.&lt;/p&gt;
&lt;p&gt;Pour un ou deux Mac, ces règles vivent en local sur chaque machine et ça suffit. Pour un parc, tu ne vas pas taper les mêmes commandes sur dix postes. Santa sait se synchroniser depuis un &lt;strong&gt;serveur central&lt;/strong&gt; qui distribue les mêmes règles à toute la flotte. L’option souveraine, c’est &lt;a href=&quot;https://github.com/groob/moroz&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;Moroz&lt;/strong&gt;&lt;/a&gt;, un petit serveur qui sert tes règles depuis de simples fichiers, que tu héberges toi-même. Tu le poses sur ton infrastructure et tu le gardes en Tailnet-only, la même doctrine que ton manager Wazuh depuis l’épisode 1, rien d’inutile sur l’internet ouvert. North Pole Security propose aussi son propre service de synchronisation clé en main, plus riche mais hébergé chez un tiers, à toi de trancher entre le confort et le tout-souverain.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-3-verrouiller-en-lockdown&quot;&gt;Étape 3, verrouiller en Lockdown&lt;/h2&gt;
&lt;p&gt;Ton allowlist est prête, Monitor n’a plus rien de nouveau à t’apprendre. On ferme.&lt;/p&gt;
&lt;p&gt;Et c’est ici que se cache le piège qui fait perdre une demi-heure à tout le monde. &lt;strong&gt;Tu ne peux pas basculer le mode avec &lt;code&gt;defaults write&lt;/code&gt;.&lt;/strong&gt; Tu peux l’écrire, &lt;code&gt;defaults&lt;/code&gt; te dira que c’est fait, &lt;code&gt;defaults read&lt;/code&gt; te le confirmera, et santad continuera tranquillement à tourner en Monitor. Reboot compris.&lt;/p&gt;
&lt;p&gt;Ce n’est pas un bug. C’est une décision de sécurité. Santa ne lit son mode que depuis les &lt;strong&gt;préférences gérées&lt;/strong&gt;, celles qu’un profil de configuration dépose, pas depuis les préférences ordinaires qu’un utilisateur pourrait modifier. La raison est limpide, si un simple &lt;code&gt;defaults write&lt;/code&gt; suffisait à sortir du Lockdown, le premier logiciel malveillant venu s’en servirait pour se libérer. Le verrou ne s’ouvre qu’avec une clé que l’utilisateur courant n’a pas.&lt;/p&gt;
&lt;p&gt;La clé, c’est un &lt;strong&gt;profil de configuration&lt;/strong&gt;, un fichier &lt;code&gt;.mobileconfig&lt;/code&gt;. Sur un parc géré, ton MDM le pousse sur toutes les machines. Sans MDM, tu écris le profil et tu l’installes à la main, via Réglages, Profils, Installer, mot de passe administrateur ou Touch ID à l’appui. Le profil contient le mode et la configuration de journalisation.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;PayloadType&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;string&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;com.northpolesec.santa&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;string&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;ClientMode&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;integer&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;2&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;integer&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;EventLogType&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;string&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;file&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;string&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;EventLogPath&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;key&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;string&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;/var/db/santa/santa.log&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;string&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le &lt;code&gt;ClientMode&lt;/code&gt; à &lt;code&gt;2&lt;/code&gt;, c’est le Lockdown. L’&lt;code&gt;EventLogType&lt;/code&gt; à &lt;code&gt;file&lt;/code&gt; et l’&lt;code&gt;EventLogPath&lt;/code&gt;, c’est ce qui garantit que Santa continue d’écrire son journal à l’endroit que Wazuh ira lire à l’étape suivante. Une fois le profil installé, santad le prend en compte immédiatement.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;santactl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; status&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le mode affiche désormais &lt;code&gt;Lockdown&lt;/code&gt;. La porte est fermée. Teste-le sans attendre, télécharge un petit utilitaire quelconque, un binaire que tu n’as pas allowlisté, et lance-le.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;./un-binaire-quelconque&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;macOS te répond que l’exécution a été bloquée par Santa. C’est le comportement attendu, et c’est la première fois que quelque chose s’oppose vraiment à un double-clic sur ton parc. Cette exécution refusée vient aussi d’atterrir dans &lt;code&gt;/var/db/santa/santa.log&lt;/code&gt;, en &lt;code&gt;decision=DENY&lt;/code&gt;. Il ne reste plus qu’à la faire remonter.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-4-faire-remonter-santa-dans-wazuh&quot;&gt;Étape 4, faire remonter Santa dans Wazuh&lt;/h2&gt;
&lt;p&gt;Santa bloque, sur chaque Mac, dans son coin. Ton SIEM ne le sait pas encore. On les branche, et la boucle de la série se referme sur le poste de travail.&lt;/p&gt;
&lt;p&gt;Rien à activer côté Santa, il écrit déjà son journal. Le branchement se fait sur &lt;strong&gt;deux machines&lt;/strong&gt;, et c’est le même partage des rôles qu’à l’épisode 5. L’agent Wazuh, sur chaque Mac, lit le fichier et expédie les lignes brutes. Le &lt;strong&gt;manager&lt;/strong&gt;, sur ton VPS de l’épisode 2, décode et décide quoi en faire. Une machine ramasse, l’autre comprend.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Côté Mac&lt;/strong&gt;, tu dis à l’agent de lire le journal de Santa. Et plutôt que d’éditer chaque poste un par un, tu réutilises les &lt;strong&gt;groupes&lt;/strong&gt; de l’épisode 3. Le bloc va dans la configuration partagée du groupe &lt;code&gt;macos&lt;/code&gt;, sur le manager, dans &lt;code&gt;/var/ossec/etc/shared/macos/agent.conf&lt;/code&gt;, et le manager le pousse à tous tes Mac d’un coup.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;localfile&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;location&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;/var/db/santa/santa.log&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;location&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;log_format&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;syslog&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;log_format&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;localfile&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu reconnais le &lt;code&gt;&amp;#x3C;localfile&gt;&lt;/code&gt; de l’épisode 3, le mécanisme par lequel Wazuh avale n’importe quelle source de journaux. L’agent tourne en root, il lit &lt;code&gt;/var/db/santa/&lt;/code&gt; sans difficulté.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Côté manager&lt;/strong&gt;, maintenant, et sur lui seul. Un &lt;strong&gt;décodeur&lt;/strong&gt; extrait les champs utiles de la ligne, dans &lt;code&gt;/var/ossec/etc/decoders/local_decoder.xml&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;santa&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;prematch&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;santad: action=EXEC&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;prematch&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;santa-decision&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;parent&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;santa&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;parent&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;regex&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; type&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;pcre2&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;decision=(\w+)\|reason=(\w+).*?\|path=(.+)$&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;regex&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;order&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;santa_decision, santa_reason, santa_path&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;order&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Puis des &lt;strong&gt;règles&lt;/strong&gt; qui transforment ces champs en alertes, dans &lt;code&gt;/var/ossec/etc/rules/local_rules.xml&lt;/code&gt;, toujours sur le manager.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;group&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;santa,&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100500&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;0&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoded_as&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;santa&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoded_as&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Santa, décision d&apos;exécution.&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100501&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;10&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;100500&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;field&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;santa_decision&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; type&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;pcre2&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;^DENY$&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;field&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Santa, exécution bloquée, binaire $(santa_path).&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100502&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;3&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;100500&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;field&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;santa_decision&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; type&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;pcre2&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;^ALLOW$&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;field&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Santa, exécution autorisée, binaire $(santa_path).&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;group&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;La règle mère est en niveau 0, elle décode sans alerter. Le &lt;strong&gt;blocage passe en niveau 10&lt;/strong&gt;, c’est lui qui t’intéresse, un binaire refusé sur un poste est un signal que tu veux voir. L’autorisation reste en niveau 3, une trace discrète, sans quoi ton tableau de bord se noierait sous les milliers d’exécutions légitimes de la journée, surtout tant que tu es en Monitor où tout est &lt;code&gt;ALLOW&lt;/code&gt;. L’ancrage &lt;code&gt;^DENY$&lt;/code&gt; et non &lt;code&gt;DENY&lt;/code&gt;, même précaution qu’à l’épisode 5, pour ne coller qu’à la décision exacte.&lt;/p&gt;
&lt;p&gt;Ne crois pas ce décodeur sur parole, teste-le. L’outil vit sur le manager, pas sur l’agent.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /var/ossec/bin/wazuh-logtest&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu colles une vraie ligne &lt;code&gt;DENY&lt;/code&gt; de ton &lt;code&gt;santa.log&lt;/code&gt;, et il te montre ce qu’il en a compris, phase par phase, décodeur reconnu, champs extraits, règle déclenchée. Si &lt;code&gt;santa_decision&lt;/code&gt; et &lt;code&gt;santa_path&lt;/code&gt; ne sortent pas, c’est le motif d’extraction qu’il faut ajuster, et tu le sauras en trente secondes. Un mot d’honnêteté sur ce point, les lignes de Santa commencent par un horodatage entre crochets qui n’a pas la forme d’un log syslog classique. Le pré-décodage et le motif peuvent demander un ajustement selon ta version de Wazuh et le format exact de tes lignes. C’est précisément ce que &lt;code&gt;wazuh-logtest&lt;/code&gt; te confirme chez toi, avant que tu comptes sur l’alerte.&lt;/p&gt;
&lt;p&gt;Une fois le test concluant, redémarre le manager pour qu’il charge ton décodeur et tes règles.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; restart&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-manager&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Un salarié lance un binaire inconnu, Santa le refuse, l’écrit dans son journal, l’agent Wazuh le lit et l’expédie par le Tailnet, le manager le décode et lève une alerte de niveau 10, elle s’affiche dans ton tableau de bord à côté de tes blocages CrowdSec et de tes rejets Rspamd. La dernière porte est fermée, et tu la vois se fermer.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;si-ça-ne-marche-pas&quot;&gt;Si ça ne marche pas&lt;/h2&gt;
&lt;h3 id=&quot;problème-santa-est-installé-mais-ne-journalise-rien&quot;&gt;Problème, Santa est installé mais ne journalise rien&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; l’extension système n’a pas été approuvée, ou le Full Disk Access manque. Sans eux, santad ne voit pas les exécutions.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; dans Réglages, Confidentialité et sécurité, vérifie que l’extension Santa est autorisée et que l’accès disque complet lui est accordé. &lt;code&gt;santactl status&lt;/code&gt; doit reporter l’extension active.&lt;/p&gt;
&lt;h3 id=&quot;problème-le-mode-reste-sur-monitor-malgré-tout&quot;&gt;Problème, le mode reste sur Monitor malgré tout&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; presque à coup sûr, tu as tenté la bascule avec &lt;code&gt;defaults write&lt;/code&gt;. Santa l’ignore, par conception.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; passe par un profil de configuration &lt;code&gt;.mobileconfig&lt;/code&gt;, poussé par MDM ou installé à la main dans Réglages, Profils. C’est le seul canal que Santa écoute pour son mode.&lt;/p&gt;
&lt;h3 id=&quot;problème-tu-as-ajouté-des-règles-mais-santactl-status-affiche-static-rules-0&quot;&gt;Problème, tu as ajouté des règles mais &lt;code&gt;santactl status&lt;/code&gt; affiche &lt;code&gt;Static Rules: 0&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; tu lis le mauvais compteur. &lt;code&gt;santactl status&lt;/code&gt; sépare les règles par type, et &lt;code&gt;Static Rules&lt;/code&gt; ne compte que celles d’un fichier de configuration statique, pas celles que tu ajoutes en ligne de commande.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; une règle posée par TeamID compte dans &lt;code&gt;TeamID Rules&lt;/code&gt;, une règle SigningID dans &lt;code&gt;SigningID Rules&lt;/code&gt;. Regarde la ligne du type que tu as réellement posé, tes règles y sont.&lt;/p&gt;
&lt;h3 id=&quot;problème-rien-ne-remonte-dans-wazuh&quot;&gt;Problème, rien ne remonte dans Wazuh&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; trois suspects, à départager avant de toucher à quoi que ce soit. Soit le fichier ne grossit pas côté Mac, soit l’agent ne le lit pas, soit le manager ne sait pas le décoder. Le grand classique, décodeur et règles édités sur le Mac au lieu du manager, où ils ne servent à rien.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; le fichier grossit-il ? S’il grossit, va sur le &lt;strong&gt;manager&lt;/strong&gt;, passe une ligne dans &lt;code&gt;wazuh-logtest&lt;/code&gt; et regarde à quelle phase ça casse. Vérifie que &lt;code&gt;local_decoder.xml&lt;/code&gt; et &lt;code&gt;local_rules.xml&lt;/code&gt; sont bien sur cette machine-là, et que tu as redémarré &lt;code&gt;wazuh-manager&lt;/code&gt; après les avoir écrits.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-ta-coûté&quot;&gt;Ce que ça t’a coûté&lt;/h2&gt;
&lt;p&gt;La licence, rien. Santa est open source sous Apache 2.0, sans version payante, sans palier entreprise, sans quota de postes.&lt;/p&gt;
&lt;p&gt;La machine, rien non plus. Santa tourne sur le Mac que tu as déjà. Le serveur de synchronisation, si tu en montes un, c’est un service léger de plus sur ton infrastructure existante.&lt;/p&gt;
&lt;p&gt;Ton temps, un peu pour l’installation, beaucoup plus pour la calibration. Et c’est le seul vrai poste de dépense, celui qu’aucun SaaS ne t’épargnera.&lt;/p&gt;
&lt;p&gt;Sois lucide sur ce que Santa ne fait pas, parce que ces angles morts sont réels et actionnables.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Il ne voit pas les scripts.&lt;/strong&gt; Santa contrôle les binaires exécutés. Un script Python, un shell script, une macro, sont interprétés par un binaire, &lt;code&gt;python3&lt;/code&gt;, &lt;code&gt;bash&lt;/code&gt;, &lt;code&gt;osascript&lt;/code&gt;, que tu as probablement autorisé. Le script passe alors sous le radar, c’est l’interpréteur qui est jugé, pas le code qu’il exécute. C’est la limite technique majeure, et elle ouvre tout un chantier connexe, le durcissement des interpréteurs eux-mêmes.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;L’allowlist est vivante.&lt;/strong&gt; Chaque nouvel outil légitime, chaque nouvel éditeur, c’est une règle à ajouter. Le TeamID limite la casse, une règle par éditeur qui survit à ses mises à jour, mais tu ne poses pas cette liste une fois pour la laisser dix ans.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le jour de la bascule fait mal.&lt;/strong&gt; Tout ce que tu as oublié d’allowlister est bloqué net, en pleine journée de travail. Le premier &lt;code&gt;DENY&lt;/code&gt; d’un parc, c’est souvent un vieil agent de sauvegarde dormant ou un outil que personne ne savait plus installé. D’où le temps passé en Monitor, et une procédure de whitelist rapide sous la main pour les premiers jours.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sans MDM, c’est plus manuel.&lt;/strong&gt; Approbation de l’extension, accès disque complet, profil de mode, tout se fait poste par poste. Tenable à trois Mac, pénible à trente.&lt;/p&gt;
&lt;p&gt;Aucune de ces limites n’est une raison de renoncer. C’est le prix d’un contrôle qui reste &lt;strong&gt;entièrement chez toi&lt;/strong&gt;, aucune application soumise au cloud d’un tiers pour savoir si elle a le droit de tourner, aucun catalogue de confiance loué à un éditeur américain. Tu décides, la décision s’applique en local, et elle remonte dans ton SIEM.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Ce que fait cet article.&lt;/strong&gt; On installe Santa sur les Mac, on démarre en mode Monitor pour cartographier ce qui s’exécute, on écrit une allowlist par TeamID et SigningID, on bascule en Lockdown via un profil de configuration, puis on fait remonter chaque décision dans Wazuh via un décodeur et des règles maison. Le poste de travail cesse d’être l’angle mort du SIEM.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les commandes.&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Installer Santa sur chaque Mac : &lt;code&gt;sudo installer -pkg santa-*.pkg -target /&lt;/code&gt;, puis approuver l’extension système et accorder le Full Disk Access.&lt;/li&gt;
&lt;li&gt;Vérifier le mode par défaut : &lt;code&gt;santactl status&lt;/code&gt;, tu dois lire &lt;code&gt;Monitor&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Observer : &lt;code&gt;tail -f /var/db/santa/santa.log&lt;/code&gt;, laisser tourner plusieurs jours.&lt;/li&gt;
&lt;li&gt;Identifier une app : &lt;code&gt;santactl fileinfo /Applications/UneApp.app&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Autoriser par éditeur : &lt;code&gt;sudo santactl rule --allow --teamid --identifier &amp;#x3C;TEAMID&gt;&lt;/code&gt;, ou par app : &lt;code&gt;--signingid --identifier &amp;#x3C;SIGNINGID&gt;&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Pour un parc, centraliser les règles avec un serveur de synchronisation auto-hébergé (Moroz), gardé en Tailnet-only.&lt;/li&gt;
&lt;li&gt;Verrouiller : profil &lt;code&gt;.mobileconfig&lt;/code&gt; avec &lt;code&gt;ClientMode&lt;/code&gt; à &lt;code&gt;2&lt;/code&gt;, &lt;code&gt;EventLogType&lt;/code&gt; à &lt;code&gt;file&lt;/code&gt;, &lt;code&gt;EventLogPath&lt;/code&gt; sur &lt;code&gt;/var/db/santa/santa.log&lt;/code&gt;, poussé par MDM ou installé dans Réglages, Profils. &lt;code&gt;defaults write&lt;/code&gt; est ignoré.&lt;/li&gt;
&lt;li&gt;Intégrer à Wazuh, sur deux machines : &lt;code&gt;&amp;#x3C;localfile&gt;&lt;/code&gt; sur &lt;code&gt;/var/db/santa/santa.log&lt;/code&gt; &lt;strong&gt;côté agent&lt;/strong&gt; (via la config partagée du groupe &lt;code&gt;macos&lt;/code&gt;), décodeur et règles &lt;strong&gt;côté manager&lt;/strong&gt; (blocage en niveau 10), validation avec &lt;code&gt;/var/ossec/bin/wazuh-logtest&lt;/code&gt; &lt;strong&gt;sur le manager&lt;/strong&gt;, puis redémarrage de &lt;code&gt;wazuh-manager&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Tu es parti d’un dispositif qui voyait tes serveurs, bloquait ton réseau et filtrait ton mail, mais laissait s’exécuter n’importe quel binaire une fois qu’il avait atterri sur un Mac.&lt;/p&gt;
&lt;p&gt;Tu as &lt;strong&gt;installé Santa&lt;/strong&gt; sur tes postes, et compris qu’il ne travaille pas sur une liste de menaces mais sur une liste d’autorisés, tout ce qui n’est pas invité reste dehors. Tu as &lt;strong&gt;cartographié en Monitor&lt;/strong&gt; ce qui tourne réellement, puis &lt;strong&gt;écrit ton allowlist&lt;/strong&gt; par TeamID et SigningID, le bon niveau entre finesse et maintenabilité.&lt;/p&gt;
&lt;p&gt;Tu as &lt;strong&gt;verrouillé en Lockdown&lt;/strong&gt; par profil de configuration, seul canal que Santa écoute pour son mode. Et tu as &lt;strong&gt;branché tout ça sur Wazuh&lt;/strong&gt;, décodeur et règles, pour qu’un binaire refusé lève une alerte de niveau 10 dans le même tableau de bord que le reste.&lt;/p&gt;
&lt;p&gt;Le tout reste chez toi. Aucune application ne part se faire juger dans le cloud de quelqu’un d’autre, aucun tiers ne décide à ta place de ce qui a le droit de tourner sur tes machines.&lt;/p&gt;
&lt;p&gt;Ton dispositif est complet. Quatre couches qui voient et qui bloquent, du serveur au poste de travail. Reste à le rendre vivable au quotidien. Un SIEM qui te réveille dix fois par nuit pour des broutilles, tu finis par l’ignorer, et un SIEM qu’on ignore ne sert à rien. À l’épisode 7, le dernier, on calibre l’alerting pour n’être dérangé que quand ça compte, et on fait les comptes, le coût total honnête de ce que tu viens de monter, face à la facture d’un SaaS équivalent.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;rappel-de-la-série&quot;&gt;Rappel de la série&lt;/h2&gt;
&lt;p&gt;Sept épisodes pour monter ta plomberie de sécurité souveraine, brique par brique.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;Épisode 0, le fondement de la série.&lt;/a&gt;&lt;/strong&gt; Pourquoi une PME a besoin d’un SIEM souverain, NIS2, RGPD, et le coût du statu quo.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;Épisode 1, le socle.&lt;/a&gt;&lt;/strong&gt; Le VPS durci hors CLOUD Act.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;Épisode 2, Wazuh en tout-en-un.&lt;/a&gt;&lt;/strong&gt; Manager, indexeur et tableau de bord sur un seul nœud.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;Épisode 3, les agents partout.&lt;/a&gt;&lt;/strong&gt; Déploiement sur tes serveurs, Mac et Windows.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/&quot;&gt;Épisode 4, la défense réseau communautaire.&lt;/a&gt;&lt;/strong&gt; Bloquer les attaquants connus avant qu’ils n’arrivent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;Épisode 5, le filtre mail.&lt;/a&gt;&lt;/strong&gt; Anti-spam et anti-hameçonnage devant ton serveur de messagerie.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 6, le contrôle d’exécution sur les Mac.&lt;/strong&gt; Décider quelles applications ont le droit de démarrer. Tu viens de le lire.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 7, alerting et coût total.&lt;/strong&gt; Notifications calibrées et bilan financier honnête face au SaaS.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>santa</category><category>securite</category><category>macos</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-santa-controle-execution-mac-siem-souverain-1.png" length="0" type="image/png"/></item><item><title>Les MCP, la porte dérobée de ton IA</title><link>https://macsouverain.com/les-mcp-porte-derobee-de-ton-ia/</link><guid isPermaLink="true">https://macsouverain.com/les-mcp-porte-derobee-de-ton-ia/</guid><description>Les serveurs MCP donnent à ton IA un accès réel à ton Mac : fichiers, shell. Pratique, mais c&apos;est une porte dérobée. Voilà comment la verrouiller.</description><pubDate>Sat, 18 Jul 2026 15:17:13 GMT</pubDate><content:encoded>&lt;h2 id=&quot;le-confort-qui-te-tend-un-piège&quot;&gt;Le confort qui te tend un piège&lt;/h2&gt;
&lt;p&gt;Tu installes Claude Desktop sur ton Mac. En quelques clics, tu lui branches un serveur qui lit tes fichiers, un autre qui interroge ta base de données, un troisième qui lance des commandes dans ton terminal. D’un coup, ton assistant ne se contente plus de discuter, il agit. Il ouvre tes documents, réécrit ton code, trie tes dossiers pendant que tu bois ton café.&lt;/p&gt;
&lt;p&gt;C’est bluffant. C’est aussi le moment exact où tu viens d’ouvrir une porte sur ta machine sans en garder la clé.&lt;/p&gt;
&lt;p&gt;Ces petits connecteurs s’appellent des serveurs MCP. Ils sont la raison pour laquelle ton IA est passée de bavarde à utile. Ils sont aussi la surface d’attaque la plus mal comprise de tout l’écosystème IA de 2026. Et le problème n’est pas théorique : une faille de conception dans le protocole a exposé environ 200 000 instances à l’exécution de code à distance, en avril dernier.&lt;/p&gt;
&lt;p&gt;Voyons ce que tu branches vraiment sur ton Mac quand tu ajoutes un MCP. Et surtout, comment le faire sans te faire avoir.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;un-mcp-cest-quoi-au-juste&quot;&gt;Un MCP, c’est quoi au juste&lt;/h2&gt;
&lt;p&gt;MCP, ça veut dire Model Context Protocol. Anthropic l’a publié fin 2024 comme une norme ouverte, et tout le monde l’a adoptée, Claude bien sûr, l’app Claude Desktop comme l’outil en ligne de commande Claude Code, mais aussi Cursor, Windsurf, et une bonne partie des outils IA que tu croises.&lt;/p&gt;
&lt;p&gt;L’idée est simple, presque évidente. Un modèle de langage, tout seul, ne sait que parler. Il ne peut ni ouvrir un fichier, ni lire ta base, ni envoyer un mail. Le MCP est le câble standard qui relie ton assistant à des outils extérieurs. Un serveur MCP d’un côté expose une capacité, lire des fichiers, requêter une API, exécuter une commande. L’assistant de l’autre côté décide quand s’en servir.&lt;/p&gt;
&lt;p&gt;Pense à une prise universelle. Avant, chaque appareil avait son branchement propriétaire. Le MCP, c’est la prise unique où tu enfiches ce que tu veux : un connecteur pour tes fichiers, un pour ton agenda, un pour ton dépôt Git. Ton IA pioche dedans à la demande.&lt;/p&gt;
&lt;p&gt;Concrètement, le flux ressemble à ça. Tu demandes à Claude de ranger tes captures d’écran. Le modèle repère qu’il a un serveur MCP filesystem à disposition. Il l’appelle, liste ton dossier, déplace les fichiers. Tu vois le résultat, pas la mécanique. Le serveur a exécuté une action réelle sur ton disque, décidée par le modèle, déclenchée par ta phrase.&lt;/p&gt;
&lt;p&gt;C’est exactement là que le confort bascule en risque.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pourquoi-cest-une-porte-dérobée&quot;&gt;Pourquoi c’est une porte dérobée&lt;/h2&gt;
&lt;p&gt;Reprends le flux, mais regarde qui décide et qui exécute.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Toi&lt;/strong&gt;, tu écris une phrase en langage naturel. &lt;strong&gt;Le modèle&lt;/strong&gt;, une boîte statistique que personne ne contrôle ligne à ligne, décide quel outil appeler et avec quels arguments. &lt;strong&gt;Le serveur MCP&lt;/strong&gt; exécute ce qu’on lui demande, sur ta machine, avec tes droits. Entre les trois, il n’y a pas de garde du corps. Personne pour lever la main et dire “attends, tu es sûr de vouloir supprimer ça ?”.&lt;/p&gt;
&lt;p&gt;Un serveur MCP mal conçu ou franchement malveillant, c’est un exécuteur de commandes qui obéit à un intermédiaire que tu ne pilotes pas. Le modèle peut être manipulé par une consigne cachée, un texte piégé dans un fichier qu’il lit, une page web qu’on lui fait ouvrir. On appelle ça une injection de prompt. Le résultat : ton assistant se retrouve à lancer une action que tu n’as jamais demandée, via un serveur qui, lui, n’a aucune raison de refuser.&lt;/p&gt;
&lt;p&gt;Et le vrai piège est dans la configuration. Un fichier de config MCP, ce n’est pas une liste de préférences bien sages. C’est, en pratique, un script shell déguisé. Il définit quels exécutables lancer, avec quels arguments, quelles variables d’environnement. Charger une config MCP que tu n’as pas lue, c’est lancer un script que tu n’as pas relu, et potentiellement malveillant. La nuance, c’est que celui-ci a l’air inoffensif parce qu’il est planqué dans un fichier JSON.&lt;/p&gt;
&lt;p&gt;Le mot “porte dérobée” est mérité pour une raison précise : tu ne vois rien passer. Pas de fenêtre de confirmation, pas de trace visible, pas d’alerte. Le modèle décide, le serveur exécute, et toi tu regardes le résultat en pensant que ton IA t’a rendu service.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;lincident-qui-a-mis-tout-le-monde-daccord&quot;&gt;L’incident qui a mis tout le monde d’accord&lt;/h2&gt;
&lt;p&gt;Ce n’est pas une hypothèse de labo. C’est arrivé, à grande échelle, en avril 2026.&lt;/p&gt;
&lt;p&gt;Le 15 avril, l’équipe de recherche d’OX Security publie un rapport au titre peu modeste, “The Mother of All AI Supply Chains”. Le constat est brutal : l’interface principale des SDK MCP officiels, celle qui fait dialoguer l’outil et le serveur en local, permet à une simple configuration de déclencher l’exécution de commandes système arbitraires. Sans validation des entrées, sans isolation par défaut.&lt;/p&gt;
&lt;p&gt;Les chiffres donnent le vertige :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;7 000 et plus&lt;/strong&gt; serveurs MCP publics indexés&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;150 millions et plus&lt;/strong&gt; de téléchargements des SDK et serveurs concernés&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;environ 200 000 instances&lt;/strong&gt; estimées vulnérables&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;10 CVE&lt;/strong&gt; émis, dont CVE-2026-30615 sur Windsurf : une injection de prompt via HTML malveillant menant à l’exécution de code en local, notée 8.0 sur 10 en sévérité&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Côté Mac, ce ne sont pas des noms abstraits. Cursor, Windsurf et Claude Desktop utilisent ces SDK, et sont concrètement touchés par leurs intégrations MCP. Les chercheurs ont validé leurs attaques sur six plateformes en production. Ça marchait pour de vrai.&lt;/p&gt;
&lt;p&gt;Et voilà le meilleur, ou le pire selon le côté où tu te trouves. La réponse d’Anthropic, telle que rapportée par OX Security et confirmée par plusieurs reprises, tient en deux mots : “by design”. Le comportement est jugé normal, à condition que l’utilisateur, ou le développeur en aval, fasse lui-même le travail de sécurisation. Anthropic refuse de modifier le protocole.&lt;/p&gt;
&lt;p&gt;L’argument est défendable sur le papier. Un protocole n’est pas un bac à sable, et personne n’oblige un standard à border tous les usages. Sauf que dans les faits, Anthropic transfère la responsabilité du verrouillage à des gens qui n’ont jamais signé pour ça : le particulier qui installe Claude Desktop sans notion de sécurité, la PME qui branche un connecteur trouvé sur un dépôt public. Les correctifs viennent des outils en aval, Cursor, Windsurf et les autres, pas du protocole lui-même.&lt;/p&gt;
&lt;p&gt;Traduction : le sandbox, c’est ton problème. Autant le savoir avant, pas après.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/anthropic-mcp-rce-design-flaw-avril-2026/&quot;&gt;MCP d’Anthropic, un défaut de conception expose 200 000 instances&lt;/a&gt;, notre radar sur la faille et les CVE associés.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;durcir-tes-mcp-sans-renoncer-au-confort&quot;&gt;Durcir tes MCP sans renoncer au confort&lt;/h2&gt;
&lt;p&gt;Bonne nouvelle : tu n’as pas à choisir entre “IA branchée sur tout” et “IA débranchée et inutile”. Le curseur se règle. Voilà comment le mettre au bon endroit.&lt;/p&gt;
&lt;p&gt;Avant de plonger dans les réglages, sache où ça se passe. Sur Claude Desktop, tes serveurs MCP se gèrent dans Réglages puis Développeur, et le bouton “Modifier la config” ouvre le fichier &lt;code&gt;claude_desktop_config.json&lt;/code&gt;.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-01-claude-desktop-developpeur-les-mcp-porte-derobee-de-ton-ia.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Dans Claude Desktop, Réglages puis Développeur, tes serveurs MCP locaux et le bouton pour ouvrir la config.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;À l’ouverture, une config MCP ressemble à ça : quelques serveurs déclarés, chacun avec sa commande et ses accès. Rien de plus qu’un script qui attend son heure.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-02-config-mcp-les-mcp-porte-derobee-de-ton-ia.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Une config MCP : deux serveurs déclarés, chacun avec sa commande et ses accès.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;1. Inventorie tes serveurs MCP actifs.&lt;/strong&gt; Sur Claude Desktop, va dans Réglages puis Développeur, et clique sur “Modifier la config” : ça ouvre &lt;code&gt;~/Library/Application Support/Claude/claude_desktop_config.json&lt;/code&gt;. Sur Cursor, va dans Réglages puis MCP. Sur Windsurf, la liste est accessible depuis l’IDE. Désactive tout serveur que tu n’as pas déployé toi-même ou dont tu n’as pas lu le code. Si tu ne sais plus pourquoi il est là, il ne devrait pas y être.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Applique le moindre privilège, sérieusement.&lt;/strong&gt; Un serveur MCP filesystem ne doit jamais pointer sur &lt;code&gt;/&lt;/code&gt; ni sur &lt;code&gt;~&lt;/code&gt;. Donne-lui le sous-dossier précis du projet en cours, rien de plus. Ton assistant n’a pas besoin d’un accès total à ton disque pour ranger trois captures d’écran.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Traite toute config tierce comme hostile par défaut.&lt;/strong&gt; Un bout de config récupéré sur GitHub, un fichier partagé sur Slack, l’export d’un collègue, un dépôt cloné : lis la configuration intégralement avant de l’activer. Les chemins exécutables, les commandes, les variables d’environnement. Rappelle-toi que c’est un script shell déguisé. Personne ne lance un &lt;code&gt;.sh&lt;/code&gt; inconnu sans le lire. Un &lt;code&gt;.json&lt;/code&gt; de config MCP, c’est pareil.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Si tu es sur Claude Code, verrouille par la config, pas par la consigne.&lt;/strong&gt; Tu peux écrire dans ton &lt;code&gt;CLAUDE.md&lt;/code&gt; une règle du genre “n’active aucun serveur MCP sans mon accord”. Ça documente ton intention, mais ne te repose pas dessus : tu viens de lire pourquoi un modèle qu’on manipule n’obéit pas toujours aux consignes. La vraie serrure est dans ton &lt;code&gt;settings.json&lt;/code&gt;. Tiens-y une liste blanche des outils MCP autorisés et refuse le reste avec &lt;code&gt;permissions.deny&lt;/code&gt;, et laisse active la demande d’approbation pour tout serveur déclaré dans un &lt;code&gt;.mcp.json&lt;/code&gt; de projet, ne l’auto-approuve jamais. Le &lt;code&gt;CLAUDE.md&lt;/code&gt; rappelle la règle à l’humain, le &lt;code&gt;settings.json&lt;/code&gt; l’impose à la machine.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-03-settings-permissions-les-mcp-porte-derobee-de-ton-ia.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Un settings.json avec une liste blanche d&amp;#x27;outils MCP autorisés et un deny pour le reste.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;5. Verrouille les serveurs qui écoutent le réseau.&lt;/strong&gt; Certains MCP tournent comme un petit serveur HTTP local. Vérifie qu’il est lié à &lt;code&gt;127.0.0.1&lt;/code&gt;, jamais à &lt;code&gt;0.0.0.0&lt;/code&gt;. Sinon, une page web malveillante ouverte dans ton navigateur peut, dans le pire cas, déclencher une exécution sur ta machine.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;~ % lsof -iTCP -sTCP:LISTEN -nP | grep node&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;node    41827 demo   23u  IPv4 0x9f3a5c  0t0  TCP 127.0.0.1:8787 (LISTEN)&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;node    41902 demo   25u  IPv4 0x9f3b1d  0t0  TCP *:8788 (LISTEN)&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;La première ligne est bien sagement sur &lt;code&gt;127.0.0.1&lt;/code&gt;. La seconde écoute sur &lt;code&gt;*&lt;/code&gt;, donc sur toutes les interfaces : c’est celle que tu dois corriger.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;6. Mets à jour les outils touchés.&lt;/strong&gt; Cursor, Windsurf, Claude Desktop et les frameworks concernés ont publié des versions correctives à partir d’avril 2026. Vérifie dans les notes de version que la faille est explicitement traitée, pas juste “diverses améliorations de sécurité”.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;7. Préfère le local au distant.&lt;/strong&gt; Un serveur MCP qui tourne sur ta machine et n’expose rien au réseau est bien plus facile à raisonner qu’un connecteur distant hébergé chez un tiers. Chaque service extérieur ajouté à la boucle, c’est une entreprise de plus qui peut lire ce qui transite, ou se faire compromettre à ta place.&lt;/p&gt;
&lt;p&gt;Et avant d’installer un nouveau serveur MCP tiers, pose-toi trois questions. Qui l’a écrit et le code est-il consultable ? De quels accès a-t-il réellement besoin, et est-ce que la config demande davantage ? Qu’est-ce qui se passe le jour où ce serveur est compromis ? Si tu ne peux pas répondre aux trois, ne l’installe pas.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Les MCP sont ce qui rend ton assistant IA vraiment utile. Ils sont aussi ce qui le relie à tes fichiers, ta base, ton shell, avec tes droits et sans témoin. Le modèle décide, le serveur exécute, tu ne vois rien passer. C’est la définition d’une porte dérobée, et avril 2026 a prouvé qu’elle était grande ouverte pour environ 200 000 installations.&lt;/p&gt;
&lt;p&gt;La souveraineté, ici, ne consiste pas à débrancher ton IA. Elle consiste à savoir ce qui est branché, à ne donner que le strict accès nécessaire, et à ne jamais charger une config que tu n’as pas lue. Un serveur MCP local, au périmètre serré, dont tu as lu le code, c’est un outil. Le même serveur, tiré d’un dépôt inconnu avec un accès à tout ton disque, c’est une faille avec une interface amicale.&lt;/p&gt;
&lt;p&gt;Inventorie tes MCP. Coupe ceux que tu ne reconnais pas. Réduis les accès de ceux que tu gardes. Le reste, ce sont juste de bonnes habitudes que tu as déjà pour le reste de ta machine.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire aussi : &lt;a href=&quot;https://macsouverain.com/ton-ia-peut-etre-eteinte-monte-la-tienne/&quot;&gt;Ton IA peut être éteinte par les US, monte la tienne&lt;/a&gt; et &lt;a href=&quot;https://macsouverain.com/38-apple-intelligence-ce-qui-sort-de-ton-mac/&quot;&gt;Apple Intelligence, ce qui sort vraiment de ton Mac&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ia</category><category>securite</category><category>mcp</category><category>macos</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-les-mcp-porte-derobee-de-ton-ia.png" length="0" type="image/png"/></item><item><title>Rspamd devant ta boîte mail, le phishing s&apos;arrête au paillasson</title><link>https://macsouverain.com/rspamd-mail-siem-souverain/</link><guid isPermaLink="true">https://macsouverain.com/rspamd-mail-siem-souverain/</guid><description>Installer Rspamd devant ton serveur mail, régler le scoring anti-spam et anti-hameçonnage, et faire remonter chaque verdict dans ton SIEM Wazuh.</description><pubDate>Thu, 16 Jul 2026 14:03:38 GMT</pubDate><content:encoded>&lt;p&gt;À l’épisode précédent, tu as posé &lt;a href=&quot;https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/&quot;&gt;CrowdSec en première ligne&lt;/a&gt;. Ton pare-feu refoule désormais les IP malveillantes avant qu’elles ne touchent tes services, et chaque décision remonte dans Wazuh. Ton SIEM voit et il mord.&lt;/p&gt;
&lt;p&gt;Sauf que l’attaque qui va te coûter cher n’arrivera pas par le port SSH.&lt;/p&gt;
&lt;p&gt;Elle arrivera par un mail. Une fausse facture qui imite ton fournisseur habituel, un lien qui ressemble à ton portail bancaire, une pièce jointe que ta comptable ouvrira parce que c’est son travail d’ouvrir des PJ factures.&lt;/p&gt;
&lt;p&gt;Ce mail-là traverse ton pare-feu sans un bruit, parce qu’il entre par une porte que tu as toi-même laissée ouverte, le port 25. CrowdSec ne bloquera rien, l’expéditeur a une IP propre. Wazuh ne verra rien, personne ne lui a dit de regarder de ce côté.&lt;/p&gt;
&lt;p&gt;C’est l’angle mort du dispositif. Trois briques posées, et le vecteur d’intrusion numéro un des PME passe encore en clair.&lt;/p&gt;
&lt;p&gt;Aujourd’hui, on le bouche. On installe &lt;a href=&quot;https://rspamd.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;Rspamd&lt;/strong&gt;&lt;/a&gt;, un moteur de filtrage qui s’intercale devant ton serveur mail, note chaque message entrant et décide de son sort. Puis on branche sa journalisation sur Wazuh, pour que chaque verdict, spam bloqué, hameçonnage détecté, message livré, s’affiche dans ton tableau de bord unique.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;avant-de-commencer&quot;&gt;Avant de commencer&lt;/h2&gt;
&lt;p&gt;Trois choses en tête avant la première commande.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce qu’il te faut.&lt;/strong&gt; Un serveur mail que tu administres, Postfix ou Exim, sur un serveur durci comme celui de l’épisode 1. Le manager Wazuh de l’épisode 2 en place sur ton VPS, et l’agent Wazuh de l’épisode 3 déjà installé sur ce serveur mail, pour la partie intégration en fin de tuto. Un accès administrateur, et Redis, qu’on installera en même temps que le moteur.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça change.&lt;/strong&gt; À la fin, chaque message entrant est noté avant d’atteindre la boîte de ton salarié. Les évidences sont refusées à la porte, les douteux arrivent marqués, les tentatives d’hameçonnage lèvent une alerte dans ton SIEM. Tu passes d’une boîte mail aveugle à une boîte mail instrumentée.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça ne change pas.&lt;/strong&gt; Rspamd filtre le mail &lt;strong&gt;entrant&lt;/strong&gt;. Ce n’est pas un antivirus de poste, ce n’est pas un remplaçant du bon sens de tes salariés, et ça ne protège pas contre un compte dont le mot de passe a fuité, l’attaquant est alors dedans, pas dehors. Et Rspamd n’est pas infaillible, il te trompera parfois. La question n’est pas s’il se trompe, c’est de quel côté tu règles le curseur quand il se trompe.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;rspamd-ne-dit-pas-oui-ou-non-il-note&quot;&gt;Rspamd ne dit pas oui ou non, il note&lt;/h2&gt;
&lt;p&gt;Le point qui change tout, et qui sépare Rspamd des filtres anti-spam classiques.&lt;/p&gt;
&lt;p&gt;Un filtre binaire regarde un message et tranche, spam ou pas spam. Le résultat est une porte, ouverte ou fermée, et le monde réel se venge vite de cette simplification. Une facture légitime avec un lien raccourci et une pièce jointe se fait jeter, une arnaque bien écrite passe.&lt;/p&gt;
&lt;p&gt;Rspamd, lui, &lt;strong&gt;accumule&lt;/strong&gt;. Il fait tourner des dizaines de vérifications sur le même message, chacune rapportant un petit poids, positif ou négatif. L’authentification de l’expéditeur échoue, plus deux points. Le domaine est sur une liste noire réputée, plus quatre. L’URL affichée ne correspond pas à l’URL réelle du lien, plus sept. Le message ressemble à cent autres déjà signalés comme spam, plus cinq. À l’inverse, l’expéditeur est correctement signé et connu, moins un.&lt;/p&gt;
&lt;p&gt;À la fin, il obtient un &lt;strong&gt;score&lt;/strong&gt;, et ce score déclenche une &lt;strong&gt;action&lt;/strong&gt; selon des seuils que tu fixes toi-même. La configuration recommandée est celle-ci.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Score 4, &lt;code&gt;greylist&lt;/code&gt;.&lt;/strong&gt; Le serveur expéditeur est prié de repasser plus tard. Un vrai serveur mail le fait, un robot de spam rarement.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Score 6, &lt;code&gt;add header&lt;/code&gt;.&lt;/strong&gt; Le message est livré, mais marqué. Ton client mail peut le ranger en indésirables.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Score 15, &lt;code&gt;reject&lt;/code&gt;.&lt;/strong&gt; Le message est refusé à la porte, il n’entre jamais.&lt;/p&gt;
&lt;p&gt;Trois niveaux de fermeté, pas une porte. C’est la même philosophie que le SIEM de l’épisode 2, on ne cherche pas la certitude, on cherche à graduer sa réponse à un signal incertain.&lt;/p&gt;
&lt;p&gt;Côté architecture, Rspamd tourne en plusieurs processus spécialisés. Le &lt;strong&gt;worker proxy&lt;/strong&gt; est celui qui parle à ton serveur mail, en protocole milter, sur le port 11332. Le &lt;strong&gt;worker normal&lt;/strong&gt; fait le calcul du score. Le &lt;strong&gt;worker controller&lt;/strong&gt; sert l’interface web et l’apprentissage. Tu n’auras à connaître que le premier, c’est lui qu’on branche.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-1-installer-le-moteur&quot;&gt;Étape 1, installer le moteur&lt;/h2&gt;
&lt;p&gt;Sur la machine qui héberge ton serveur mail. Le dépôt officiel Rspamd, puis le paquet, puis Redis, dont Rspamd a besoin pour ses statistiques, son filtre bayésien et son greylisting.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;curl&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -fsSL&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; https://rspamd.com/apt-stable/gpg.key&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; |&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; gpg&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --dearmor&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -o&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /usr/share/keyrings/rspamd.gpg&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;echo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; &quot;deb [signed-by=/usr/share/keyrings/rspamd.gpg] https://rspamd.com/apt-stable/ $(&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;lsb_release&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -cs&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;) main&quot;&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; |&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tee&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /etc/apt/sources.list.d/rspamd.list&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; update&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; install&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; rspamd&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; redis-server&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le dépôt &lt;code&gt;apt-stable&lt;/code&gt; est la branche de production, celle que tu veux sur un serveur mail. Rspamd est en version 4.x depuis mars 2026.&lt;/p&gt;
&lt;p&gt;Dis-lui où trouver Redis, dans &lt;code&gt;/etc/rspamd/local.d/redis.conf&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;servers = &quot;127.0.0.1:6379&quot;;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Une règle de survie avec Rspamd, et elle vaut pour tout le tuto. &lt;strong&gt;Tu ne touches jamais aux fichiers de &lt;code&gt;/etc/rspamd/&lt;/code&gt; directement.&lt;/strong&gt; Tu écris tes réglages dans &lt;code&gt;/etc/rspamd/local.d/&lt;/code&gt;, qui vient s’ajouter par-dessus la configuration par défaut. Une mise à jour du paquet écrase la première, jamais la seconde.&lt;/p&gt;
&lt;p&gt;Fixe ensuite un mot de passe pour l’interface web.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;rspamadm&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; pw&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Il te sort une empreinte que tu recopies dans &lt;code&gt;/etc/rspamd/local.d/worker-controller.inc&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;password = &quot;$2$ton_empreinte_ici&quot;;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;L’interface écoute sur le port 11334, en local uniquement. &lt;strong&gt;Laisse-la comme ça.&lt;/strong&gt; Doctrine de la série depuis l’épisode 1, rien d’inutile sur l’internet ouvert, tu y accèdes par ton Tailnet ou un tunnel SSH.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-2-le-brancher-devant-ton-serveur-mail&quot;&gt;Étape 2, le brancher devant ton serveur mail&lt;/h2&gt;
&lt;p&gt;Rspamd tourne, mais aucun message ne lui est présenté. Il faut que ton serveur mail lui soumette chaque courrier entrant avant de l’accepter.&lt;/p&gt;
&lt;p&gt;Le mécanisme s’appelle &lt;strong&gt;milter&lt;/strong&gt;, pour mail filter. Ton serveur mail met le message en pause pendant la transaction SMTP, le tend à Rspamd, attend le verdict, et agit en conséquence. Le message est jugé &lt;strong&gt;avant&lt;/strong&gt; d’être accepté, c’est toute la différence avec un filtre qui trie après coup dans la boîte.&lt;/p&gt;
&lt;p&gt;Sur Postfix, trois lignes dans &lt;code&gt;/etc/postfix/main.cf&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;smtpd_milters = inet:localhost:11332&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;milter_protocol = 6&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;milter_default_action = accept&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;La ligne qui mérite ton attention, c’est la troisième. &lt;code&gt;accept&lt;/code&gt; veut dire que &lt;strong&gt;si Rspamd est en panne, le courrier passe sans filtrage&lt;/strong&gt;. Tu privilégies la continuité du service. L’autre valeur couramment retenue est &lt;code&gt;tempfail&lt;/code&gt;, qui demande à l’expéditeur de repasser plus tard, ton mail est protégé même Rspamd à terre, mais une panne prolongée devient un incident de messagerie. Choisis en connaissance de cause. Pour une PME, &lt;code&gt;accept&lt;/code&gt; est le défaut raisonnable, à condition de surveiller le service Rspamd dans ton SIEM.&lt;/p&gt;
&lt;p&gt;Sur Exim, le branchement passe par le worker normal en HTTP, pas par le milter.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;spamd_address = 127.0.0.1 11333 variant=rspamd&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Recharge ton serveur mail, et envoie-toi un message depuis une adresse extérieure. Rspamd commence à noter.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-3-régler-les-seuils-et-armer-lanti-hameçonnage&quot;&gt;Étape 3, régler les seuils et armer l’anti-hameçonnage&lt;/h2&gt;
&lt;p&gt;Les seuils d’abord, dans &lt;code&gt;/etc/rspamd/local.d/actions.conf&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;greylist = 4;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;add_header = 6;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;reject = 15;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Ce sont les valeurs recommandées, et elles sont volontairement clémentes. Un &lt;code&gt;reject&lt;/code&gt; à 15 signifie qu’il faut une accumulation massive de signaux négatifs pour qu’un message soit refusé. C’est ce que tu veux au démarrage, on durcit plus tard, une fois qu’on a lu ses propres journaux.&lt;/p&gt;
&lt;p&gt;L’authentification de l’expéditeur ensuite. Trois modules actifs par défaut, &lt;strong&gt;SPF&lt;/strong&gt; (Sender Policy Framework), &lt;strong&gt;DKIM&lt;/strong&gt; (DomainKeys Identified Mail) et &lt;strong&gt;DMARC&lt;/strong&gt; (Domain-based Message Authentication, Reporting and Conformance). Ils vérifient trois choses, que le serveur émetteur a le droit d’envoyer pour ce domaine, que la signature cryptographique du message est valide, et que le domaine affiché dans le champ « De » est bien celui qui est authentifié. Un mail qui prétend venir de ta banque et qui échoue aux trois est démasqué sans avoir besoin de lire une seule ligne de son contenu.&lt;/p&gt;
&lt;p&gt;Par défaut, Rspamd note ces échecs mais n’applique pas la politique publiée par le domaine expéditeur. Pour qu’il l’applique, dans &lt;code&gt;/etc/rspamd/local.d/dmarc.conf&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;actions {&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  quarantine = &quot;add header&quot;;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  reject = &quot;reject&quot;;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu obéis désormais à ce que le vrai propriétaire du domaine a demandé au monde de faire des messages qui usurpent son identité. C’est gratuit, c’est immédiat, et ça élimine une famille entière de faux expéditeurs.&lt;/p&gt;
&lt;p&gt;Le module &lt;strong&gt;phishing&lt;/strong&gt; enfin, le cœur du sujet. Sa vérification de base est déjà active, il compare l’URL affichée dans le texte du lien à l’URL réelle de destination, et lève le symbole &lt;code&gt;PHISHED_URL&lt;/code&gt; quand les deux domaines divergent. C’est exactement le mécanisme du faux lien bancaire.&lt;/p&gt;
&lt;p&gt;Tu peux l’adosser à deux bases publiques d’URL de hameçonnage connues, dans &lt;code&gt;/etc/rspamd/local.d/phishing.conf&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;openphish_enabled = true;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;openphish_map = &quot;https://raw.githubusercontent.com/openphish/public_feed/refs/heads/main/feed.txt&quot;;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;phishtank_enabled = true;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Pas de bloc &lt;code&gt;phishing { }&lt;/code&gt; autour, et c’est la règle &lt;code&gt;local.d&lt;/code&gt; de l’étape 1 qui joue. Rspamd inclut déjà ce fichier &lt;strong&gt;à l’intérieur&lt;/strong&gt; de la section du module, tu n’écris que le contenu. Ajoute le bloc, et tu obtiens une section dans une section, silencieusement ignorée, aucune erreur au démarrage et aucun flux activé.&lt;/p&gt;
&lt;p&gt;Le message qui contient une URL déjà signalée ailleurs dans le monde lève &lt;code&gt;PHISHED_OPENPHISH&lt;/code&gt; ou &lt;code&gt;PHISHED_PHISHTANK&lt;/code&gt;, avec un poids lourd. La logique communautaire de CrowdSec, transposée aux liens malveillants.&lt;/p&gt;
&lt;p&gt;Trois autres modules travaillent pour toi sans que tu les configures. &lt;strong&gt;rbl&lt;/strong&gt; interroge les listes noires publiques de serveurs d’envoi. &lt;strong&gt;fuzzy_check&lt;/strong&gt; compare l’empreinte du message à celle de spams déjà signalés par le réseau Rspamd, un spam reformulé garde une empreinte proche. &lt;strong&gt;bayes&lt;/strong&gt; apprend de tes propres messages, à condition de l’entraîner.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;autolearn = true;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;dans &lt;code&gt;/etc/rspamd/local.d/classifier-bayes.conf&lt;/code&gt;, et Rspamd apprend seul des messages qu’il a classés avec certitude. Tu peux aussi le corriger à la main quand il se trompe, avec &lt;code&gt;rspamc learn_spam&lt;/code&gt; sur un message passé au travers, ou &lt;code&gt;rspamc learn_ham&lt;/code&gt; sur un légitime qu’il a marqué à tort.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-4-le-mettre-à-lépreuve&quot;&gt;Étape 4, le mettre à l’épreuve&lt;/h2&gt;
&lt;p&gt;Plutôt qu’attendre un vrai spam, tu en fabriques un.&lt;/p&gt;
&lt;p&gt;Il existe pour ça une chaîne de caractères standard, le &lt;strong&gt;GTUBE&lt;/strong&gt;, reconnue par tous les moteurs anti-spam sérieux et conçue pour déclencher un rejet certain sans être un vrai spam. Tu l’écris dans un message de test, et tu le soumets au moteur avec &lt;code&gt;rspamc&lt;/code&gt;, le client en ligne de commande.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;printf&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; &apos;Subject: test\n\nXJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X\n&apos;&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; &gt;&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /tmp/gtube.eml&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;rspamc&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; symbols&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /tmp/gtube.eml&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu dois voir le symbole &lt;code&gt;GTUBE&lt;/code&gt; et l’action &lt;code&gt;reject&lt;/code&gt;. Le GTUBE court-circuite le calcul du score et force le rejet directement, c’est tout l’intérêt du test. Si tu l’obtiens, le moteur tourne, il note et il tranche. Tu obtiens quelque chose comme ceci.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;Results for file: /tmp/gtube.eml (0.014 seconds)&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;[Metric: default]&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;Action: reject&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;Spam: true&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;Symbol: GTUBE (0.00)&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;Message-ID: undef&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Pas besoin d’un score qui crève le seuil, le symbole &lt;code&gt;GTUBE&lt;/code&gt; déclenche un passthrough qui impose l’action &lt;code&gt;reject&lt;/code&gt; quel que soit le total. C’est le comportement attendu, ton moteur applique bien le verdict.&lt;/p&gt;
&lt;p&gt;Deux commandes de contrôle pour la suite.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;rspamc&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; stat&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Elle te donne l’état du moteur, les messages scannés, la répartition par action, l’état du filtre bayésien.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;rspamc&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; symbols&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /chemin/vers/un/vrai/message.eml&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Elle rejoue un vrai message et t’affiche le détail des symboles avec leur poids. C’est ton outil de diagnostic quand un message est passé alors qu’il n’aurait pas dû, ou l’inverse. Tu ne devines pas, tu lis la ligne de compte.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-5-faire-remonter-rspamd-dans-wazuh&quot;&gt;Étape 5, faire remonter Rspamd dans Wazuh&lt;/h2&gt;
&lt;p&gt;Rspamd filtre, très bien. Ton SIEM ne le sait toujours pas. On les branche, et la boucle de la série se referme sur le mail.&lt;/p&gt;
&lt;p&gt;Rien à activer côté Rspamd. Il écrit déjà, par défaut, une ligne par message traité dans &lt;code&gt;/var/log/rspamd/rspamd.log&lt;/code&gt;. Un fichier persistant, sur disque, exactement ce dont Wazuh a besoin. Une ligne ressemble à ceci.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;2026-07-14 09:41:07 #3421(rspamd_proxy) &amp;#x3C;7f2c1a&gt;; task; rspamd_task_write_log: id: &amp;#x3C;a1b2@evil.example&gt;, qid: &amp;#x3C;4XjK2r1Yz&gt;, ip: 203.0.113.42, from: &amp;#x3C;facturation@evil.example&gt;, (default: T (reject): [16.40/15.00] [PHISHED_URL,DMARC_POLICY_REJECT,R_SPF_FAIL,BAYES_SPAM]), len: 4021, time: 128.4ms real, dns req: 22&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tout y est. L’IP de l’expéditeur, son adresse, l’action retenue, le score obtenu face au seuil, et la liste complète des symboles qui l’ont fait tomber. C’est un rapport d’enquête par message.&lt;/p&gt;
&lt;p&gt;Le branchement se fait sur &lt;strong&gt;deux machines&lt;/strong&gt;, et c’est le point où on se plante si on va vite. L’agent Wazuh, sur ton serveur mail, ne comprend rien à ce qu’il lit, il expédie les lignes brutes. C’est le &lt;strong&gt;manager&lt;/strong&gt;, sur le VPS de l’épisode 2, qui décode et applique les règles. Une machine ramasse, l’autre comprend.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sur le serveur mail&lt;/strong&gt;, tu dis à l’agent de lire le fichier. Le bloc va dans son &lt;code&gt;ossec.conf&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;localfile&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;location&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;/var/log/rspamd/rspamd.log&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;location&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;log_format&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;syslog&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;log_format&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;localfile&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu reconnais le &lt;code&gt;&amp;#x3C;localfile&gt;&lt;/code&gt; de l’épisode 3, le mécanisme par lequel Wazuh avale n’importe quelle source de journaux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sur le manager&lt;/strong&gt;, maintenant, et sur lui seul. Un &lt;strong&gt;décodeur&lt;/strong&gt; extrait les champs utiles de la ligne, dans &lt;code&gt;/var/ossec/etc/decoders/local_decoder.xml&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;rspamd&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;prematch&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;rspamd_task_write_log: &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;prematch&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;rspamd-verdict&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;parent&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;rspamd&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;parent&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;regex&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; type&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;pcre2&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;ip: (\S+?), .*?\(default: \S+ \(([\w ]+)\): \[(-?\d+\.\d+)/&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;regex&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;order&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;srcip, rspamd_action, rspamd_score&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;order&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoder&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Puis des &lt;strong&gt;règles&lt;/strong&gt; qui transforment ces champs en alertes graduées, dans &lt;code&gt;/var/ossec/etc/rules/local_rules.xml&lt;/code&gt;, toujours sur le manager.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;group&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;rspamd,&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100400&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;0&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoded_as&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;rspamd&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;decoded_as&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Rspamd, verdict de scan.&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100401&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;12&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;100400&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;match&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;PHISHED_&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;match&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Rspamd, hameçonnage détecté, expéditeur $(srcip).&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100402&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;10&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;100400&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;field&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;rspamd_action&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; type&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;pcre2&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;^reject$&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;field&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Rspamd, message rejeté, expéditeur $(srcip).&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; id&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;100403&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;5&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;100400&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;if_sid&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;field&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;rspamd_action&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; type&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;pcre2&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;^add header$&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;field&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;Rspamd, message marqué spam et livré, expéditeur $(srcip).&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;description&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rule&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;group&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;L’ordre de déclaration n’est pas cosmétique, il est le cœur du réglage. La règle mère est en niveau 0, elle décode sans alerter, sinon ton tableau de bord se noie sous les messages légitimes. &lt;strong&gt;L’hameçonnage passe en premier, en niveau 12&lt;/strong&gt;, parce que Wazuh ne déclenche qu’une seule règle par message, la première de la liste qui correspond. Une fausse facture d’hameçonnage est aussi un message rejeté, et si tu déclares le rejet avant elle, elle sort en niveau 10 et l’alerte que tu attendais ne vient jamais. Puis le rejet en 10, et le spam marqué mais livré en 5.&lt;/p&gt;
&lt;p&gt;Même logique sur l’ancrage. &lt;code&gt;^reject$&lt;/code&gt; et non &lt;code&gt;reject&lt;/code&gt;, parce que Rspamd possède aussi une action &lt;code&gt;soft reject&lt;/code&gt;, un simple report temporaire, qui contient le mot et déclencherait une alerte de rejet pour un message qui n’a rien de rejeté.&lt;/p&gt;
&lt;p&gt;Ne crois pas ce décodeur sur parole, teste-le. Wazuh a l’outil qu’il faut, et il vit sur le manager, pas sur l’agent.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /var/ossec/bin/wazuh-logtest&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu colles une vraie ligne de ton &lt;code&gt;rspamd.log&lt;/code&gt;, et il te montre ce qu’il en a compris, phase par phase, décodeur reconnu, champs extraits, règle déclenchée. Si &lt;code&gt;srcip&lt;/code&gt; et &lt;code&gt;rspamd_action&lt;/code&gt; ne sortent pas, c’est le motif d’extraction qu’il faut ajuster, et tu le sauras en trente secondes au lieu d’attendre en vain une alerte qui ne viendra jamais. Prends une ligne d’hameçonnage rejeté pour ton test, c’est le cas qui met à l’épreuve l’ordre de tes règles. Sur la ligne d’exemple plus haut, tu vises un résultat de cette forme.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;**Phase 1: Completed pre-decoding.&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	full event: &apos;2026-07-14 09:41:07 #3421(rspamd_proxy) &amp;#x3C;7f2c1a&gt;; task; rspamd_task_write_log: id: &amp;#x3C;a1b2@evil.example&gt;, qid: &amp;#x3C;4XjK2r1Yz&gt;, ip: 203.0.113.42, from: &amp;#x3C;facturation@evil.example&gt;, (default: T (reject): [16.40/15.00] [PHISHED_URL,DMARC_POLICY_REJECT,R_SPF_FAIL,BAYES_SPAM]), len: 4021, time: 128.4ms real, dns req: 22&apos;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;**Phase 2: Completed decoding.&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	name: &apos;rspamd&apos;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	srcip: &apos;203.0.113.42&apos;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	rspamd_action: &apos;reject&apos;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	rspamd_score: &apos;16.40&apos;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;**Phase 3: Completed filtering (rules).&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	id: &apos;100401&apos;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	level: &apos;12&apos;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	description: &apos;Rspamd, hameçonnage détecté, expéditeur 203.0.113.42.&apos;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	groups: &apos;[&apos;rspamd&apos;]&apos;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	firedtimes: 1&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;	mail: false&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;**Alert to be generated.&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;La phase 2 sort tes trois champs, la phase 3 déclenche la règle &lt;code&gt;100401&lt;/code&gt; en niveau 12, c’est l’alerte d’hameçonnage que tu attendais. Ne prends pas ce bloc pour une capture arrachée à une machine de production, c’est le résultat visé, pas un relevé de prod. Le pré-décodage &lt;code&gt;syslog&lt;/code&gt; posé sur une ligne Rspamd qui n’a pas la forme d’un log syslog, et le motif d’extraction du décodeur, peuvent varier selon ta version de Wazuh et le format exact de tes lignes &lt;code&gt;rspamd.log&lt;/code&gt;. C’est précisément ce que &lt;code&gt;wazuh-logtest&lt;/code&gt; te confirme chez toi, phase par phase, avant que tu comptes sur l’alerte.&lt;/p&gt;
&lt;p&gt;Une fois le test concluant, redémarre les deux services, chacun sur sa machine. Le manager, pour qu’il charge ton décodeur et tes règles.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; restart&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-manager&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Et l’agent du serveur mail, pour qu’il prenne en compte son &lt;code&gt;&amp;#x3C;localfile&gt;&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; restart&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-agent&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Une IP envoie une fausse facture, Rspamd la note, la rejette, l’écrit dans son journal, l’agent Wazuh la lit et l’expédie, le manager la décode et lève une alerte de niveau 12, elle s’affiche dans ton tableau de bord à côté de tes blocages CrowdSec et de tes échecs d’authentification SSH. Dans Discover, tu la filtres sur les champs &lt;code&gt;srcip&lt;/code&gt;, &lt;code&gt;rspamd_action&lt;/code&gt; et &lt;code&gt;rspamd_score&lt;/code&gt;, exactement comme le reste de tes événements.&lt;/p&gt;
&lt;p&gt;L’angle mort est bouché.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;si-ça-ne-marche-pas&quot;&gt;Si ça ne marche pas&lt;/h2&gt;
&lt;h3 id=&quot;problème-rspamd-tourne-mais-aucun-message-nest-noté&quot;&gt;Problème, Rspamd tourne mais aucun message n’est noté&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; le milter n’est pas branché. Rspamd attend sur son port, ton serveur mail ne lui présente rien.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; vérifie que le worker proxy écoute bien sur 11332, et que &lt;code&gt;smtpd_milters&lt;/code&gt; pointe dessus dans ta configuration Postfix. Recharge le serveur mail, pas seulement Rspamd.&lt;/p&gt;
&lt;h3 id=&quot;problème-des-messages-légitimes-sont-rejetés&quot;&gt;Problème, des messages légitimes sont rejetés&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; ton seuil de rejet est trop bas, ou un expéditeur que tu connais échoue à son propre SPF, ce qui arrive plus souvent qu’on ne le croit.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; rejoue le message avec &lt;code&gt;rspamc symbols&lt;/code&gt;, lis les symboles qui l’ont fait monter. Si le coupable est un symbole unique et légitime, remonte ton seuil de &lt;code&gt;reject&lt;/code&gt; plutôt que de désactiver le module.&lt;/p&gt;
&lt;h3 id=&quot;problème-le-score-napprend-rien-le-filtre-bayésien-reste-muet&quot;&gt;Problème, le score n’apprend rien, le filtre bayésien reste muet&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; Redis n’est pas joignable. Sans lui, ni bayes, ni greylisting, ni statistiques.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; vérifie le service Redis et le contenu de &lt;code&gt;/etc/rspamd/local.d/redis.conf&lt;/code&gt;. &lt;code&gt;rspamc stat&lt;/code&gt; te dira si le classifieur a des données.&lt;/p&gt;
&lt;h3 id=&quot;problème-rien-ne-remonte-dans-wazuh&quot;&gt;Problème, rien ne remonte dans Wazuh&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; trois suspects, et il faut les départager avant de toucher à quoi que ce soit. Soit le fichier ne grossit pas, soit l’agent ne le lit pas, soit le manager ne sait pas le décoder. Le grand classique, ce sont le décodeur et les règles édités sur le serveur mail au lieu du manager. Ils n’y servent à rien.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; le fichier grossit-il ? S’il grossit, va sur le &lt;strong&gt;manager&lt;/strong&gt;, passe une ligne dans &lt;code&gt;wazuh-logtest&lt;/code&gt; et regarde à quelle phase ça casse. Vérifie au passage que &lt;code&gt;local_decoder.xml&lt;/code&gt; et &lt;code&gt;local_rules.xml&lt;/code&gt; sont bien sur cette machine-là, et que tu as redémarré &lt;code&gt;wazuh-manager&lt;/code&gt; après les avoir écrits. Ne réinstalle pas Rspamd pour un souci de motif d’extraction.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-ta-coûté&quot;&gt;Ce que ça t’a coûté&lt;/h2&gt;
&lt;p&gt;La licence, rien. Rspamd est open source, sans version payante, sans palier entreprise, sans quota de messages.&lt;/p&gt;
&lt;p&gt;La machine, peu. Le moteur est écrit en C et tourne sur ton serveur mail existant, aux côtés de Redis. Sur le volume d’une PME, tu ne changeras pas de gabarit de serveur pour ça. Surveille quand même ta RAM après avoir activé le filtre bayésien et fuzzy_check, ce sont eux qui consomment.&lt;/p&gt;
&lt;p&gt;Ton temps, un peu. Compte une petite heure pour l’installation, le milter et l’intégration Wazuh.&lt;/p&gt;
&lt;p&gt;Et le vrai prix, la calibration. Il ne se paye pas le jour de l’installation, il se paye les deux semaines suivantes, à lire tes propres journaux et à remonter tes seuils quand un message légitime s’est fait jeter. Un anti-spam mal réglé ne te coûte pas de la RAM, il te coûte une commande client perdue dans un rejet silencieux. C’est la raison pour laquelle ce tuto te fait démarrer clément, à 15 de seuil de rejet, et durcir ensuite. Dans l’autre sens, tu apprends la valeur d’un faux positif à tes dépens.&lt;/p&gt;
&lt;p&gt;C’est le seul poste de dépense sérieux, et aucun SaaS ne te l’épargne. Lui aussi se trompera, simplement tu ne verras pas pourquoi.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Ce que fait cet article.&lt;/strong&gt; On installe Rspamd sur le serveur mail, on le branche en milter devant Postfix, on règle les seuils de scoring, on active l’anti-hameçonnage et l’application des politiques DMARC, puis on fait remonter chaque verdict dans Wazuh via un décodeur et des règles maison. La couche mail cesse d’être l’angle mort du SIEM.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les commandes.&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Installer le dépôt stable, &lt;code&gt;rspamd&lt;/code&gt; et &lt;code&gt;redis-server&lt;/code&gt; via apt.&lt;/li&gt;
&lt;li&gt;Pointer Redis : &lt;code&gt;servers = &quot;127.0.0.1:6379&quot;;&lt;/code&gt; dans &lt;code&gt;/etc/rspamd/local.d/redis.conf&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Mot de passe de l’interface : &lt;code&gt;rspamadm pw&lt;/code&gt;, empreinte dans &lt;code&gt;/etc/rspamd/local.d/worker-controller.inc&lt;/code&gt;. Interface en local uniquement.&lt;/li&gt;
&lt;li&gt;Brancher le milter Postfix : &lt;code&gt;smtpd_milters = inet:localhost:11332&lt;/code&gt;, &lt;code&gt;milter_protocol = 6&lt;/code&gt;, &lt;code&gt;milter_default_action = accept&lt;/code&gt; dans &lt;code&gt;main.cf&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Seuils : &lt;code&gt;greylist = 4; add_header = 6; reject = 15;&lt;/code&gt; dans &lt;code&gt;/etc/rspamd/local.d/actions.conf&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Appliquer DMARC : bloc &lt;code&gt;actions { quarantine = &quot;add header&quot;; reject = &quot;reject&quot;; }&lt;/code&gt; dans &lt;code&gt;/etc/rspamd/local.d/dmarc.conf&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Anti-hameçonnage : &lt;code&gt;openphish_enabled&lt;/code&gt; et &lt;code&gt;phishtank_enabled&lt;/code&gt; dans &lt;code&gt;/etc/rspamd/local.d/phishing.conf&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Apprentissage : &lt;code&gt;autolearn = true;&lt;/code&gt; dans &lt;code&gt;/etc/rspamd/local.d/classifier-bayes.conf&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Tester : message GTUBE puis &lt;code&gt;rspamc symbols /tmp/gtube.eml&lt;/code&gt;, action attendue &lt;code&gt;reject&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Intégrer à Wazuh, sur deux machines : &lt;code&gt;&amp;#x3C;localfile&gt;&lt;/code&gt; sur &lt;code&gt;/var/log/rspamd/rspamd.log&lt;/code&gt; &lt;strong&gt;côté agent&lt;/strong&gt;, décodeur et règles &lt;strong&gt;côté manager&lt;/strong&gt; (&lt;code&gt;local_decoder.xml&lt;/code&gt; et &lt;code&gt;local_rules.xml&lt;/code&gt;, règle hameçonnage déclarée en premier), validation avec &lt;code&gt;/var/ossec/bin/wazuh-logtest&lt;/code&gt; &lt;strong&gt;sur le manager&lt;/strong&gt;, puis redémarrage de &lt;code&gt;wazuh-manager&lt;/code&gt; et de &lt;code&gt;wazuh-agent&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Tu es parti d’un dispositif qui voyait tes serveurs et bloquait ton réseau, mais laissait entrer la fausse facture par la grande porte.&lt;/p&gt;
&lt;p&gt;Tu as &lt;strong&gt;installé Rspamd&lt;/strong&gt; devant ton serveur mail, en milter, pour que chaque message soit jugé avant d’être accepté. Tu as &lt;strong&gt;réglé le scoring&lt;/strong&gt; plutôt qu’un verdict binaire, trois niveaux de fermeté, greylist, marquage, rejet, avec des seuils que tu maîtrises.&lt;/p&gt;
&lt;p&gt;Tu as &lt;strong&gt;armé l’anti-hameçonnage&lt;/strong&gt;, comparaison des URL affichées et réelles, bases publiques de liens malveillants, application des politiques DMARC des domaines usurpés. Et tu as &lt;strong&gt;branché tout ça sur Wazuh&lt;/strong&gt;, décodeur et règles graduées, pour qu’une tentative de hameçonnage lève une alerte de niveau 12 dans le même tableau de bord que le reste.&lt;/p&gt;
&lt;p&gt;Le tout reste chez toi. Aucun message ne quitte ton serveur pour être analysé ailleurs, aucun prestataire ne lit ton courrier pour te dire s’il est propre. C’est la différence entre un filtre que tu héberges et une passerelle mail dans le cloud de quelqu’un d’autre, à qui tu confies l’intégralité de ta correspondance d’entreprise pour qu’il la protège.&lt;/p&gt;
&lt;p&gt;Il reste une porte d’entrée, et c’est celle qui tient dans les mains de tes salariés. Le fichier qu’on a téléchargé sans réfléchir, la macro qu’on a autorisée, le binaire qui n’aurait jamais dû démarrer. À l’épisode 6 on descend sur les Mac, et on règle le problème en décidant quelles applications ont le droit de s’exécuter.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;rappel-de-la-série&quot;&gt;Rappel de la série&lt;/h2&gt;
&lt;p&gt;Sept épisodes pour monter ta plomberie de sécurité souveraine, brique par brique.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;Épisode 0, le fondement de la série.&lt;/a&gt;&lt;/strong&gt; Pourquoi une PME a besoin d’un SIEM souverain, NIS2, RGPD, et le coût du statu quo.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;Épisode 1, le socle.&lt;/a&gt;&lt;/strong&gt; Le VPS durci hors CLOUD Act.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;Épisode 2, Wazuh en tout-en-un.&lt;/a&gt;&lt;/strong&gt; Manager, indexeur et tableau de bord sur un seul nœud.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;Épisode 3, les agents partout.&lt;/a&gt;&lt;/strong&gt; Déploiement sur tes serveurs, Mac et Windows.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/&quot;&gt;Épisode 4, la défense réseau communautaire.&lt;/a&gt;&lt;/strong&gt; Bloquer les attaquants connus avant qu’ils n’arrivent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 5, le filtre mail.&lt;/strong&gt; Anti-spam et anti-hameçonnage devant ton serveur de messagerie. Tu viens de le lire.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/santa-controle-execution-mac-siem-souverain/&quot;&gt;Épisode 6, le contrôle d’exécution sur les Mac.&lt;/a&gt;&lt;/strong&gt; Décider quelles applications ont le droit de démarrer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 7, alerting et coût total.&lt;/strong&gt; Notifications calibrées et bilan financier honnête face au SaaS.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>rspamd</category><category>securite</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-rspamd-mail-siem-souverain-1.png" length="0" type="image/png"/></item><item><title>CrowdSec en première ligne, bloque avant qu&apos;on te frappe</title><link>https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/</link><guid isPermaLink="true">https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/</guid><description>Installer CrowdSec sur ton VPS durci, bloquer les IP malveillantes en amont avec le bouncer firewall, et faire remonter ses décisions dans Wazuh.</description><pubDate>Wed, 08 Jul 2026 06:00:00 GMT</pubDate><content:encoded>&lt;p&gt;À l’épisode précédent, tu as &lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;enrôlé les agents Wazuh sur tout ton parc&lt;/a&gt;. Serveurs Linux, Mac, Windows, chaque machine remonte ses journaux au manager, entièrement par le Tailnet. Ton SIEM a levé le nez de ses propres journaux, ton parc entier s’affiche devant lui. Il voit tout, en réalité. Y compris les attaques.&lt;/p&gt;
&lt;p&gt;Et c’est là que le bât blesse. Un agent Wazuh &lt;strong&gt;observe&lt;/strong&gt;, on l’a répété tout l’épisode 3. Il te dit qu’une rafale d’échecs de connexion vient de frapper ton serveur, il te le dit très bien, très vite, très en détail. Mais il ne fait rien pour l’arrêter. Tu as des yeux, tu n’as pas de mains.&lt;/p&gt;
&lt;p&gt;Aujourd’hui, on te donne les mains. On installe &lt;strong&gt;CrowdSec&lt;/strong&gt;, la première ligne de défense active de la série. Un moteur qui lit tes journaux comme Wazuh, mais qui, lui, en tire une conclusion et &lt;strong&gt;bloque&lt;/strong&gt;. L’IP qui martèle ton SSH, il la met dehors. L’attaquant déjà repéré ailleurs sur le réseau communautaire, il le refoule avant même qu’il ne toque à ta porte.&lt;/p&gt;
&lt;p&gt;Un point posé dès l’épisode 1 et qui tient toujours. &lt;strong&gt;La quasi-totalité de tes services vit en Tailnet-only, invisible depuis l’internet ouvert.&lt;/strong&gt; Mais certaines portes doivent rester ouvertes sur le monde, un serveur mail qui reçoit sur le port 25, une présence web publique. Ce sont ces portes-là, les seules exposées, que CrowdSec garde.&lt;/p&gt;
&lt;p&gt;Cette stack, je l’utilise au quotidien. Les commandes qui suivent sont celles que tu vas taper toi-même, dans l’ordre, sur ton VPS durci puis dans ton manager Wazuh.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;avant-de-commencer&quot;&gt;Avant de commencer&lt;/h2&gt;
&lt;p&gt;Trois choses à avoir en tête avant la première commande.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce qu’il te faut.&lt;/strong&gt; Un VPS durci comme celui de l’épisode 1, à jour, avec au moins un service exposé sur l’internet ouvert à protéger. Le manager Wazuh de l’épisode 2, opérationnel, pour la partie intégration en fin de tuto. Un accès administrateur sur la machine. Et de quoi lire tes propres journaux, &lt;code&gt;/var/log/auth.log&lt;/code&gt; et les logs de tes services, puisque c’est la matière première de CrowdSec.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça change.&lt;/strong&gt; À la fin, les IP malveillantes connues n’atteignent plus tes services, elles butent sur ton pare-feu avant. Tu bénéficies aussi de la liste communautaire, des millions de signaux remontés par les autres utilisateurs, donc tu bloques des attaquants que tu n’as jamais vus toi-même. Et ton SIEM voit enfin cette couche de défense, chaque blocage remonte dans Wazuh.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça ne change pas.&lt;/strong&gt; CrowdSec bloque au niveau &lt;strong&gt;réseau&lt;/strong&gt;, sur l’adresse IP. Ce n’est ni un antivirus, ni un pare-feu applicatif exhaustif, ni un remplaçant de ton durcissement de l’épisode 1. C’est une couche de plus, la première que rencontre l’attaquant, pas la seule. Et il bloque l’IP, pas l’humain derrière, une IP change, la défense se joue sur le volume et la vitesse, pas sur l’infaillibilité.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;comment-crowdsec-voit-et-bloque&quot;&gt;Comment CrowdSec voit et bloque&lt;/h2&gt;
&lt;p&gt;Avant d’installer quoi que ce soit, comprends la mécanique, elle tient en trois pièces qui se passent le relais.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le moteur de sécurité&lt;/strong&gt;, l’agent local. Il lit tes journaux en continu, &lt;code&gt;auth.log&lt;/code&gt;, les logs de ton serveur web, de ton serveur mail. Il les passe dans des &lt;strong&gt;scénarios&lt;/strong&gt;, des règles de comportement du type « six échecs SSH en dix secondes depuis la même IP, c’est du bruteforce ». Quand un scénario se déclenche, le moteur prend une &lt;strong&gt;décision&lt;/strong&gt;, en clair, il inscrit cette IP sur une liste noire pour une durée donnée, quatre heures par défaut sur du bruteforce.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le bouncer&lt;/strong&gt;, l’exécuteur. Le moteur décide, mais il ne touche pas lui-même à ton pare-feu, c’est un choix d’architecture propre. C’est le bouncer qui applique la décision. Le bouncer firewall, celui qui nous intéresse, va poser la règle qui jette l’IP fautive dans ton nftables ou ton iptables. Moteur et bouncer sont séparés, tu peux en avoir plusieurs, un pour le pare-feu, un devant un reverse proxy web, chacun applique les mêmes décisions à son niveau.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le réseau communautaire&lt;/strong&gt;, le CTI, pour Cyber Threat Intelligence, renseignement sur les menaces. C’est le multiplicateur. Quand ton moteur bloque une IP, il remonte le signal, l’adresse et le scénario, à l’API centrale de CrowdSec. En échange, tu télécharges la &lt;strong&gt;liste communautaire&lt;/strong&gt;, l’agrégat des IP signalées par l’ensemble des utilisateurs. Résultat, une IP qui a attaqué un serveur en Pologne ce matin est déjà bloquée chez toi cet après-midi, avant sa première tentative.&lt;/p&gt;
&lt;p&gt;Retiens le flux, il commande tout le reste. Journal lu par le moteur, scénario déclenché, décision prise, bouncer qui l’applique sur le pare-feu, signal partagé, liste communautaire téléchargée en retour.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-1-installer-le-moteur&quot;&gt;Étape 1, installer le moteur&lt;/h2&gt;
&lt;p&gt;On commence par le cerveau, sur ton VPS durci. Deux commandes, une pour déclarer le dépôt officiel CrowdSec, une pour installer.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;curl&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -s&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; https://install.crowdsec.net&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; |&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; sh&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; install&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; crowdsec&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;La première ligne ajoute le dépôt CrowdSec à ta liste de sources, la routine que tu connais depuis l’épisode 3 avec Wazuh. La seconde installe et démarre le moteur.&lt;/p&gt;
&lt;p&gt;L’installation est maligne sur un point. À la fin, CrowdSec &lt;strong&gt;scanne les services qu’il détecte&lt;/strong&gt; sur ta machine et installe automatiquement les &lt;strong&gt;collections&lt;/strong&gt; correspondantes, les paquets de scénarios adaptés. Il voit un serveur SSH, il installe la collection &lt;code&gt;crowdsecurity/sshd&lt;/code&gt;. Un Nginx, il ajoute les scénarios web. Tu n’as pas à deviner quoi surveiller, il le déduit de ce qui tourne.&lt;/p&gt;
&lt;p&gt;Vérifie ce qu’il a mis en place.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; cscli&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; collections&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; list&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu dois voir la liste des collections actives, avec la mention &lt;code&gt;enabled&lt;/code&gt;. Si un service exposé n’est pas couvert, tu ajoutes sa collection à la main, par exemple &lt;code&gt;sudo cscli collections install crowdsecurity/nginx&lt;/code&gt; puis un redémarrage du service &lt;code&gt;crowdsec&lt;/code&gt;. Tout se pilote avec &lt;code&gt;cscli&lt;/code&gt;, l’outil en ligne de commande du moteur, l’équivalent de ton &lt;code&gt;agent_control&lt;/code&gt; côté Wazuh.&lt;/p&gt;
&lt;p&gt;À ce stade, le moteur lit, analyse et &lt;strong&gt;décide&lt;/strong&gt;. Mais il ne bloque encore rien. Il tient une liste noire que personne n’applique. Il lui manque ses mains.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-2-poser-le-bouncer-qui-bloque-vraiment&quot;&gt;Étape 2, poser le bouncer qui bloque vraiment&lt;/h2&gt;
&lt;p&gt;Les mains, c’est le &lt;strong&gt;bouncer firewall&lt;/strong&gt;. Il lit les décisions du moteur et les traduit en règles de pare-feu qui refoulent réellement le trafic.&lt;/p&gt;
&lt;p&gt;Il en existe deux variantes selon ton pare-feu, une pour nftables, une pour iptables. Les distributions récentes tournent sous nftables, c’est le cas par défaut.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; install&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; crowdsec-firewall-bouncer-nftables&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Si ta machine est sur l’ancien iptables, tu remplaces le paquet par &lt;code&gt;crowdsec-firewall-bouncer-iptables&lt;/code&gt;. Le principe est identique. Un détail de cohérence avec l’épisode 1, si ton pare-feu tourne sous &lt;code&gt;ufw&lt;/code&gt;, sache que &lt;code&gt;ufw&lt;/code&gt; s’appuie sur l’un des deux backends selon ta version, vérifie lequel avant de choisir la variante du bouncer.&lt;/p&gt;
&lt;p&gt;L’installation fait le branchement toute seule. Le paquet appelle &lt;code&gt;cscli bouncers add&lt;/code&gt; pour lui, enregistre le bouncer auprès du moteur et lui remet une clé d’authentification. Aucune manipulation de clé à faire à la main.&lt;/p&gt;
&lt;p&gt;Vérifie que le moteur et son bouncer se parlent.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; cscli&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; bouncers&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; list&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu dois voir ton bouncer firewall listé, avec une date de dernière activité récente. À partir de maintenant, la boucle est fermée. Le moteur décide, le bouncer applique, l’IP fautive tombe dans un ensemble bloqué par ton pare-feu. Ton SIEM a des mains.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-bouncers-list-crowdsec-premiere-ligne-siem-souverain-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Sortie de cscli bouncers list : le bouncer firewall enregistré, valide, avec une dernière activité récente.&quot;&gt;
&lt;/figure&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-3-vérifier-que-ça-mord&quot;&gt;Étape 3, vérifier que ça mord&lt;/h2&gt;
&lt;p&gt;Trois commandes pour t’assurer que la machine tourne, et une pour la mettre à l’épreuve sans attendre une vraie attaque.&lt;/p&gt;
&lt;p&gt;D’abord la vue d’ensemble.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; cscli&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; metrics&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Elle t’affiche combien de lignes de logs le moteur a lues, par source, et combien de fois chaque scénario s’est déclenché. Si les compteurs de lecture bougent, ton moteur voit bien tes journaux. S’ils restent à zéro, il ne lit rien, et là c’est un problème de source à régler avant d’aller plus loin.&lt;/p&gt;
&lt;p&gt;Ensuite les décisions en cours, la liste noire vivante. Ajoute le drapeau &lt;code&gt;-a&lt;/code&gt;, sinon CrowdSec ne t’affiche que tes décisions locales et masque les IP tirées du réseau communautaire.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; cscli&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; decisions&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; list&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -a&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Sur une machine exposée depuis quelques heures, elle n’est déjà pas vide, entre tes propres blocages et la liste communautaire téléchargée. Chaque ligne, une IP, le scénario qui l’a fait tomber, la durée restante.&lt;/p&gt;
&lt;p&gt;Regarde la colonne Source. Les lignes &lt;code&gt;CAPI&lt;/code&gt;, ce sont les cadeaux de la communauté, des IP que tu n’as jamais vues toquer chez toi et qui sont déjà refoulées. La ligne &lt;code&gt;crowdsec&lt;/code&gt; en gras, c’est la tienne, un scanner que ton propre serveur a chopé en plein http-probing et banni tout seul, trois heures au coin. Le collectif et le local, côte à côte, dans la même liste noire.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-decisions-list-crowdsec-premiere-ligne-siem-souverain-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Sortie réelle de cscli decisions list -a : la ligne locale en gras, un attaquant repéré par ton serveur, au milieu des décisions communautaires CAPI.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Enfin, l’épreuve. Plutôt que d’attendre un attaquant, tu fabriques une décision de test sur une IP bidon.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; cscli&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; decisions&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; add&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --ip&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; 192.0.2.1&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --duration&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; 4h&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --reason&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; &quot;test blocage&quot;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; cscli&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; decisions&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; list&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;L’IP &lt;code&gt;192.0.2.1&lt;/code&gt; appartient à une plage réservée à la documentation, elle ne bloquera personne de réel. Tu la vois apparaître dans la liste, le bouncer la pousse dans ton pare-feu. Nettoie derrière toi une fois le test concluant.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; cscli&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; decisions&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; delete&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --ip&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; 192.0.2.1&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Si l’ajout, l’affichage et la suppression s’enchaînent proprement, ta chaîne moteur-décision-bouncer est opérationnelle de bout en bout.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-4-le-signal-communautaire-ce-qui-sort-et-ce-qui-reste&quot;&gt;Étape 4, le signal communautaire, ce qui sort et ce qui reste&lt;/h2&gt;
&lt;p&gt;C’est là que CrowdSec change d’échelle, et c’est aussi le seul endroit où la souveraineté demande une phrase d’honnêteté, alors posons-la sans détour.&lt;/p&gt;
&lt;p&gt;Par défaut, ton moteur est inscrit à l’&lt;strong&gt;API centrale communautaire&lt;/strong&gt;. Tu peux le vérifier.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; cscli&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; capi&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; status&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Cet échange fonctionne dans les deux sens, et c’est important de savoir exactement quoi. &lt;strong&gt;Ce qui sort de chez toi&lt;/strong&gt;, quand tu bloques une IP, c’est un signal minimal, l’adresse IP fautive, le scénario déclenché et l’horodatage. &lt;strong&gt;Ce qui ne sort jamais&lt;/strong&gt;, ce sont tes journaux, tes noms de machines, tes utilisateurs, le contenu de quoi que ce soit. CrowdSec partage la conclusion « cette IP attaque », pas la matière première qui t’a permis d’y arriver. &lt;strong&gt;Ce qui rentre&lt;/strong&gt;, c’est la liste communautaire, l’agrégat anonymisé de ces signaux à l’échelle de tout le réseau.&lt;/p&gt;
&lt;p&gt;C’est un compromis, et il est net. Tu échanges l’adresse d’attaquants, une donnée qui n’est pas la tienne mais celle de tes agresseurs, contre une protection collective que tu ne pourrais jamais construire seul. Le moteur, lui, reste &lt;strong&gt;auto-hébergé chez toi&lt;/strong&gt;, aucun tiers ne pilote tes blocages, aucune décision ne dépend d’un service distant qui pourrait être coupé. Tu peux même te désinscrire du partage et tourner en pur local, tu gardes ta défense, tu perds seulement la liste communautaire. Le curseur est entre tes mains, comme toujours dans cette série.&lt;/p&gt;
&lt;p&gt;Si tu veux une console web pour visualiser tes alertes, CrowdSec en propose une, gratuite, où tu relies ton moteur avec &lt;code&gt;sudo cscli console enroll &amp;#x3C;ta-clé&gt;&lt;/code&gt;. Facultatif, et hébergé par CrowdSec, donc à peser selon ta ligne. Ton vrai tableau de bord, de toute façon, c’est Wazuh, et c’est l’étape suivante.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-5-faire-remonter-crowdsec-dans-wazuh&quot;&gt;Étape 5, faire remonter CrowdSec dans Wazuh&lt;/h2&gt;
&lt;p&gt;Ton pare-feu bloque, très bien. Mais pour l’instant ton SIEM ne le sait pas. CrowdSec agit dans son coin, Wazuh regarde ailleurs. On les branche, pour que chaque décision CrowdSec devienne une alerte visible dans ton tableau de bord unique.&lt;/p&gt;
&lt;p&gt;Le principe est simple et propre. CrowdSec sait &lt;strong&gt;écrire ses alertes dans un fichier&lt;/strong&gt;, et Wazuh sait &lt;strong&gt;lire un fichier de logs&lt;/strong&gt;. On fait se rencontrer les deux.&lt;/p&gt;
&lt;p&gt;Côté CrowdSec, tu actives le plugin de notification par fichier. Il existe déjà, tu l’édites dans &lt;code&gt;/etc/crowdsec/notifications/file.yaml&lt;/code&gt; pour qu’il écrive au format JSON, une alerte par ligne.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;yaml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;file&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;name&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;file_default&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;log_level&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;info&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;format&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;|&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#032F62&quot;&gt;  {{range . -}}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#032F62&quot;&gt;   { &quot;crowdsec&quot;: { &quot;program&quot;: &quot;crowdsec&quot;, &quot;alert&quot;: {{. | toJson }} }}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#032F62&quot;&gt;  {{ end -}}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;log_path&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;/var/log/crowdsec/crowdsec_alerts.json&quot;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;rotate&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;:&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;  enabled&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;true&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;  max_size&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;500&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;  compress&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;: &lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;true&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Puis tu déclares ce canal dans &lt;code&gt;/etc/crowdsec/profiles.yaml&lt;/code&gt;, pour que le moteur y envoie ses alertes.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;yaml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#22863A&quot;&gt;notifications&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;:&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;    - &lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;file_default&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Un détail qui compte. Le tutoriel officiel de CrowdSec écrit ce fichier dans &lt;code&gt;/tmp&lt;/code&gt;, qui est vidé à chaque redémarrage de la machine. On le pose plutôt dans &lt;code&gt;/var/log/crowdsec/&lt;/code&gt;, pour que ton historique d’alertes survive à un reboot. Un redémarrage du service &lt;code&gt;crowdsec&lt;/code&gt;, et le fichier &lt;code&gt;/var/log/crowdsec/crowdsec_alerts.json&lt;/code&gt; se remplit à chaque décision.&lt;/p&gt;
&lt;p&gt;Côté Wazuh, tu dis à l’agent local, celui de l’épisode 3 déjà installé sur ce serveur, de lire ce fichier. Tu ajoutes ce bloc à sa configuration, idéalement via la configuration partagée du groupe pour ne l’écrire qu’une fois.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;localfile&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;location&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;/var/log/crowdsec/crowdsec_alerts.json&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;location&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;log_format&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;json&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;log_format&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;label&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;crowdsec&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;label&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;localfile&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu reconnais la logique du &lt;code&gt;&amp;#x3C;localfile&gt;&lt;/code&gt;, c’est exactement le mécanisme par lequel Wazuh avale n’importe quelle source de journaux. Le format &lt;code&gt;json&lt;/code&gt; lui dit de parser chaque ligne comme un objet structuré, et tes champs &lt;code&gt;crowdsec.alert.*&lt;/code&gt; deviennent interrogeables dans le dashboard.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-wazuh-alert-crowdsec-premiere-ligne-siem-souverain-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Une alerte CrowdSec remontée dans le dashboard Wazuh Discover : un ban sur le scénario crowdsecurity/ssh-bf, avec tous ses champs crowdsec.alert dépliés et interrogeables.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Redémarre l’agent Wazuh, et la boucle de la série se referme. Une IP attaque, CrowdSec la bloque, écrit l’alerte, l’agent Wazuh la lit, le manager la remonte, elle s’affiche dans ton tableau de bord à côté de tout le reste. Ton SIEM ne voit plus seulement les attaques, il voit ses propres ripostes.&lt;/p&gt;
&lt;p&gt;Une note de version, parce qu’elle compte. Cette intégration par plugin fichier suppose une version récente du moteur et de Wazuh. Vérifie que ton CrowdSec est en 1.6.3 ou au-dessus et que ton Wazuh est en 4.9.0 ou au-dessus, les versions à partir desquelles cette intégration par plugin fichier est officiellement supportée. Tu tournes sur du Wazuh 4.x, cette intégration ne dépend pas de la future 5.0, elle marche sur ta stack actuelle.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;si-ça-ne-marche-pas&quot;&gt;Si ça ne marche pas&lt;/h2&gt;
&lt;p&gt;Le déploiement de CrowdSec est direct, et il coince presque toujours aux mêmes endroits. Voici les vrais, dans l’ordre où tu les rencontreras.&lt;/p&gt;
&lt;h3 id=&quot;problème-cscli-metrics-affiche-zéro-ligne-lue&quot;&gt;Problème, &lt;code&gt;cscli metrics&lt;/code&gt; affiche zéro ligne lue&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; le moteur ne trouve pas tes journaux, ou n’a pas la collection correspondant à ton service. Il tourne, mais il lit dans le vide.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; vérifie que la source de logs existe bien au chemin attendu et que la collection du service est installée avec &lt;code&gt;sudo cscli collections list&lt;/code&gt;. Ajoute la collection manquante, puis redémarre le service &lt;code&gt;crowdsec&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&quot;problème-une-ip-est-décidée-mais-rien-nest-bloqué&quot;&gt;Problème, une IP est décidée mais rien n’est bloqué&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; le bouncer n’est pas là, ou ne parle pas au moteur. Le moteur décide dans son coin, personne n’applique.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; &lt;code&gt;sudo cscli bouncers list&lt;/code&gt; doit montrer ton bouncer firewall avec une activité récente. S’il est absent, réinstalle le paquet du bouncer. S’il est présent mais muet, vérifie que le service du bouncer tourne.&lt;/p&gt;
&lt;h3 id=&quot;problème-le-mauvais-backend-de-pare-feu&quot;&gt;Problème, le mauvais backend de pare-feu&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; tu as installé la variante nftables du bouncer sur une machine en iptables, ou l’inverse. Le bouncer pose ses règles dans un système que ton pare-feu n’utilise pas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; identifie ton backend réel, puis installe la variante correspondante du bouncer, &lt;code&gt;crowdsec-firewall-bouncer-nftables&lt;/code&gt; ou &lt;code&gt;crowdsec-firewall-bouncer-iptables&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&quot;problème-rien-ne-remonte-dans-wazuh&quot;&gt;Problème, rien ne remonte dans Wazuh&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; attention, ce n’est en général pas un problème CrowdSec. Le fichier &lt;code&gt;/var/log/crowdsec/crowdsec_alerts.json&lt;/code&gt; se remplit, mais l’agent Wazuh ne le lit pas, ou le manager ne digère pas le format.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; vérifie d’abord que le fichier grossit côté CrowdSec. S’il grossit, le diagnostic est côté Wazuh, le bloc &lt;code&gt;&amp;#x3C;localfile&gt;&lt;/code&gt; et la version de l’agent, pas côté moteur. Ne réinstalle pas CrowdSec pour un souci de lecture Wazuh.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;la-liste-communautaire-fait-la-moitié-du-travail&quot;&gt;La liste communautaire fait la moitié du travail&lt;/h2&gt;
&lt;p&gt;Un dernier mot, parce que c’est le point qu’on sous-estime toujours au départ. Le jour où tu installes CrowdSec, tu t’attends à ce qu’il apprenne lentement, à ce qu’il faille des semaines de trafic pour qu’il devienne utile. Faux.&lt;/p&gt;
&lt;p&gt;Dès la première synchronisation, tu télécharges la liste communautaire, et ton &lt;code&gt;cscli decisions list -a&lt;/code&gt; se peuple d’IP que tu n’as jamais vues. Des attaquants repérés ailleurs, déjà refoulés chez toi. Tu bénéficies du travail de dizaines de milliers d’autres serveurs avant d’avoir subi ta première attaque.&lt;/p&gt;
&lt;p&gt;Ce n’est pas magique, c’est du volume. Chaque serveur qui remonte un signal renforce la défense de tous les autres. C’est exactement le modèle que le SaaS américain te vend cher et sous sa juridiction, sauf qu’ici il est open source, auto-hébergé, et le signal partagé se limite à l’adresse de tes agresseurs.&lt;/p&gt;
&lt;p&gt;Le tournant est franchi. Là où ton SIEM se contentait de constater, il refoule.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Ce que fait cet article.&lt;/strong&gt; On installe CrowdSec sur le VPS durci pour bloquer en amont les IP malveillantes, connues localement comme signalées par le réseau communautaire. Le moteur lit les journaux et décide, le bouncer firewall applique le blocage sur nftables ou iptables, et chaque décision remonte dans Wazuh via un fichier d’alertes lu par l’agent. La défense passe de « voir » à « barrer la route ».&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les commandes.&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Installer le moteur : &lt;code&gt;curl -s https://install.crowdsec.net | sudo sh&lt;/code&gt; puis &lt;code&gt;sudo apt install crowdsec&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Vérifier les collections détectées : &lt;code&gt;sudo cscli collections list&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Installer le bouncer firewall selon ton backend : &lt;code&gt;sudo apt install crowdsec-firewall-bouncer-nftables&lt;/code&gt; (ou &lt;code&gt;-iptables&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Vérifier le branchement : &lt;code&gt;sudo cscli bouncers list&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Contrôler la machine : &lt;code&gt;sudo cscli metrics&lt;/code&gt; et &lt;code&gt;sudo cscli decisions list -a&lt;/code&gt; (le &lt;code&gt;-a&lt;/code&gt; pour voir aussi la liste communautaire).&lt;/li&gt;
&lt;li&gt;Tester le blocage : &lt;code&gt;sudo cscli decisions add --ip 192.0.2.1 --duration 4h --reason &quot;test&quot;&lt;/code&gt; puis &lt;code&gt;sudo cscli decisions delete --ip 192.0.2.1&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Vérifier le partage communautaire : &lt;code&gt;sudo cscli capi status&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Intégrer à Wazuh : activer le plugin fichier dans &lt;code&gt;/etc/crowdsec/notifications/file.yaml&lt;/code&gt; (sortie &lt;code&gt;/var/log/crowdsec/crowdsec_alerts.json&lt;/code&gt;), l’appeler dans &lt;code&gt;/etc/crowdsec/profiles.yaml&lt;/code&gt;, puis ajouter le bloc &lt;code&gt;&amp;#x3C;localfile&gt;&lt;/code&gt; JSON à la config de l’agent Wazuh.&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Tu es parti d’un SIEM qui voyait les attaques sans pouvoir les arrêter, tu repars avec une première ligne qui les refoule.&lt;/p&gt;
&lt;p&gt;Tu as &lt;strong&gt;installé le moteur CrowdSec&lt;/strong&gt; sur ton VPS durci, qui lit tes journaux et décide. Tu as &lt;strong&gt;posé le bouncer firewall&lt;/strong&gt;, qui applique ces décisions sur ton pare-feu et bloque réellement. Tu as &lt;strong&gt;branché la liste communautaire&lt;/strong&gt;, qui te protège d’attaquants que tu n’as jamais croisés, en ne partageant que l’adresse des tiens. Et tu as &lt;strong&gt;fait remonter tout ça dans Wazuh&lt;/strong&gt;, pour que ta salle de contrôle voie enfin la couche de défense réseau.&lt;/p&gt;
&lt;p&gt;Le tout reste chez toi. Le moteur est auto-hébergé, aucune décision ne dépend d’un tiers, et le seul signal qui sort, c’est l’IP de tes agresseurs. La protection collective sans la dépendance, c’est précisément le troisième chemin, le souverain, ouvert à l’épisode d’introduction.&lt;/p&gt;
&lt;p&gt;Tu bloques désormais au niveau réseau. Mais tes attaques les plus fréquentes n’arrivent pas par le port SSH, elles arrivent par la boîte mail. À l’épisode 5, on monte le filtre anti-spam et anti-hameçonnage devant ton serveur de messagerie, la porte la plus exposée de toutes.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;rappel-de-la-série&quot;&gt;Rappel de la série&lt;/h2&gt;
&lt;p&gt;Sept épisodes pour monter ta plomberie de sécurité souveraine, brique par brique.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;Épisode 0, le fondement de la série.&lt;/a&gt;&lt;/strong&gt; Pourquoi une PME a besoin d’un SIEM souverain, NIS2, RGPD, et le coût du statu quo.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;Épisode 1, le socle.&lt;/a&gt;&lt;/strong&gt; Le VPS durci hors CLOUD Act.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;Épisode 2, Wazuh en tout-en-un.&lt;/a&gt;&lt;/strong&gt; Manager, indexeur et tableau de bord sur un seul nœud.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;Épisode 3, les agents partout.&lt;/a&gt;&lt;/strong&gt; Déploiement sur tes serveurs, Mac et Windows.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 4, la défense réseau communautaire.&lt;/strong&gt; Bloquer les attaquants connus avant qu’ils n’arrivent. Tu viens de le lire.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;Épisode 5, le filtre mail.&lt;/a&gt;&lt;/strong&gt; Anti-spam et anti-hameçonnage devant ton serveur de messagerie.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/santa-controle-execution-mac-siem-souverain/&quot;&gt;Épisode 6, le contrôle d’exécution sur les Mac.&lt;/a&gt;&lt;/strong&gt; Décider quelles applications ont le droit de démarrer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 7, alerting et coût total.&lt;/strong&gt; Notifications calibrées et bilan financier honnête face au SaaS.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>crowdsec</category><category>securite</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-crowdsec-premiere-ligne-siem-souverain-1.png" length="0" type="image/png"/></item><item><title>Installe ton premier modèle d&apos;IA en local sur Mac</title><link>https://macsouverain.com/installer-premier-modele-ia-local-mac/</link><guid isPermaLink="true">https://macsouverain.com/installer-premier-modele-ia-local-mac/</guid><description>Un modèle d&apos;IA capable qui tourne 100 % offline sur ton Mac Apple Silicon, en 20 minutes et sans une ligne de commande. Installation LM Studio, choix du modèle en MLX, premier prompt, et la preuve finale, couper le Wi-Fi.</description><pubDate>Mon, 06 Jul 2026 06:14:39 GMT</pubDate><content:encoded>&lt;p&gt;Dans l’article précédent, on a posé le décor. Ton accès à un modèle d’IA distant peut être coupé du jour au lendemain, par une décision arbitraire, et la seule chose qui continue de tourner ce matin-là, ben… c’est plus rien.&lt;/p&gt;
&lt;p&gt;On a également dressé la carte de ce qu’un Mac Apple Silicon fait tourner en local, du petit modèle qui trie tes notes, au gros modèle qui rédige.&lt;/p&gt;
&lt;p&gt;C’était le pourquoi. Voici le comment.&lt;/p&gt;
&lt;p&gt;Bonne nouvelle d’entrée : tu n’as besoin d’aucune compétence technique, d’aucune ligne de commande, et d’aucun matériel supplémentaire. Si tu lis ces lignes sur un Mac récent, tu as déjà tout. Compte une vingtaine de minutes, la plupart passées à regarder une barre de téléchargement avancer.&lt;/p&gt;
&lt;p&gt;Au bout, un modèle capable, qui répond entièrement chez toi. Et pour te le prouver, à la toute fin, on coupera le Wi-Fi.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/ton-ia-peut-etre-eteinte-monte-la-tienne/&quot;&gt;Ton IA peut être éteinte par les US, monte la tienne&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-quil-te-faut&quot;&gt;Ce qu’il te faut&lt;/h2&gt;
&lt;p&gt;Trois choses, et tu les as probablement déjà.&lt;/p&gt;
&lt;p&gt;Un &lt;strong&gt;Mac Apple Silicon&lt;/strong&gt;, c’est-à-dire une puce M1 à M5. La quasi-totalité des Mac grand public vendus depuis fin 2020 en sont équipés. Si tu as un Mac Intel, cette méthode ne s’applique pas, l’inférence locale efficace repose sur la mémoire unifiée d’Apple Silicon.&lt;/p&gt;
&lt;p&gt;Une version de &lt;strong&gt;macOS raisonnablement récente&lt;/strong&gt;, Sonoma (14) ou plus récent pour l’outil qu’on va utiliser. Si tu n’as pas mis à jour depuis un moment, c’est le moment.&lt;/p&gt;
&lt;p&gt;De la &lt;strong&gt;RAM&lt;/strong&gt;, et c’est là que se joue le choix du modèle. Rappel express de l’article précédent : sur un Mac à 16 Go, une fois le système servi, il te reste 8 à 10 Go réellement utiles pour l’IA, de quoi faire tourner un modèle de 7 à 8 milliards de paramètres.&lt;/p&gt;
&lt;p&gt;Sur un 32 Go, tu montes une classe au-dessus, jusqu’à un modèle de 24 milliards de paramètres. La règle d’or, ne jamais choisir un modèle qui remplit tout le budget disponible, sinon la machine se met à ramer ou plante.&lt;/p&gt;
&lt;p&gt;Si tu veux le détail du budget RAM et la carte complète des modèles par taille, tout est dans l’article précédent. Ici, on installe.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;loutil--lm-studio-zéro-terminal&quot;&gt;L’outil : LM Studio, zéro terminal&lt;/h2&gt;
&lt;p&gt;Il existe plusieurs façons de faire tourner un modèle en local. Pour un premier pas, une seule mérite d’être en vedette : &lt;strong&gt;LM Studio&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;C’est une application de bureau classique, avec des fenêtres, des boutons et un champ de recherche. Tu télécharges tes modèles depuis une bibliothèque intégrée, tu cliques, tu discutes. Aucune ligne de commande, aucun fichier de configuration à éditer, aucune manipulation ésotérique. C’est l’IA locale présentée comme une app normale, et pour débuter c’est exactement ce qu’il faut.&lt;/p&gt;
&lt;p&gt;LM Studio est &lt;strong&gt;gratuit&lt;/strong&gt;, pour un usage personnel comme professionnel. Et sur Mac Apple Silicon, il embarque le meilleur moteur possible, on y revient dans deux minutes.&lt;/p&gt;
&lt;p&gt;Les curieux et les gourmands ont d’autres options, Ollama en ligne de commande, MLX pour aller au ras du métal. On les évoque en fin d’article, une fois que tu auras déjà un modèle qui tourne. Chaque chose en son temps.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;installer-lm-studio&quot;&gt;Installer LM Studio&lt;/h2&gt;
&lt;p&gt;Rien de plus qu’une app Mac ordinaire.&lt;/p&gt;
&lt;p&gt;Rends-toi sur &lt;a href=&quot;https://lmstudio.ai&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;lmstudio.ai&lt;/a&gt; et télécharge la version pour Mac. Le site détecte ta machine et te propose le bon build, celui pour Apple Silicon. Tu récupères un fichier &lt;code&gt;.dmg&lt;/code&gt;, le format d’installation habituel sur Mac.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-01-page-telechargement-installer-premier-modele-ia-local-mac-2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;La page de téléchargement de LM Studio, qui détecte automatiquement ton Mac Apple Silicon.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Ouvre le &lt;code&gt;.dmg&lt;/code&gt; téléchargé. Une fenêtre s’affiche avec l’icône de LM Studio et un raccourci vers ton dossier Applications. Glisse l’icône sur le dossier Applications, exactement comme pour n’importe quelle app. C’est tout, rien à cocher, rien à configurer.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-02-dmg-vers-applications-installer-premier-modele-ia-local-mac-2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;La fenêtre du .dmg, tu glisses l&amp;#x27;icône LM Studio sur le dossier Applications.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Lance LM Studio depuis ton Launchpad ou ton dossier Applications. Au premier démarrage, macOS peut te demander de confirmer l’ouverture d’une app téléchargée sur Internet, tu confirmes. L’application s’ouvre sur un écran d’accueil qui te propose de choisir un premier modèle. On y va.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;choisir-et-télécharger-ton-premier-modèle&quot;&gt;Choisir et télécharger ton premier modèle&lt;/h2&gt;
&lt;p&gt;C’est l’étape qui compte, et celle où on va être précis, parce que tous les modèles ne se valent pas et que le bon choix dépend de ta RAM.&lt;/p&gt;
&lt;p&gt;Reprends le pick souverain de l’article précédent. Sur un Mac à &lt;strong&gt;16 Go&lt;/strong&gt;, vise &lt;strong&gt;Qwen2.5 7B&lt;/strong&gt;, un modèle sous licence Apache 2.0, vraiment libre, qui fait tourner l’essentiel du quotidien. Sur un Mac à &lt;strong&gt;32 Go&lt;/strong&gt;, vise &lt;strong&gt;Mistral Small&lt;/strong&gt;, un modèle de 24 milliards de paramètres, européen et lui aussi sous Apache 2.0, taillé pour la rédaction soutenue et l’analyse de longs documents.&lt;/p&gt;
&lt;p&gt;Dans LM Studio, ouvre l’onglet de recherche, l’icône en forme de loupe dans la barre latérale, et tape le nom du modèle. La bibliothèque est connectée à Hugging Face, la grande logithèque des modèles ouverts, tu vas donc voir apparaître plusieurs variantes du même modèle. C’est normal, et c’est là qu’il faut savoir lire.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-03-discover-recherche-installer-premier-modele-ia-local-mac-2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;L&amp;#x27;onglet Discover de LM Studio, pour chercher et télécharger des modèles depuis Hugging Face.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Deux informations à décoder sur chaque variante.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le format.&lt;/strong&gt; Tu vas croiser deux mots, &lt;strong&gt;MLX&lt;/strong&gt; et &lt;strong&gt;GGUF&lt;/strong&gt;. Retiens simplement ceci : MLX, le framework de calcul maison d’Apple, est le moteur optimisé pour la mémoire unifiée d’Apple Silicon. Sur ton Mac, une version MLX tourne nettement plus vite que la même en GGUF, à qualité égale.&lt;/p&gt;
&lt;p&gt;LM Studio embarque ce moteur MLX, autant l’exploiter. &lt;strong&gt;Prends la version MLX du modèle dès qu’elle existe.&lt;/strong&gt; Si un modèle n’existe qu’en GGUF, ce n’est pas grave, ça marche aussi, juste un peu moins vite.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La quantification.&lt;/strong&gt; Tu vas voir des étiquettes comme &lt;code&gt;4bit&lt;/code&gt;, &lt;code&gt;Q4&lt;/code&gt;, &lt;code&gt;Q4_K_M&lt;/code&gt;, &lt;code&gt;Q8&lt;/code&gt;. C’est le degré de compression du modèle. Un modèle brut pèse une fortune en mémoire, la quantification réduit la précision de ses poids pour le faire tenir dans ta RAM, au prix d’une perte de qualité minime.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Q4, ou 4bit, est le bon compromis pour débuter&lt;/strong&gt;, il divise le poids du fichier par environ quatre par rapport au modèle non compressé, sans que tu voies vraiment la différence à l’usage. Q8 est plus fidèle mais deux fois plus lourd, garde-le pour plus tard si tu as de la marge.&lt;/p&gt;
&lt;p&gt;Concrètement, ce que tu télécharges :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sur 16 Go, &lt;strong&gt;Qwen2.5 7B en MLX 4bit&lt;/strong&gt; pèse environ &lt;strong&gt;4,3 Go&lt;/strong&gt;. Il rentre large.&lt;/li&gt;
&lt;li&gt;Sur 32 Go, &lt;strong&gt;Mistral Small 24B en MLX 4bit&lt;/strong&gt; pèse &lt;strong&gt;autour de 13 à 14 Go&lt;/strong&gt;. Il rentre dans ta marge sans te ruiner la machine.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Choisis la bonne variante, MLX et 4bit, et clique sur télécharger. Une barre de progression apparaît, tu peux suivre l’avancement dans l’onglet des téléchargements. C’est le moment d’aller te faire un café, le fichier fait plusieurs gigas.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-04-picker-modele-mlx-installer-premier-modele-ia-local-mac-2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Qwen2.5 7B Instruct en variante MLX, quantification 4bit, 4 Go.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Un mot sur les noms de version. Les modèles évoluent, Mistral Small en est déjà à une révision plus récente que celle nommée dans l’article précédent. Ne te formalise pas sur le numéro exact, prends la dernière &lt;strong&gt;Mistral Small 24B&lt;/strong&gt; proposée en MLX dans LM Studio, ce sera la bonne.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ton-premier-prompt-puis-coupe-le-wi-fi&quot;&gt;Ton premier prompt, puis coupe le Wi-Fi&lt;/h2&gt;
&lt;p&gt;Le modèle est téléchargé. Place au moment de vérité.&lt;/p&gt;
&lt;p&gt;Ouvre l’onglet &lt;strong&gt;Chat&lt;/strong&gt;, l’icône en forme de bulle dans la barre latérale. En haut de la fenêtre, un menu déroulant te propose de charger un modèle, sélectionne celui que tu viens de télécharger. LM Studio le charge en mémoire, quelques secondes, et t’affiche un champ de saisie familier, une conversation, comme avec n’importe quel assistant.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-05-modele-charge-installer-premier-modele-ia-local-mac-2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Le modèle sélectionné et chargé en mémoire dans l&amp;#x27;onglet Chat.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Si LM Studio te propose un choix de moteur, assure-toi qu’il est bien sur &lt;strong&gt;MLX&lt;/strong&gt;. C’est en général automatique quand tu as pris une variante MLX, mais un coup d’œil ne coûte rien.&lt;/p&gt;
&lt;p&gt;Tape ton premier prompt. N’importe quoi, une vraie tâche de préférence, pour sentir ce que ça donne. « Résume-moi ce texte en trois points », « rédige-moi un mail de relance poli », « explique-moi la différence entre deux notions ». Le modèle réfléchit une poignée de secondes, puis répond, mot après mot, entièrement depuis ta machine.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-06-premier-prompt-reponse-installer-premier-modele-ia-local-mac-2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Un premier prompt, la réponse générée entièrement en local par le modèle.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Et maintenant, la démonstration qui referme la boucle de l’article précédent.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Coupe le Wi-Fi.&lt;/strong&gt; Clique sur l’icône Wi-Fi dans ta barre de menus et désactive-le, ou passe par Réglages Système. Ta machine est désormais hors ligne, coupée d’Internet, débranchée du monde. Repose une question au modèle.&lt;/p&gt;
&lt;p&gt;Il répond.&lt;/p&gt;
&lt;p&gt;Voilà. Aucune requête n’est partie, aucun octet de ton texte n’a quitté ton Mac, et pourtant ça marche. C’est ça, concrètement, un modèle qui tourne chez toi. Le matin où on coupe le robinet distant, celui-là continue de couler. Tu peux rallumer le Wi-Fi, la démonstration est faite.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;trois-réglages-qui-changent-tout&quot;&gt;Trois réglages qui changent tout&lt;/h2&gt;
&lt;p&gt;Ton modèle tourne. Trois boutons méritent que tu saches à quoi ils servent, parce qu’ils font la différence entre une machine fluide et une machine qui rame.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La longueur de contexte.&lt;/strong&gt; C’est la quantité de texte que le modèle peut garder en tête d’un coup, ta question plus sa réponse plus tout ce que tu lui as donné à lire. Elle se règle au chargement du modèle, exprimée en tokens, dans le panneau de configuration. Une valeur élevée te permet de lui soumettre de longs documents, mais elle consomme de la RAM en proportion. Si ton Mac peine, réduis-la. Si tu veux lui faire avaler un long PDF, augmente-la, en gardant un œil sur ta mémoire.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-07-reglages-contexte-installer-premier-modele-ia-local-mac-2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Le réglage de la longueur de contexte (Context Length) du modèle.&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;La quantification.&lt;/strong&gt; On en a parlé au téléchargement, c’est le levier qualité contre poids. Si ton modèle tient à l’étroit dans ta RAM, une quantification plus agressive (Q4 plutôt que Q8) le fait tenir. Si tu as de la marge et que tu veux le meilleur rendu, une quantification plus légère améliore la qualité. Tu ajustes en téléchargeant une autre variante du modèle, c’est le seul point où il faut repasser par la case téléchargement.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Décharger le modèle.&lt;/strong&gt; Tant qu’un modèle est chargé, il occupe ta RAM, même si tu ne l’utilises pas. Quand tu as fini, décharge-le, le bouton d’éjection dans le sélecteur de modèle libère la mémoire d’un coup. Réflexe utile si tu enchaînes sur un travail lourd, montage, code, machine virtuelle, et que tu veux récupérer tes gigas. Fermer la fenêtre ne suffit pas toujours, décharge explicitement.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-08-ejection-modele-installer-premier-modele-ia-local-mac-2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Le bouton d&amp;#x27;éjection dans le sélecteur de modèle, pour décharger le modèle et libérer la RAM.&quot;&gt;
&lt;/figure&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-aller-plus-loin&quot;&gt;Pour aller plus loin&lt;/h2&gt;
&lt;p&gt;Tu as un modèle qui tourne, tu as passé ton premier prompt hors ligne. Le reste, c’est du bonus, pour le jour où l’envie te prend de creuser.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ollama, pour les curieux du terminal.&lt;/strong&gt; Si la ligne de commande ne te fait pas peur, &lt;a href=&quot;https://ollama.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Ollama&lt;/a&gt; fait tourner un modèle en une seule commande. Tu installes l’app, tu ouvres le Terminal, tu tapes &lt;code&gt;ollama run mistral-small:24b&lt;/code&gt;, et il télécharge le modèle puis te met en conversation, directement dans le terminal. C’est plus dépouillé que LM Studio, mais redoutablement efficace, et ça ouvre la porte à l’automatisation, brancher un modèle local sur tes propres scripts via une API locale. Ollama tire lui aussi parti d’Apple Silicon en s’appuyant sur MLX.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MLX en direct, pour les gourmands.&lt;/strong&gt; Le moteur que LM Studio utilise sous le capot, &lt;a href=&quot;https://github.com/ml-explore/mlx&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;MLX&lt;/a&gt;, est un framework Apple que tu peux piloter toi-même, avec sa boîte à outils &lt;code&gt;mlx-lm&lt;/code&gt;. C’est le terrain de jeu de qui veut exploiter au maximum sa mémoire unifiée, tester des quantifications maison, ou faire tourner des modèles à peine sortis. Réservé à ceux que la mécanique fine amuse, mais c’est là que se trouve la performance brute sur Mac.&lt;/p&gt;
&lt;p&gt;Pour la grande majorité des usages, tu n’iras jamais plus loin que LM Studio, et c’est parfaitement bien ainsi.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Récapitulons ce que tu viens de faire. Tu as installé une app gratuite, téléchargé un modèle en MLX taillé pour ta RAM, passé un premier prompt, et vérifié Wi-Fi coupé que rien ne sortait de ta machine. Vingt minutes, zéro ligne de commande, zéro dépendance à un modèle qu’un tiers IA peut fermer.&lt;/p&gt;
&lt;p&gt;Ce modèle est à toi. Personne ne peut te le couper, te le facturer à la requête, ou décider un matin que ta nationalité ne lui convient pas. Il ne remplacera pas le meilleur modèle distant sur les tâches les plus dures, on l’a dit, et ce n’est pas le but. Son intérêt, c’est qu’il est là, chez toi, tout le temps, pour l’essentiel de ce que tu fais.&lt;/p&gt;
&lt;p&gt;Le socle est posé. La suite, c’est de t’en servir pour de vrai, pour toutes les tâches que tu peux.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire ensuite : &lt;a href=&quot;https://macsouverain.com/mets-ton-ia-locale-au-travail/&quot;&gt;Mets ton IA locale au travail, sans le cloud&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/38-apple-intelligence-ce-qui-sort-de-ton-mac/&quot;&gt;Apple Intelligence : ce qui sort vraiment de ton Mac&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sources&quot;&gt;Sources&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;L’outil&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://lmstudio.ai&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;LM Studio&lt;/a&gt;, l’application de bureau pour exécuter des modèles en local, gratuite, avec moteur MLX embarqué sur Apple Silicon.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://lmstudio.ai/docs/app/system-requirements&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;LM Studio, configuration requise&lt;/a&gt;, Apple Silicon M1 à M4 et macOS 14 ou plus récent, 16 Go de RAM recommandés.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Les modèles&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://huggingface.co/lmstudio-community/Qwen2.5-7B-Instruct-MLX-4bit&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Qwen2.5 7B Instruct, MLX 4bit&lt;/a&gt;, 4,28 Go, licence Apache 2.0, le pick d’un Mac à 16 Go.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://huggingface.co/lmstudio-community/Mistral-Small-3.2-24B-Instruct-2506-MLX-4bit&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Mistral Small 24B, MLX 4bit&lt;/a&gt;, environ 13 Go, licence Apache 2.0, le pick d’un Mac à 32 Go.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Pour aller plus loin&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://ollama.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Ollama&lt;/a&gt;, exécuter un modèle en une commande, avec API locale.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/ml-explore/mlx&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Apple MLX&lt;/a&gt;, le framework optimisé pour la mémoire unifiée d’Apple Silicon.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire/&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ia</category><category>modele-local</category><category>macos</category><category>apple-silicon</category><category>lm-studio</category><category>mlx</category><category>tutoriels</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-installer-premier-modele-ia-local-mac-2.png" length="0" type="image/png"/></item><item><title>Déploie Wazuh partout, le SIEM voit enfin ton réseau</title><link>https://macsouverain.com/wazuh-agents-parc-siem-souverain/</link><guid isPermaLink="true">https://macsouverain.com/wazuh-agents-parc-siem-souverain/</guid><description>Enrôler les agents Wazuh sur tes serveurs Linux, tes Mac et tes postes Windows, avec remontée des logs par le Tailnet, jamais par l&apos;internet ouvert.</description><pubDate>Wed, 01 Jul 2026 12:50:41 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ août 2026.&lt;/strong&gt; La branche stable est passée à Wazuh 4.14.7 le 29 juillet. Les commandes ci-dessous nomment encore l’agent 4.14.5, remplace le numéro par 4.14.7 ou récupère le dernier .pkg/.msi sur la page des paquets Wazuh.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;À l’épisode précédent, tu as monté &lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;une console de sécurité qui tourne&lt;/a&gt;. Wazuh en tout-en-un sur ton VPS durci, manager, indexeur et tableau de bord sur un seul nœud, dashboard verrouillé en Tailnet-only. Une belle machine. Qui, pour l’instant, ne voit qu’une seule chose : elle-même.&lt;/p&gt;
&lt;p&gt;C’est déjà utile, ton serveur s’auto-surveille, valide ton durcissement, remonte ses propres CVE. Mais un SIEM qui ne regarde que le serveur sur lequel il tourne, c’est une caméra braquée sur sa propre boîte. Aujourd’hui, on la retourne vers le reste de la pièce.&lt;/p&gt;
&lt;p&gt;On va &lt;strong&gt;déployer les agents Wazuh sur ton parc&lt;/strong&gt;. Tes serveurs Linux, tes Mac, tes postes Windows. Chaque machine reçoit une sonde qui collecte ses journaux, ses événements de sécurité et l’intégrité de ses fichiers, et fait remonter tout ça au manager. C’est le moment où ton SIEM passe de myope à panoramique.&lt;/p&gt;
&lt;p&gt;Un point non négociable, posé dès l’épisode 1 et qui commande tout ce chapitre. &lt;strong&gt;Cette remontée passe par le Tailnet, jamais par l’internet ouvert.&lt;/strong&gt; Le manager n’ouvre ses oreilles que sur ton maillage privé. Un agent qui n’est pas dans ton Tailnet ne parle à rien.&lt;/p&gt;
&lt;p&gt;Cette stack, je l’utilise au quotidien. Les commandes qui suivent sont celles que tu vas taper toi-même, dans l’ordre, sur ton manager puis sur chaque machine à surveiller.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;avant-de-commencer&quot;&gt;Avant de commencer&lt;/h2&gt;
&lt;p&gt;Trois choses à avoir en tête avant la première commande.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce qu’il te faut.&lt;/strong&gt; Le manager Wazuh de l’épisode 2, opérationnel. Un accès administrateur sur chaque machine à enrôler. Et surtout, &lt;strong&gt;chaque machine à surveiller doit être membre de ton Tailnet&lt;/strong&gt;, exactement comme ton manager. C’est le prérequis structurant de cet épisode. Le &lt;code&gt;tailscale up&lt;/code&gt; vu à l’épisode 1, tu le rejoues sur chaque endpoint. Sans ça, rien ne remonte.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça change.&lt;/strong&gt; À la fin, ton dashboard ne listera plus un seul agent, mais autant que tu auras de machines. Chacune remonte ses logs, son audit de configuration, ses vulnérabilités et l’intégrité de ses fichiers, au même endroit, sous ton œil unique.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça ne change pas.&lt;/strong&gt; Un agent &lt;strong&gt;observe&lt;/strong&gt;, il ne bloque rien. Il te dit qu’une application a démarré, qu’un fichier a changé, qu’une connexion a échoué. Décider quelles applications ont le droit de se lancer sur tes Mac, ça viendra, c’est un autre outil, un autre épisode. Ici, on regarde. On ne barre pas encore la route.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ouvrir-les-bonnes-portes-et-seulement-celles-là&quot;&gt;Ouvrir les bonnes portes, et seulement celles-là&lt;/h2&gt;
&lt;p&gt;Avant de toucher au moindre endpoint, un geste sur le manager. Jusqu’ici, ton serveur n’écoutait le monde extérieur sur rien, et le dashboard était replié sur le Tailnet. Les agents distants, eux, ont besoin de joindre le manager sur deux ports.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Le port 1515&lt;/strong&gt;, pour l’&lt;strong&gt;enrôlement&lt;/strong&gt;. C’est la poignée de main initiale, chiffrée, par laquelle un nouvel agent se présente et reçoit sa clé d’authentification.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le port 1514&lt;/strong&gt;, pour la &lt;strong&gt;remontée&lt;/strong&gt; des logs et des événements, une fois l’agent enrôlé.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Et c’est exactement là que se joue la souveraineté de toute la série. Ces deux ports, on les ouvre &lt;strong&gt;uniquement sur l’interface Tailscale&lt;/strong&gt;, jamais en global.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; allow&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; in&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; on&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tailscale0&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; to&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; any&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; port&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; 1514&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; proto&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tcp&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; allow&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; in&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; on&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tailscale0&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; to&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; any&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; port&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; 1515&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; proto&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tcp&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu reconnais le geste, c’est celui de SSH à l’épisode 1, celui du dashboard à l’épisode 2. On autorise sur &lt;code&gt;tailscale0&lt;/code&gt;, ton maillage chiffré, et nulle part ailleurs. Le piège, toujours le même, ce serait de taper &lt;code&gt;sudo ufw allow 1514/tcp&lt;/code&gt; tout court. Cette commande-là offre ton SIEM aux scanners du monde entier. La nôtre le garde invisible.&lt;/p&gt;
&lt;p&gt;Vérifie l’état de ton pare-feu.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; status&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu dois voir tes deux nouvelles règles portant bien la mention &lt;code&gt;on tailscale0&lt;/code&gt;. Si un &lt;code&gt;1514/tcp&lt;/code&gt; global traîne, retire-le sans hésiter, c’est une brèche.&lt;/p&gt;
&lt;p&gt;Dernière chose à noter, l’adresse Tailscale de ton manager, celle que chaque agent devra viser.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;tailscale&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ip&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -4&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;C’est cette adresse, et pas l’IP publique du VPS, que tu passeras aux agents. L’IP publique n’écoute rien sur ces ports, de toute façon. Dans tout ce qui suit, je la note &lt;code&gt;&amp;#x3C;IP_TAILSCALE_DU_MANAGER&gt;&lt;/code&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-1-enrôler-un-serveur-linux&quot;&gt;Étape 1, enrôler un serveur Linux&lt;/h2&gt;
&lt;p&gt;On commence par le plus simple, un serveur Ubuntu ou Debian. Trois temps, ajouter le dépôt Wazuh, installer l’agent en lui donnant l’adresse du manager, le démarrer.&lt;/p&gt;
&lt;p&gt;D’abord le dépôt officiel.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt-get&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; install&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; gnupg&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt-transport-https&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;curl&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -s&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; https://packages.wazuh.com/key/GPG-KEY-WAZUH&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; |&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; gpg&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --no-default-keyring&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --keyring&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; gnupg-ring:/usr/share/keyrings/wazuh.gpg&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --import&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; &amp;#x26;&amp;#x26; &lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; chmod&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; 644&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /usr/share/keyrings/wazuh.gpg&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;echo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; &quot;deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main&quot;&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; |&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tee&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -a&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /etc/apt/sources.list.d/wazuh.list&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt-get&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; update&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Rien d’ésotérique. On importe la clé de signature du dépôt, on déclare le dépôt Wazuh, on rafraîchit la liste des paquets. C’est la routine APT habituelle.&lt;/p&gt;
&lt;p&gt;Puis l’installation, avec l’astuce qui fait tout le travail. En préfixant la commande d’installation par la variable &lt;code&gt;WAZUH_MANAGER&lt;/code&gt;, tu dis au paquet vers qui se tourner. L’agent s’enrôle tout seul auprès de ce manager pendant l’installation.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; WAZUH_MANAGER=&quot;&amp;#x3C;IP_TAILSCALE_DU_MANAGER&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; WAZUH_AGENT_GROUP=&quot;linux&quot;&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt-get&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; install&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-agent&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le &lt;code&gt;WAZUH_AGENT_GROUP=&quot;linux&quot;&lt;/code&gt; range d’emblée cette machine dans un groupe nommé &lt;code&gt;linux&lt;/code&gt;. On verra plus bas à quoi servent les groupes, retiens juste que c’est le bon moment pour les assigner.&lt;/p&gt;
&lt;p&gt;Enfin, on démarre le service et on l’active au boot.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; daemon-reload&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; enable&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-agent&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; start&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-agent&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Et voilà, ton serveur Linux remonte. Si tu tournes sur du RHEL, de l’Alma ou du Rocky, le principe est identique, tu remplaces le dépôt APT par le dépôt YUM et &lt;code&gt;apt-get install&lt;/code&gt; par &lt;code&gt;dnf install&lt;/code&gt;, la variable &lt;code&gt;WAZUH_MANAGER&lt;/code&gt; fonctionne pareil.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-2-enrôler-un-mac&quot;&gt;Étape 2, enrôler un Mac&lt;/h2&gt;
&lt;p&gt;Le Mac, c’est là que ça devient intéressant, parce que macOS a ses propres règles du jeu. Commençons par le déploiement, la subtilité vient juste après.&lt;/p&gt;
&lt;p&gt;L’agent macOS se livre en paquet &lt;code&gt;.pkg&lt;/code&gt;, et il en existe deux versions, une pour les Mac Apple Silicon et une pour les vieux Mac Intel. Sur un parc récent, c’est l’Apple Silicon.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;curl&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -O&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; https://packages.wazuh.com/4.x/macos/wazuh-agent-4.14.5-1.arm64.pkg&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;echo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; &quot;WAZUH_MANAGER=&apos;&amp;#x3C;IP_TAILSCALE_DU_MANAGER&gt;&apos; &amp;#x26;&amp;#x26; WAZUH_AGENT_GROUP=&apos;macos&apos;&quot;&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; &gt;&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /tmp/wazuh_envs&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; installer&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -pkg&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-agent-4.14.5-1.arm64.pkg&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -target&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le mécanisme change un peu de forme mais pas de fond. Sur macOS, les variables de déploiement ne se collent pas devant la commande, elles s’écrivent dans un fichier temporaire, &lt;code&gt;/tmp/wazuh_envs&lt;/code&gt;, que l’installateur lit au passage. Le résultat est le même, l’agent connaît son manager et son groupe. Pour un Mac Intel, tu remplaces &lt;code&gt;arm64&lt;/code&gt; par &lt;code&gt;intel64&lt;/code&gt; dans les deux lignes qui la mentionnent.&lt;/p&gt;
&lt;p&gt;On lance ensuite l’agent.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; launchctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; bootstrap&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; system&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /Library/LaunchDaemons/com.wazuh.agent.plist&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Sur macOS, l’agent vit sous &lt;code&gt;/Library/Ossec/&lt;/code&gt;, et son binaire de contrôle est &lt;code&gt;/Library/Ossec/bin/wazuh-control&lt;/code&gt;, avec les verbes &lt;code&gt;start&lt;/code&gt;, &lt;code&gt;stop&lt;/code&gt; et &lt;code&gt;status&lt;/code&gt; si tu veux le piloter à la main.&lt;/p&gt;
&lt;h3 id=&quot;la-chausse-trappe-macos-tcc-et-laccès-disque-complet&quot;&gt;La chausse-trappe macOS, TCC et l’accès disque complet&lt;/h3&gt;
&lt;p&gt;Maintenant, la vérité que la plupart des tutoriels passent sous silence. Sur macOS, ton agent va démarrer, s’enrôler, apparaître comme actif dans le dashboard, et pourtant rester &lt;strong&gt;à moitié aveugle&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;La raison tient à &lt;strong&gt;TCC&lt;/strong&gt;, pour &lt;strong&gt;Transparency, Consent and Control&lt;/strong&gt;, le système de permissions par usage d’Apple. C’est lui qui fait surgir ces fenêtres « telle application veut accéder à vos documents ». TCC filtre l’accès aux dossiers sensibles, et il ne fait pas de cadeau. Or l’agent Wazuh n’est pas une application au sens d’Apple, c’est un ensemble de binaires empaquetés. Résultat, sans autorisation explicite, il se voit refuser l’accès aux zones que TCC protège. Sa surveillance d’intégrité des fichiers tourne, mais ne voit pas ce qu’elle ne peut pas lire.&lt;/p&gt;
&lt;p&gt;La parade, c’est d’accorder à l’agent l’&lt;strong&gt;accès disque complet&lt;/strong&gt;, le Full Disk Access. Sur un parc géré, ça se fait proprement par MDM, un profil de configuration poussé par Jamf ou équivalent, qui déclare la permission une fois pour toutes sur toutes les machines. Sur une ou deux machines, ça se règle à la main dans les réglages de confidentialité. C’est un cran de plus que sur Linux, et c’est spécifique à Apple, autant le savoir avant de s’étonner que le Mac remonte moins de choses que le serveur.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-3-enrôler-un-poste-windows&quot;&gt;Étape 3, enrôler un poste Windows&lt;/h2&gt;
&lt;p&gt;Windows, dernier larron. L’agent s’installe via un paquet MSI, en mode silencieux, depuis une console PowerShell ouverte en administrateur.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;powershell&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;msiexec.exe&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; /&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;i .\wazuh&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;agent&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;4.14&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;5&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;1.&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;msi &lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;q WAZUH_MANAGER&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;&amp;#x3C;IP_TAILSCALE_DU_MANAGER&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; WAZUH_AGENT_NAME&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;poste-compta&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; WAZUH_AGENT_GROUP&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;windows&quot;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Même logique que partout, les variables passent le manager, un nom lisible pour le poste et son groupe. Le &lt;code&gt;WAZUH_AGENT_NAME&lt;/code&gt; est confortable sur Windows, où tu vas vite avoir dix postes qui se ressemblent, autant les baptiser.&lt;/p&gt;
&lt;p&gt;Puis on lance le service.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;powershell&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;Start-Service&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; WazuhSvc&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;En CMD classique, ce serait &lt;code&gt;NET START WazuhSvc&lt;/code&gt;, au choix. L’agent s’installe sous &lt;code&gt;C:\Program Files (x86)\ossec-agent&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Ce que Windows apporte de spécifique, c’est la lecture des &lt;strong&gt;journaux d’événements Windows&lt;/strong&gt;, la fameuse triade Security, System et Application, là où atterrissent les échecs d’ouverture de session, les élévations de privilèges, les créations de comptes. Et le FIM peut y surveiller le &lt;strong&gt;registre&lt;/strong&gt;, terrain de jeu favori des malwares qui veulent survivre à un redémarrage. Ton poste Windows n’est plus une boîte noire.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-4-vérifier-que-tout-remonte&quot;&gt;Étape 4, vérifier que tout remonte&lt;/h2&gt;
&lt;p&gt;Trois machines enrôlées, il est temps de s’assurer qu’elles parlent bien au manager. Retour sur le serveur Wazuh, une seule commande.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /var/ossec/bin/agent_control&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -l&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Elle liste tous tes agents avec leur identifiant, leur nom et leur état. Quatre états possibles, et il faut savoir les lire.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Active&lt;/strong&gt;, l’agent est connecté et remonte. C’est ce que tu veux voir partout.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pending&lt;/strong&gt;, il vient de s’enrôler et attend sa première poignée de main complète. Transitoire, patiente une minute.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Disconnected&lt;/strong&gt;, il était connecté et ne l’est plus. Le manager considère un agent perdu s’il n’a pas donné signe de vie depuis quinze minutes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Never connected&lt;/strong&gt;, il s’est enrôlé mais n’a jamais réussi à remonter. C’est le symptôme classique d’un port fermé ou d’une machine hors Tailnet, on y revient plus bas.&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-agents-list-wazuh-agents-parc-siem-souverain-3.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Liste des agents enrôlés et leur état de connexion, vue depuis le manager&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Le même tableau existe côté dashboard, en plus agréable à l’œil. La vue Agents t’affiche le décompte Active, Disconnected, Pending, Never connected, et la fiche de chaque machine, ses modules, sa dernière activité. C’est ta salle de contrôle, désormais peuplée.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/capture-agents-dashboard-wazuh-agents-parc-siem-souverain-3.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Vue d&amp;#x27;ensemble des agents dans le dashboard Wazuh, décompte par état&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Et là, le basculement. Chaque machine active fait tourner, sur elle-même, exactement les modules que ton serveur faisait tourner sur lui à l’épisode 2. L’audit de configuration contre les référentiels CIS. La détection des vulnérabilités connues sur ses paquets. La surveillance d’intégrité de ses fichiers. L’analyse de ses journaux. Sauf que maintenant, ce n’est plus une machine, c’est ton parc, et tout converge vers un seul écran.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;aller-plus-loin-surveiller-un-dossier-précis&quot;&gt;Aller plus loin, surveiller un dossier précis&lt;/h2&gt;
&lt;p&gt;Par défaut, l’agent surveille déjà des répertoires système sensibles, ceux qu’un intrus aime modifier. Mais tu as sûrement un dossier qui compte plus que les autres, tes données clients, ta comptabilité, un partage métier. Tu veux savoir à la seconde près si quelqu’un y touche.&lt;/p&gt;
&lt;p&gt;C’est le rôle du &lt;strong&gt;FIM&lt;/strong&gt;, le File Integrity Monitoring, la surveillance d’intégrité des fichiers. Et plutôt que de l’éditer machine par machine, on utilise les &lt;strong&gt;groupes&lt;/strong&gt; qu’on a assignés à l’enrôlement. Un groupe partage une configuration, poussée automatiquement par le manager à tous ses membres. Tu écris une fois, ça s’applique partout.&lt;/p&gt;
&lt;p&gt;Sur le manager, tu édites le fichier de configuration partagée du groupe concerné, par exemple &lt;code&gt;/var/ossec/etc/shared/linux/agent.conf&lt;/code&gt;, et tu y déclares le répertoire à surveiller.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;xml&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;syscheck&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;  &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;directories&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; check_all&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;yes&quot;&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; realtime&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;&quot;yes&quot;&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;/srv/donnees-clients&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;directories&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&amp;#x3C;/&lt;/span&gt;&lt;span style=&quot;color:#22863A&quot;&gt;syscheck&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Deux attributs à comprendre. &lt;code&gt;check_all=&quot;yes&quot;&lt;/code&gt; enregistre tout ce qui caractérise un fichier, ses empreintes cryptographiques, sa taille, son propriétaire, ses permissions, ses dates. La moindre altération est repérée. &lt;code&gt;realtime=&quot;yes&quot;&lt;/code&gt; demande une surveillance en &lt;strong&gt;temps réel&lt;/strong&gt;, l’alerte tombe à l’instant du changement, sans attendre le prochain scan.&lt;/p&gt;
&lt;p&gt;Une nuance d’honnêteté sur ce temps réel. Il n’est disponible que sur &lt;strong&gt;Linux et Windows&lt;/strong&gt;. Sur macOS, le FIM retombe sur des &lt;strong&gt;scans planifiés&lt;/strong&gt;, périodiques. Une modification entre deux passages n’est vue qu’au passage suivant. Ce n’est pas un défaut de Wazuh, c’est une contrainte de la plateforme, mais mieux vaut le savoir avant de compter sur une alerte instantanée côté Mac. Autre détail qui piège, le répertoire doit exister avant que tu redémarres l’agent, sinon il est ignoré.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;si-ça-ne-marche-pas&quot;&gt;Si ça ne marche pas&lt;/h2&gt;
&lt;p&gt;Le déploiement d’agents, c’est simple quand tout va bien, et ça a toujours la même poignée de causes quand ça coince. Voici les vraies, dans l’ordre où tu les rencontreras.&lt;/p&gt;
&lt;h3 id=&quot;problème-lagent-reste-en--never-connected&quot;&gt;Problème, l’agent reste en « Never connected »&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; dans neuf cas sur dix en ce qui nous concerne, un problème de chemin réseau. Soit les ports 1514 et 1515 ne sont pas ouverts sur &lt;code&gt;tailscale0&lt;/code&gt; côté manager, soit la machine n’est pas dans le Tailnet, soit tu as donné à l’agent l’IP publique du VPS au lieu de son IP Tailscale.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; vérifie les trois. Sur le manager, &lt;code&gt;sudo ufw status&lt;/code&gt; doit montrer tes règles 1514 et 1515 bien accrochées à &lt;code&gt;tailscale0&lt;/code&gt;. Sur l’endpoint, &lt;code&gt;tailscale status&lt;/code&gt; doit confirmer qu’il est bien dans le maillage. Et relis la valeur de &lt;code&gt;WAZUH_MANAGER&lt;/code&gt;, elle doit pointer sur l’adresse Tailscale du manager, pas sur son IP publique.&lt;/p&gt;
&lt;h3 id=&quot;problème-lagent-passe-de--active--à--disconnected&quot;&gt;Problème, l’agent passe de « Active » à « Disconnected »&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; il remontait, il ne remonte plus. Le manager coupe au bout de quinze minutes sans nouvelles. Souvent le service de l’agent s’est arrêté, ou la liaison Tailscale a sauté.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; vérifie que le service tourne. &lt;code&gt;sudo systemctl status wazuh-agent&lt;/code&gt; sur Linux, &lt;code&gt;Start-Service WazuhSvc&lt;/code&gt; sur Windows, &lt;code&gt;/Library/Ossec/bin/wazuh-control status&lt;/code&gt; sur macOS. Et jette un œil au log de l’agent, toujours au même endroit selon la plateforme, &lt;code&gt;/var/ossec/logs/ossec.log&lt;/code&gt; sur Linux, &lt;code&gt;/Library/Ossec/logs/ossec.log&lt;/code&gt; sur Mac, le dossier d’installation sur Windows.&lt;/p&gt;
&lt;h3 id=&quot;problème-le-mac-est--active--mais-ne-remonte-presque-rien&quot;&gt;Problème, le Mac est « Active » mais ne remonte presque rien&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; le fameux TCC. L’agent tourne, mais sans accès disque complet il est aveugle sur les zones protégées par macOS.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; accorde-lui le Full Disk Access, par MDM sur un parc géré, à la main sur une machine isolée.&lt;/p&gt;
&lt;h3 id=&quot;problème-les-agents-sont--active--mais-le-dashboard-reste-vide&quot;&gt;Problème, les agents sont « Active » mais le dashboard reste vide&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable,&lt;/strong&gt; attention, ce n’est pas un problème d’agent. Si les machines remontent bien mais que rien n’apparaît dans l’interface, le maillon qui coince est en aval, entre le manager et l’indexeur. Souvenir de l’épisode 2, c’est &lt;strong&gt;Filebeat&lt;/strong&gt; qui pousse les alertes vers l’indexeur.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution,&lt;/strong&gt; le diagnostic se fait côté serveur, pas côté agent. Tu vérifies que Filebeat parle bien à l’indexeur et que l’indexeur digère. Ne perds pas une heure à réinstaller des agents qui, eux, font parfaitement leur travail.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-premier-jour-est-bruyant-cest-normal&quot;&gt;Le premier jour est bruyant, c’est normal&lt;/h2&gt;
&lt;p&gt;Un dernier mot d’honnêteté, parce que je préfère te le dire avant que tu le découvres seul. Le jour où tu branches dix machines d’un coup, ton dashboard va &lt;strong&gt;crépiter&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Chaque poste arrive avec son audit de configuration qui remonte des dizaines d’écarts par rapport au référentiel CIS. Chaque FIM signale des fichiers parfaitement légitimes qui changent au fil de l’usage. Au début, le bruit noie le signal, et c’est déstabilisant.&lt;/p&gt;
&lt;p&gt;Ce n’est pas un bug. C’est l’état brut d’un SIEM qu’on vient d’allumer sur un parc réel. Le travail qui suit, calibrer les règles, écarter les faux positifs, régler les seuils pour n’être réveillé que quand ça compte, c’est du travail humain, pas de la magie logicielle. On l’a dit depuis l’ouverture de la série, le dur n’est pas la techno, c’est l’ajustement. Cet ajustement fin, l’alerting calibré, ce sera le bilan de l’épisode 7.&lt;/p&gt;
&lt;p&gt;Pour l’instant, savoure. Ton SIEM ne se regarde plus le nombril, il voit ton réseau.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Ce que fait cet article.&lt;/strong&gt; On déploie les agents Wazuh sur tout le parc, serveurs Linux, Mac, Windows, pour que chaque machine remonte ses logs, son audit de configuration, ses vulnérabilités et l’intégrité de ses fichiers au manager. Toute la remontée passe par le Tailnet, jamais par l’internet ouvert. On vérifie l’enrôlement, on étend la surveillance de fichiers, on encaisse le bruit du premier jour.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les commandes.&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sur le manager, ouvrir les ports agents sur le Tailnet uniquement : &lt;code&gt;sudo ufw allow in on tailscale0 to any port 1514 proto tcp&lt;/code&gt; puis idem pour &lt;code&gt;1515&lt;/code&gt;. Jamais en global.&lt;/li&gt;
&lt;li&gt;Prérequis absolu, chaque endpoint doit être dans le Tailnet (&lt;code&gt;tailscale up&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Linux : ajouter le dépôt Wazuh, puis &lt;code&gt;sudo WAZUH_MANAGER=&quot;&amp;#x3C;IP_TAILSCALE_DU_MANAGER&gt;&quot; WAZUH_AGENT_GROUP=&quot;linux&quot; apt-get install wazuh-agent&lt;/code&gt;, puis &lt;code&gt;systemctl enable --now wazuh-agent&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;macOS : &lt;code&gt;curl -O&lt;/code&gt; le &lt;code&gt;.pkg&lt;/code&gt; arm64, écrire les variables dans &lt;code&gt;/tmp/wazuh_envs&lt;/code&gt;, &lt;code&gt;sudo installer -pkg ... -target /&lt;/code&gt;, &lt;code&gt;sudo launchctl bootstrap system /Library/LaunchDaemons/com.wazuh.agent.plist&lt;/code&gt;. Puis accorder le Full Disk Access à l’agent.&lt;/li&gt;
&lt;li&gt;Windows : &lt;code&gt;msiexec.exe /i .\wazuh-agent-4.14.5-1.msi /q WAZUH_MANAGER=&quot;&amp;#x3C;IP_TAILSCALE_DU_MANAGER&gt;&quot; WAZUH_AGENT_GROUP=&quot;windows&quot;&lt;/code&gt;, puis &lt;code&gt;Start-Service WazuhSvc&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Vérifier depuis le manager : &lt;code&gt;sudo /var/ossec/bin/agent_control -l&lt;/code&gt;, viser l’état &lt;code&gt;Active&lt;/code&gt; partout.&lt;/li&gt;
&lt;li&gt;Étendre le FIM via le groupe, dans &lt;code&gt;/var/ossec/etc/shared/&amp;#x3C;groupe&gt;/agent.conf&lt;/code&gt;, bloc &lt;code&gt;&amp;#x3C;syscheck&gt;&lt;/code&gt; avec &lt;code&gt;check_all=&quot;yes&quot; realtime=&quot;yes&quot;&lt;/code&gt; (temps réel Linux et Windows seulement, pas macOS).&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Tu es parti d’un SIEM qui ne voyait que lui-même, tu repars avec un SIEM qui voit ton parc.&lt;/p&gt;
&lt;p&gt;Tu as &lt;strong&gt;ouvert les ports agents sur le seul Tailnet&lt;/strong&gt;, 1514 et 1515 sur &lt;code&gt;tailscale0&lt;/code&gt;, jamais en public, fidèle à la promesse souveraine de la série. Tu as &lt;strong&gt;enrôlé tes trois familles de machines&lt;/strong&gt;, Linux en trois commandes, Mac en gérant la contrainte TCC, Windows en MSI silencieux. Tu as &lt;strong&gt;vérifié la remontée&lt;/strong&gt; avec &lt;code&gt;agent_control -l&lt;/code&gt; et dans le dashboard, et tu as &lt;strong&gt;étendu la surveillance d’intégrité&lt;/strong&gt; sur tes dossiers sensibles via les groupes.&lt;/p&gt;
&lt;p&gt;Chaque machine que tu branches est gratuite côté licence, c’est du 100 % open source, sans limite d’agents. Là où le SaaS américain facture au volume de logs, donc au nombre de machines, plus tu vois large, plus tu paies. Chez toi, voir large ne coûte rien.&lt;/p&gt;
&lt;p&gt;Mais tu observes. Tu vois les attaques, tu ne les arrêtes pas encore. À l’épisode 4, on ajoute la première ligne de défense active, &lt;strong&gt;CrowdSec&lt;/strong&gt;, le réseau communautaire qui bloque les attaquants connus avant même qu’ils ne frappent à ta porte. Ton SIEM commence à mordre.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;rappel-de-la-série&quot;&gt;Rappel de la série&lt;/h2&gt;
&lt;p&gt;Sept épisodes pour monter ta plomberie de sécurité souveraine, brique par brique.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;Épisode 0, le fondement de la série.&lt;/a&gt;&lt;/strong&gt; Pourquoi une PME a besoin d’un SIEM souverain, NIS2, RGPD, et le coût du statu quo.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;Épisode 1, le socle.&lt;/a&gt;&lt;/strong&gt; Le VPS durci hors CLOUD Act.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;Épisode 2, Wazuh en tout-en-un.&lt;/a&gt;&lt;/strong&gt; Manager, indexeur et tableau de bord sur un seul nœud.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 3, les agents partout.&lt;/strong&gt; Déploiement sur tes serveurs, Mac et Windows. Tu viens de le lire.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/&quot;&gt;Épisode 4, la défense réseau communautaire.&lt;/a&gt;&lt;/strong&gt; Bloquer les attaquants connus avant qu’ils n’arrivent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;Épisode 5, le filtre mail.&lt;/a&gt;&lt;/strong&gt; Anti-spam et anti-hameçonnage devant ton serveur de messagerie.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/santa-controle-execution-mac-siem-souverain/&quot;&gt;Épisode 6, le contrôle d’exécution sur les Mac.&lt;/a&gt;&lt;/strong&gt; Décider quelles applications ont le droit de démarrer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 7, alerting et coût total.&lt;/strong&gt; Notifications calibrées et bilan financier honnête face au SaaS.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>wazuh</category><category>securite</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-wazuh-agents-parc-siem-souverain-3.png" length="0" type="image/png"/></item><item><title>Wazuh en tout-en-un, ton Splunk maison pour le prix d&apos;un VPS</title><link>https://macsouverain.com/wazuh-tout-en-un-siem-souverain/</link><guid isPermaLink="true">https://macsouverain.com/wazuh-tout-en-un-siem-souverain/</guid><description>Épisode 2 de la série SIEM souverain. Installer Wazuh (manager, indexeur, dashboard) sur un seul nœud, durcir les mots de passe et le dashboard en Tailnet-only, régler le heap JVM, premiers tableaux de bord sans agents.</description><pubDate>Sat, 20 Jun 2026 13:13:52 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ août 2026.&lt;/strong&gt; La branche stable est passée à Wazuh 4.14.7 le 29 juillet, retrait du daemon déprécié wazuh-dbd, dépendances Python à jour, correctifs de synchro cluster. La commande d’install pointe sur la branche 4.14, elle te sert directement la 4.14.7, rien à changer.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;À l’épisode précédent, tu as monté &lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;un coffre-fort vide&lt;/a&gt;. Un VPS chez un hébergeur suisse, durci jusqu’à l’os, SSH par clé, pare-feu fermé, administration repliée derrière Tailscale, sauvegardes chiffrées hors-site. Une belle machine. Qui pour l’instant… ne surveille rien !&lt;/p&gt;
&lt;p&gt;Aujourd’hui, on la remplit. On installe &lt;strong&gt;Wazuh&lt;/strong&gt;, le cerveau de toute la pile, sur ce seul nœud. Manager, indexeur et tableau de bord, les trois composants centraux d’un SIEM, sur la même machine. C’est le mode tout-en-un, et c’est exactement ce dont une PME a besoin pour démarrer.&lt;/p&gt;
&lt;p&gt;La promesse de la série tient en une phrase, on l’a posée dès l’ouverture. &lt;strong&gt;L’équivalent fonctionnel d’un Splunk, pour le prix d’un VPS.&lt;/strong&gt; À la fin de cet article, tu auras une console de sécurité qui tourne, qui voit déjà ta propre machine, et qui t’a coûté zéro euro de licence. Là où le même périmètre chez un éditeur américain se chiffre de quelques milliers à plusieurs dizaines de milliers de dollars par an, selon la taille de ton parc, avec tes journaux logés dans une juridiction très défavorable à tes intérêts.&lt;/p&gt;
&lt;p&gt;Cette stack, je l’utilise au quotidien. Les commandes qui suivent sont celles que tu vas taper toi-même, dans l’ordre, sur le serveur de l’épisode 1.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;trois-composants-une-seule-machine&quot;&gt;Trois composants, une seule machine&lt;/h2&gt;
&lt;p&gt;Avant d’installer, comprends ce que tu installes. Un SIEM Wazuh, ce n’est pas un bloc monolithique, ce sont trois rôles qui se passent le relais.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Le manager&lt;/strong&gt;, c’est le cerveau. Il reçoit les journaux, fait tourner le moteur d’analyse, corrèle les événements, applique les règles et lève les alertes. C’est lui qui décide qu’une rafale d’échecs de mot de passe à 3 heures du matin mérite qu’on te réveille.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;L’indexeur&lt;/strong&gt;, c’est la mémoire. Il stocke et indexe les alertes pour que tu puisses les rechercher, filtrer, remonter dans le temps. C’est un fork d’&lt;a href=&quot;https://opensearch.org/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;OpenSearch&lt;/a&gt;, le moteur de recherche open source, lui-même issu d’Elasticsearch. Retiens ce détail, il va revenir nous compliquer la vie de la meilleure des façons.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le dashboard&lt;/strong&gt;, c’est la vitre. L’interface web par laquelle tu lis tout ça, accessible sur le port 443. Il interroge le manager pour la configuration et l’indexeur pour les données.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Un quatrième larron travaille dans l’ombre, &lt;strong&gt;Filebeat&lt;/strong&gt;, le tuyau qui pousse les alertes du manager vers l’indexeur. Tu n’y toucheras pas, mais quand quelque chose coince, c’est souvent lui qu’on regarde.&lt;/p&gt;
&lt;p&gt;En entreprise, ces trois composants vivent sur des machines séparées, pour encaisser le volume et tenir la haute disponibilité. Pour une PME jusqu’à une centaine de machines surveillées, c’est du gâchis. Le mode tout-en-un les pose tous les trois sur le même serveur, et c’est largement suffisant pour démarrer. La documentation officielle dimensionne d’ailleurs ce mode pour 1 à 100 agents.&lt;/p&gt;
&lt;p&gt;On reviendra plus bas sur le moment où le tout-en-un ne suffit plus. Mais pour l’instant, une seule machine, et on y va.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;linstallation-en-une-commande&quot;&gt;L’installation en une commande&lt;/h2&gt;
&lt;p&gt;Wazuh propose deux chemins. Le premier, step-by-step, installe l’indexeur, puis le manager, puis le dashboard séparément, en éditant les fichiers de configuration à la main. C’est pédagogique, c’est long, et tu n’en as pas besoin pour un mono-nœud. Le second, c’est l’assistant officiel, qui fait tout d’un coup.&lt;/p&gt;
&lt;p&gt;On prend l’assistant.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;curl&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -sO&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; https://packages.wazuh.com/4.14/wazuh-install.sh&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; &amp;#x26;&amp;#x26; &lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; bash&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ./wazuh-install.sh&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -a&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Décortiquons. Le &lt;code&gt;curl -sO&lt;/code&gt; télécharge le script d’installation depuis le dépôt officiel Wazuh, branche &lt;code&gt;4.14&lt;/code&gt;. Le &lt;code&gt;sudo bash ./wazuh-install.sh -a&lt;/code&gt; le lance avec les droits administrateur, et le flag &lt;code&gt;-a&lt;/code&gt; veut dire &lt;strong&gt;all-in-one&lt;/strong&gt;, tout-en-un. C’est ce flag qui demande à l’assistant d’installer et de configurer les trois composants sur cette même machine, de générer les certificats TLS qui chiffrent leurs échanges, et de fabriquer les mots de passe.&lt;/p&gt;
&lt;p&gt;À la fin, l’assistant affiche dans la console le mot de passe du compte &lt;code&gt;admin&lt;/code&gt;. Note-le, c’est ta première clé d’entrée. Si tu l’as raté en remontant le terminal, tu le récupères proprement :&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tar&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -O&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -xvf&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-install-files.tar&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-install-files/wazuh-passwords.txt&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Cette commande extrait, sans le décompresser sur le disque, le fichier qui liste tous les mots de passe générés à l’installation. On va d’ailleurs s’en occuper dans un instant, parce que des mots de passe générés par un script, c’est un point de départ, pas un point d’arrivée.&lt;/p&gt;
&lt;p&gt;Au moment où j’écris ces lignes, la version stable est la &lt;strong&gt;4.14.5&lt;/strong&gt;, sortie le 23 avril 2026. La cadence de patchs est quasi mensuelle sur la branche 4.14. L’URL d’installation pointe sur &lt;code&gt;4.14/&lt;/code&gt;, ce qui te sert toujours la dernière de la branche, donc tu n’as rien à changer tant que la 4.14 reste la stable. Si une 4.15 est sortie quand tu lis ça, vérifie la branche courante sur la &lt;a href=&quot;https://documentation.wazuh.com/current/release-notes/index-4x.html&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;page des notes de version&lt;/a&gt; avant de lancer la commande.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-piège-mémoire-là-où-90--des-installs-rament&quot;&gt;Le piège mémoire, là où 90 % des installs rament&lt;/h2&gt;
&lt;p&gt;Si tu ne dois retenir qu’une chose de cet épisode, c’est celle-ci. La cause numéro un des Wazuh qui rament, qui plantent, qui s’arrêtent au bout de trois jours, c’est la mémoire mal réglée sur l’indexeur.&lt;/p&gt;
&lt;p&gt;Souviens-toi, l’indexeur est un fork d’OpenSearch, qui tourne sur la &lt;strong&gt;JVM&lt;/strong&gt;, la machine virtuelle Java. Et la JVM réserve à son démarrage une zone de mémoire fixe pour travailler, qu’on appelle le &lt;strong&gt;heap&lt;/strong&gt; (le tas). Trop petit, l’indexeur étouffe sous les données. Trop grand, il prend toute la RAM et asphyxie le manager, le dashboard et l’OS qui tournent à côté sur la même machine. C’est tout l’enjeu du mononœud, trois gros consommateurs de mémoire se partagent une seule enveloppe.&lt;/p&gt;
&lt;p&gt;La règle officielle est nette, et elle est simple. &lt;strong&gt;Le heap, c’est la moitié de la RAM de la machine.&lt;/strong&gt; Et les deux bornes, minimale et maximale, doivent être identiques.&lt;/p&gt;
&lt;p&gt;Pourquoi identiques ? Parce que si tu laisses la JVM redimensionner son tas à chaud, en cours de route, elle passe son temps à réallouer de la mémoire au lieu d’indexer tes logs. En fixant le plancher et le plafond à la même valeur, tu lui dis « voilà ton bac à sable, ni plus ni moins, maintenant travaille ».&lt;/p&gt;
&lt;p&gt;Ça se règle dans un fichier, &lt;code&gt;/etc/wazuh-indexer/jvm.options&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; nano&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /etc/wazuh-indexer/jvm.options&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu y cherches les deux lignes &lt;code&gt;-Xms&lt;/code&gt; (la borne basse) et &lt;code&gt;-Xmx&lt;/code&gt; (la borne haute), et tu les fixes à la moitié de ta RAM. Voici pourquoi l’épisode 1 t’a fait viser 12 Go de RAM et pas 8. Sur une machine de 12 Go, le heap prend 6 Go, et il reste 6 Go pour tout le reste, le manager, le dashboard, Filebeat, le système. De la marge pour respirer.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;-Xms6g&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;-Xmx6g&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Puis on redémarre l’indexeur pour qu’il prenne en compte la nouvelle valeur.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; restart&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-indexer&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Si tu as démarré sur 8 Go pour tester, ta valeur de heap est &lt;code&gt;-Xms4g&lt;/code&gt; / &lt;code&gt;-Xmx4g&lt;/code&gt;, et tu vis avec 4 Go pour le reste, c’est juste mais ça tient pour une découverte.&lt;/p&gt;
&lt;p&gt;Un dernier point pour les curieux. La règle « moitié de la RAM » a aussi un plafond absolu, ne jamais dépasser environ 32 Go de heap, au-delà la JVM perd une optimisation interne sur ses pointeurs mémoire. C’est une bonne pratique générale du moteur OpenSearch, pas une limite Wazuh spécifique, et à l’échelle d’une PME on en est très loin, donc tu peux l’oublier pour l’instant. Je te le mentionne pour que tu ne sois pas surpris si tu tombes dessus en montant un jour une grosse infra.&lt;/p&gt;
&lt;p&gt;Tant qu’on parle de mémoire, une règle voisine. &lt;strong&gt;La JVM ne doit jamais swapper.&lt;/strong&gt; Si le système se met à utiliser le disque comme mémoire d’appoint pour l’indexeur, les performances s’effondrent. Sur un VPS correctement dimensionné, avec le heap réglé à la moitié de la RAM, tu ne devrais pas swapper, mais c’est le premier réflexe de diagnostic le jour où ça rame.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;verrouiller-la-maison&quot;&gt;Verrouiller la maison&lt;/h2&gt;
&lt;p&gt;L’installation t’a livré une console fonctionnelle. Elle t’a aussi livré des mots de passe générés par un script et un dashboard qui, par défaut, ne demande qu’à être joignable. Deux choses à reprendre en main avant de t’asseoir aux commandes.&lt;/p&gt;
&lt;h3 id=&quot;changer-tous-les-mots-de-passe-par-défaut&quot;&gt;Changer tous les mots de passe par défaut&lt;/h3&gt;
&lt;p&gt;Les mots de passe générés à l’installation ne sont pas mauvais en soi, mais ils traînent dans un fichier sur le serveur, et tu n’en es pas l’auteur. La bonne hygiène, c’est de tout régénérer avec tes propres secrets. Wazuh embarque un outil pour ça, déposé par l’assistant dans l’indexeur.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; bash&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /usr/share/wazuh-indexer/plugins/opensearch-security/tools/wazuh-passwords-tool.sh&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -a&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -A&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -au&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -ap&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; &amp;#x3C;&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt;MOT_DE_PASSE_ACTUE&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt;L&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le flag &lt;code&gt;-a&lt;/code&gt; cible tous les utilisateurs, &lt;code&gt;-A&lt;/code&gt; applique le changement, et le couple &lt;code&gt;-au&lt;/code&gt; / &lt;code&gt;-ap&lt;/code&gt; fournit l’utilisateur et le mot de passe administrateur actuels, ceux récupérés tout à l’heure. En mode tout-en-un, l’outil propage automatiquement les nouveaux mots de passe aux composants concernés, tu n’as pas à les recoller un par un.&lt;/p&gt;
&lt;p&gt;Tes nouveaux mots de passe doivent respecter une complexité minimale, &lt;strong&gt;8 à 64 caractères, au moins une majuscule, une minuscule, un chiffre, et un symbole&lt;/strong&gt; parmi &lt;code&gt;.*+?-&lt;/code&gt;. Génère-les avec ton gestionnaire de mots de passe, ne les invente pas de tête.&lt;/p&gt;
&lt;h3 id=&quot;les-certificats-déjà-là&quot;&gt;Les certificats, déjà là&lt;/h3&gt;
&lt;p&gt;Bonne nouvelle, tu n’as rien à faire côté chiffrement interne. L’assistant &lt;code&gt;-a&lt;/code&gt; a généré une petite autorité de certification maison et déposé les certificats TLS sous &lt;code&gt;/etc/wazuh-indexer/certs/&lt;/code&gt; et compagnie. Les trois composants se parlent déjà en chiffré entre eux. C’est fait, c’est propre, on n’y touche pas.&lt;/p&gt;
&lt;p&gt;Le seul effet visible, c’est qu’au premier accès au dashboard, ton navigateur affichera un avertissement de sécurité, parce que le certificat est auto-signé et non reconnu par une autorité publique. C’est normal, et pour un dashboard qui ne sera de toute façon jamais exposé au public, c’est parfaitement acceptable. Tu cliques pour continuer, et tu passes.&lt;/p&gt;
&lt;p&gt;Un mot pour anticiper la tentation. Tu pourrais vouloir un « vrai » certificat reconnu, via Let’s Encrypt. &lt;strong&gt;Surtout pas ici.&lt;/strong&gt; Let’s Encrypt valide ton certificat en vérifiant que ton serveur répond sur internet, donc en t’obligeant à ouvrir un port au monde entier. C’est l’exact contraire de ce qu’on construit depuis l’épisode 1.&lt;/p&gt;
&lt;p&gt;Si l’auto-signé te dérange vraiment, Tailscale peut émettre un certificat propre pour ton nœud sans aucune exposition publique. Mais franchement, pour une console que tu es seul à consulter, l’auto-signé suffit. On ne va pas percer le mur qu’on vient de bâtir pour faire disparaître un avertissement de navigateur.&lt;/p&gt;
&lt;h3 id=&quot;le-dashboard-invisible-depuis-internet&quot;&gt;Le dashboard, invisible depuis internet&lt;/h3&gt;
&lt;p&gt;C’est le geste de sécurité le plus important de l’épisode, et c’est celui qui sépare un SIEM souverain d’un SIEM posé sur le trottoir. Par défaut, rien ne garantit que ton dashboard reste privé. Le port 443 qui sert l’interface ne doit &lt;strong&gt;jamais&lt;/strong&gt; être joignable depuis internet.&lt;/p&gt;
&lt;p&gt;Tes tableaux de bord de sécurité, c’est la &lt;strong&gt;carte de tes faiblesses&lt;/strong&gt;, c’est précisément ce qu’un attaquant rêve de consulter.&lt;/p&gt;
&lt;p&gt;La règle de la série, posée à l’épisode 1, est inflexible. &lt;strong&gt;Aucun service public.&lt;/strong&gt; Le dashboard vit derrière Tailscale, accessible à toi seul, comme l’a fait SSH avant lui.&lt;/p&gt;
&lt;p&gt;Deux verrous, complémentaires. D’abord, on demande au dashboard de n’écouter que sur l’adresse Tailscale du serveur, pas sur toutes les interfaces. Ça se règle dans son fichier de configuration.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; nano&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /etc/wazuh-dashboard/opensearch_dashboards.yml&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu y trouves la ligne &lt;code&gt;server.host&lt;/code&gt;. Si elle vaut &lt;code&gt;0.0.0.0&lt;/code&gt;, le dashboard écoute partout, y compris sur l’IP publique. À proscrire. Tu la fixes sur l’IP Tailscale de ton serveur, celle que tu récupères avec &lt;code&gt;tailscale ip -4&lt;/code&gt;, vue à l’épisode 1.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;server.host: &quot;&amp;#x3C;IP_TAILSCALE_DU_SERVEUR&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Puis tu redémarres le dashboard.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; restart&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; wazuh-dashboard&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Ensuite, le pare-feu, en ceinture et bretelles. On reprend exactement le pattern de l’épisode 1 pour SSH, on autorise le port 443 uniquement sur l’interface du réseau privé, jamais en global.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; allow&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; in&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; on&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tailscale0&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; to&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; any&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; port&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; 443&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; proto&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tcp&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le piège à éviter, c’est de taper &lt;code&gt;sudo ufw allow 443/tcp&lt;/code&gt; tout court. Cette commande-là ouvre le dashboard au monde entier. La nôtre ne l’ouvre que sur &lt;code&gt;tailscale0&lt;/code&gt;, ton maillage chiffré. La nuance est tout sauf cosmétique, l’une expose ta console de sécurité aux scanners du monde entier, l’autre la rend invisible.&lt;/p&gt;
&lt;p&gt;Le résultat, c’est un dashboard joignable seulement par un membre de ton réseau privé. Un scan de ton IP publique ne révèle rien. Conforme à la promesse souveraine, et conforme au bon sens.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-tour-du-propriétaire&quot;&gt;Le tour du propriétaire&lt;/h2&gt;
&lt;p&gt;Connecte-toi. Depuis une machine membre de ton Tailnet, tu ouvres &lt;code&gt;https://&amp;#x3C;IP_TAILSCALE_DU_SERVEUR&gt;&lt;/code&gt; dans ton navigateur. Avertissement de certificat, tu passes. Login &lt;code&gt;admin&lt;/code&gt;, ton nouveau mot de passe. Tu es dans la console.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/06/capture-03-dashboard-overview-wazuh-tout-en-un-siem-souverain-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Vue d&amp;#x27;ensemble de la console Wazuh&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;em&gt;Cette capture vient d’une instance Wazuh en production, déjà peuplée de plusieurs agents. Sur ton install toute fraîche, tu ne verras pour l’instant que l’agent 000, le serveur qui se surveille lui-même.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Et là, surprise agréable, ce n’est pas vide. Tu t’attendais peut-être à un écran inerte en attendant de déployer des agents. Pas du tout. En mode tout-en-un, le serveur embarque un &lt;strong&gt;agent local&lt;/strong&gt;, sous l’identifiant 000, qui se surveille lui-même. Ta machine est déjà sous l’œil de ton propre SIEM, avant même d’avoir touché au reste de ton parc.&lt;/p&gt;
&lt;p&gt;Concrètement, tu as déjà des données et plusieurs modules qui tournent sur ce nœud.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;SCA&lt;/strong&gt;, pour &lt;strong&gt;Security Configuration Assessment&lt;/strong&gt;, l’audit de configuration. Il est actif par défaut, sans rien régler, et il scanne ta machine contre des référentiels de durcissement type CIS. Il te dit où ta config s’écarte des bonnes pratiques, un service de trop, une permission trop large, un réglage SSH oublié. Tu vas probablement y retrouver, validées noir sur blanc, les décisions de durcissement de l’épisode 1.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;La détection de vulnérabilités.&lt;/strong&gt; Wazuh inventorie les paquets installés sur la machine et les croise avec les bases de CVE connues. Si un de tes paquets traîne une faille publiée, il te le signale, avec la référence et la criticité. Une nuance d’honnêteté, contrairement au SCA et au FIM qui tournent seuls, le scan du nœud local ne se déclenche pas au premier démarrage. Il faut l’activer d’un réglage, passer &lt;code&gt;vulnerability-detection.disable_scan_manager&lt;/code&gt; à &lt;code&gt;0&lt;/code&gt; dans &lt;code&gt;/var/ossec/etc/internal_options.conf&lt;/code&gt; puis redémarrer le manager. Deux minutes, et ta propre machine est scannée elle aussi.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Le FIM&lt;/strong&gt;, &lt;strong&gt;File Integrity Monitoring&lt;/strong&gt;, la surveillance d’intégrité des fichiers. Il garde l’empreinte de tes fichiers sensibles et t’alerte si l’un d’eux change. Un fichier système modifié sans raison, c’est souvent le premier signe qu’on a un invité.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;L’analyse des logs locaux&lt;/strong&gt;, qui digère les journaux de la machine et les transforme en alertes lisibles.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/06/capture-04-sca-node-wazuh-tout-en-un-siem-souverain-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Résultats du scan SCA sur le nœud, benchmark CIS Ubuntu&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Et il y a les tableaux de bord de conformité, prêts à l’emploi. Wazuh livre des vues taguées &lt;strong&gt;PCI DSS, HIPAA, RGPD, NIST 800-53, TSC&lt;/strong&gt;, avec génération de rapports. Chaque alerte porte l’identifiant de conformité qu’elle touche, par exemple un tag &lt;code&gt;gdpr_IV_32&lt;/code&gt; qui renvoie à l’article 32 du RGPD sur la sécurité du traitement. C’est exactement le matériau dont tu as besoin pour le triptyque de notification qu’on a martelé à l’ouverture, détecter, journaliser, prouver.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/06/capture-05-gdpr-wazuh-tout-en-un-siem-souverain-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Tableau de bord de conformité RGPD, alertes taguées par exigence&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Une honnêteté nécessaire sur NIS2, justement. Wazuh fournit toutes les briques fonctionnelles que NIS2 réclame, monitoring continu, intégrité des fichiers, analyse de vulnérabilités, contrôle de configuration, reporting. Mais il n’existe &lt;strong&gt;pas&lt;/strong&gt; de tableau de bord NIS2 prêt à cliquer comme il en existe un pour le RGPD.&lt;/p&gt;
&lt;p&gt;Pour suivre NIS2 finement, tu construiras tes propres vues, en t’appuyant sur les tags RGPD et NIST déjà présents. Wazuh te donne l’outillage de conformité, il ne te rend pas conforme tout seul. Le calibrage des règles, le réglage de la rétention, la réponse aux alertes, ça reste du travail humain. On l’a dit dès l’ouverture, le dur n’est pas la techno, c’est l’ajustement.&lt;/p&gt;
&lt;p&gt;Pour l’instant, ton SIEM se voit lui-même. Il ne voit pas encore le reste de ton parc informatique. C’est précisément l’objet de l’épisode suivant.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;quand-le-tout-en-un-ne-suffit-plus&quot;&gt;Quand le tout-en-un ne suffit plus&lt;/h2&gt;
&lt;p&gt;Le mono-nœud n’est pas magique, et je ne vais pas te vendre l’inverse. Il a un plafond, autant que tu saches où il se situe avant de t’y cogner.&lt;/p&gt;
&lt;p&gt;La métrique qui compte, c’est l’&lt;strong&gt;EPS&lt;/strong&gt;, les événements par seconde que ta machine encaisse. Un nœud bien dimensionné, de l’ordre de 16 Go de RAM et 8 vCPU, absorbe grossièrement 5 000 événements par seconde. Pour une PME jusqu’à 50 ou 100 machines surveillées, avec des journaux d’activité normaux, tu es très loin de saturer. Le tout-en-un tient largement.&lt;/p&gt;
&lt;p&gt;Le jour où tu t’en approches, le symptôme est désagréable. Quand la file d’ingestion sature, Wazuh ne ralentit pas poliment, il &lt;strong&gt;jette les événements&lt;/strong&gt; qu’il n’a pas le temps de traiter. Et un événement jeté, c’est une alerte que tu ne verras jamais. Une caméra qui arrête d’enregistrer aux heures de pointe.&lt;/p&gt;
&lt;p&gt;À ce moment-là, tu passes en multi-nœuds, le manager d’un côté, l’indexeur de l’autre, voire plusieurs de chacun. Détail contre-intuitif mais important, Wazuh &lt;strong&gt;scale mieux horizontalement que verticalement&lt;/strong&gt;. Deux nœuds à ressources moyennes valent mieux qu’un seul gros nœud. C’est un autre chantier, hors de cette série, mais tu sais désormais que la porte existe.&lt;/p&gt;
&lt;p&gt;Pour une PME qui démarre, retiens ça, le tout-en-un est parfait pour commencer, pas conçu pour l’infini. Et entre les deux, il y a beaucoup de place.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-taurait-coûté-ailleurs&quot;&gt;Ce que ça t’aurait coûté ailleurs&lt;/h2&gt;
&lt;p&gt;On a tease ce chiffrage depuis l’ouverture de la série. Le moment est venu de le poser, pour cette brique précise.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Côté Wazuh, le coût de licence est de zéro.&lt;/strong&gt; C’est du 100 % open source, sous licence GPLv2, et il n’y a aucun palier payant. Pas de limite d’agents, pas de limite d’utilisateurs, pas de limite de logs ingérés. Ta seule dépense, c’est le VPS que tu as monté à l’épisode 1, entre 15 et 30 euros par mois selon le dimensionnement, plus ton temps d’installation et de calibrage. Et c’est tout.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Côté Splunk, la facture a une autre tête.&lt;/strong&gt; Un avertissement d’abord, Splunk ne publie pas ses tarifs officiellement, donc tout ce qui suit relève de l’ordre de grandeur reconstitué par des sources secondaires sérieuses, pas du devis officiel. Avec cette réserve, le principe est simple, tu paies au volume de logs avalé chaque jour, compté en gigaoctets par jour.&lt;/p&gt;
&lt;p&gt;Reste à traduire ça pour un parc réel, parce qu’un prix au gigaoctet ne parle à personne tant qu’on ne sait pas combien de gigaoctets une PME produit. Repère utile, avec une journalisation de sécurité raisonnable, compte autour de cinquante mégaoctets de logs par poste et par jour, soit à peu près un gigaoctet par jour pour quinze à vingt postes. De là, on peut poser des montants, licence seule, en gardant Wazuh en miroir.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;15 postes&lt;/strong&gt;, environ 1 Go de logs par jour. Splunk, de l’ordre de 2 000 à 5 000 dollars par an. Wazuh, le VPS, 180 à 360 euros par an. Point.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;50 postes&lt;/strong&gt;, environ 4 à 5 Go par jour. Splunk, de l’ordre de 8 000 à 12 500 dollars par an. Wazuh, le même VPS, à l’euro près.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;100 postes&lt;/strong&gt;, environ 8 à 10 Go par jour. Splunk, de l’ordre de 15 000 à 25 000 dollars par an. Wazuh, toujours le même VPS.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Au-delà de cent postes surveillés, on change de monde des deux côtés, cluster multi-nœuds chez Wazuh, paliers à plusieurs dizaines voire centaines de milliers de dollars chez Splunk. C’est une autre échelle, hors du périmètre de cette série pensée pour la PME.&lt;/p&gt;
&lt;p&gt;La différence n’est pas qu’une histoire de montant. C’est une histoire de &lt;strong&gt;trajectoire&lt;/strong&gt;. Chez Wazuh, ton coût d’infrastructure est plat, tu ingères plus de logs, ton VPS encaisse, ta facture ne bouge pas. Chez Splunk, le compteur tourne à chaque gigaoctet supplémentaire. Plus ton SIEM voit large et profond, plus il te coûte cher, alors que voir large et profond, c’est littéralement son métier. Tu es facturé sur la qualité même de ta surveillance.&lt;/p&gt;
&lt;p&gt;Et il y a la question qui a fondé cette série, celle de la juridiction. Tes logs, ce sont les empreintes complètes de ton réseau. Chez Wazuh, ils dorment sur ta machine, en Suisse, sous ton contrôle.&lt;/p&gt;
&lt;p&gt;Chez le SaaS américain, ils sont réquisitionnables au titre du CLOUD Act. Le prix, c’est une chose. Qui détient la donnée, c’en est une autre, et c’est celle qui compte le plus.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Tu es parti d’un coffre-fort vide, tu repars avec une console de sécurité qui tourne.&lt;/p&gt;
&lt;p&gt;Tu as installé &lt;strong&gt;les trois composants de Wazuh en une commande&lt;/strong&gt;, manager, indexeur et dashboard sur ton seul nœud. Tu as réglé &lt;strong&gt;le piège qui fait échouer la plupart des installs&lt;/strong&gt;, le heap de l’indexeur à la moitié de la RAM, bornes identiques, ce qui justifie les 12 Go recommandés à l’épisode 1.&lt;/p&gt;
&lt;p&gt;Tu as &lt;strong&gt;repris la main sur la sécurité&lt;/strong&gt;, mots de passe régénérés, certificats déjà en place, et surtout dashboard verrouillé en Tailnet-only, invisible depuis internet. Et tu as fait &lt;strong&gt;ton premier tour du propriétaire&lt;/strong&gt;, SCA, vulnérabilités, intégrité des fichiers, tableaux de bord RGPD, le tout sur ta propre machine, sans avoir déployé le moindre agent distant.&lt;/p&gt;
&lt;p&gt;Le tout pour zéro euro de licence, là où l’équivalent SaaS se compte de quelques milliers à plusieurs dizaines de milliers de dollars par an selon la taille de ton parc, avec tes journaux les plus sensibles logés sous une juridiction étrangère.&lt;/p&gt;
&lt;p&gt;Mais ton SIEM ne voit encore que lui-même. Il regarde sa propre machine, et c’est déjà précieux pour valider ton durcissement. Le vrai saut, c’est quand il commence à voir le reste, tes serveurs, tes Mac, tes postes Windows. C’est l’épisode 3, le déploiement des agents, le moment où ton SIEM commence vraiment à voir ton réseau.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;rappel-de-la-série&quot;&gt;Rappel de la série&lt;/h2&gt;
&lt;p&gt;Sept épisodes pour monter ta plomberie de sécurité souveraine, brique par brique.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;Épisode 0, le fondement de la série.&lt;/a&gt;&lt;/strong&gt; Pourquoi une PME a besoin d’un SIEM souverain, NIS2, RGPD, et le coût du statu quo.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;Épisode 1, le socle.&lt;/a&gt;&lt;/strong&gt; Le VPS durci hors CLOUD Act.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 2, Wazuh en tout-en-un.&lt;/strong&gt; Manager, indexeur et tableau de bord sur un seul nœud. Tu viens de le lire.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;Épisode 3, les agents partout.&lt;/a&gt;&lt;/strong&gt; Déploiement sur tes serveurs, Mac et Windows.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/&quot;&gt;Épisode 4, la défense réseau communautaire.&lt;/a&gt;&lt;/strong&gt; Bloquer les attaquants connus avant qu’ils n’arrivent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;Épisode 5, le filtre mail.&lt;/a&gt;&lt;/strong&gt; Anti-spam et anti-hameçonnage devant ton serveur de messagerie.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/santa-controle-execution-mac-siem-souverain/&quot;&gt;Épisode 6, le contrôle d’exécution sur les Mac.&lt;/a&gt;&lt;/strong&gt; Décider quelles applications ont le droit de démarrer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 7, alerting et coût total.&lt;/strong&gt; Notifications calibrées et bilan financier honnête face au SaaS.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>wazuh</category><category>securite</category><category>tutoriels</category><enclosure url="https://macsouverain.com/content/images/2026/06/feature-wazuh-tout-en-un-siem-souverain-1.png" length="0" type="image/png"/></item><item><title>Ton IA peut être éteinte par les US, monte la tienne</title><link>https://macsouverain.com/ton-ia-peut-etre-eteinte-monte-la-tienne/</link><guid isPermaLink="true">https://macsouverain.com/ton-ia-peut-etre-eteinte-monte-la-tienne/</guid><description>L&apos;accès aux modèles d&apos;IA de pointe devient un levier géopolitique américain. Voici ce qui tourne en local sur un Mac, de 16 à 32 Go de RAM, et pourquoi c&apos;est ça, ton vrai socle.</description><pubDate>Wed, 17 Jun 2026 13:40:54 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Mise à jour, juillet 2026.&lt;/strong&gt; Fable 5 est de nouveau accessible, la directive a été levée. Ça ne change rien à la thèse, au contraire. Coupé hier, rendu aujourd’hui, par une décision que tu ne tiens pas : c’est exactement ça, dépendre d’un diktat étranger. Ton modèle local, lui, n’a pas besoin qu’on l’autorise.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Tu ouvres ton Mac un matin. Ton outil d’IA habituel refuse de répondre. Pas un bug, pas une panne de serveur. Un message poli t’explique que l’accès n’est plus disponible dans ta région. Tu n’as rien fait de mal. Tu paies ton abonnement. Tu es parfaitement en règle. Mais tu es du mauvais côté d’une frontière, et quelqu’un à Washington a décidé que ça suffisait.&lt;/p&gt;
&lt;p&gt;Ce n’est plus de la science-fiction. En juin 2026, le gouvernement américain a ordonné à Anthropic, par une directive de contrôle à l’export, de suspendre l’accès de tout ressortissant étranger, partout dans le monde et jusqu’à ses propres employés, à ses deux modèles les plus avancés, Mythos 5 et Fable 5.&lt;/p&gt;
&lt;p&gt;Anthropic a dû les débrancher pour l’ensemble de ses clients, et conteste la décision. L’accès à l’intelligence artificielle de frontière est en train de devenir ce que sont déjà le pétrole, les puces et le dollar, &lt;strong&gt;un levier de puissance entre les mains d’un État&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Et toi, tu es au bout du tuyau dont on vient de couper le robinet.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;la-directive-comme-révélateur&quot;&gt;La directive comme révélateur&lt;/h2&gt;
&lt;p&gt;Le réflexe, en lisant ça, c’est de penser géopolitique. Grandes manœuvres, blocs qui s’affrontent, sujets pour éditorialistes. Sauf que la coupure, elle, n’arrive pas à un bloc. Elle arrive à toi, sur ta machine, un mardi matin.&lt;/p&gt;
&lt;p&gt;L’asymétrie est totale. D’un côté, un fournisseur sous juridiction américaine, soumis aux directives de son administration, libre de modifier ses conditions d’accès du jour au lendemain. De l’autre, toi, qui as construit une partie de ta façon de travailler autour de cet outil. Tu n’as aucune prise sur la décision. Tu n’es même pas la cible. Tu es un dommage collatéral d’une politique qui ne te concerne que par ta nationalité, ou ta géolocalisation.&lt;/p&gt;
&lt;p&gt;C’est le point que la directive rend enfin visible : &lt;strong&gt;l’accès à un modèle distant n’a jamais été un acquis technique, c’est une autorisation politique.&lt;/strong&gt; Tant que rien ne bouge, l’autorisation est tacite, invisible, confortable. On finit par la confondre avec un droit. Le jour où elle est retirée, on découvre qu’on ne possédait rien. On louait.&lt;/p&gt;
&lt;p&gt;Pose-toi une seule question. Si on te coupe l’accès du jour au lendemain, qu’est-ce qui continue de tourner ? Si la réponse est « plus rien », tu n’as pas un outil de travail. Tu as une dépendance.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-dépendre-dun-modèle-distant-coûte-vraiment&quot;&gt;Ce que dépendre d’un modèle distant coûte vraiment&lt;/h2&gt;
&lt;p&gt;Le modèle distant de frontière est génial. C’est vrai, et le reconnaître n’enlève rien à la suite. Il est plus puissant que tout ce que tu feras tourner chez toi à court terme. Il se met à jour sans que tu lèves le petit doigt. Il ne te demande ni RAM, ni installation, ni maintenance. Pour beaucoup d’usages, c’est l’outil le plus efficace du marché.&lt;/p&gt;
&lt;p&gt;Mais le confort a un prix, et ce prix n’apparaît pas sur la facture.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chaque requête que tu envoies à un modèle distant, c’est ton texte qui quitte ta machine&lt;/strong&gt;. Tes brouillons, tes notes, tes documents, tes raisonnements en cours. Ils transitent par une infrastructure que tu ne contrôles pas, dans une juridiction qui n’est pas la tienne, soumise à des règles que tu ne votes pas. Le chiffrement en transit protège le tuyau, pas la destination. À l’arrivée, ton texte est lu en clair par la machine qui répond.&lt;/p&gt;
&lt;p&gt;Et puis il y a la dépendance de continuité, celle dont on ne parle jamais avant qu’elle ne morde. Ton accès dépend d’un abonnement, d’une politique tarifaire, d’une décision commerciale, et maintenant d’une directive d’État. Trois leviers que tu ne tiens pas, plus un quatrième que tient un gouvernement étranger, et c’est le plus dangereux. Le jour où l’un d’eux bascule, ton workflow s’arrête. Pas progressivement. D’un coup.&lt;/p&gt;
&lt;p&gt;C’est exactement le piège qu’on décrivait pour le cloud de stockage. Tes fichiers sur le serveur de quelqu’un d’autre, c’est pratique jusqu’au jour où le compte est suspendu. L’IA distante, c’est le même contrat, appliqué à ta façon de penser et de produire.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/cloud-ordinateur-quelquun-dautre/&quot;&gt;Le cloud, c’est l’ordinateur de quelqu’un d’autre&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-réflexe-souverain-la-carte-des-modèles-locaux&quot;&gt;Le réflexe souverain, la carte des modèles locaux&lt;/h2&gt;
&lt;p&gt;Voilà la bonne nouvelle, et elle est plus solide qu’on ne le croit. Faire tourner un modèle d’IA capable, directement sur ton Mac, n’est plus un fantasme de bricoleur. La mémoire unifiée d’Apple Silicon, celle-là même qu’Apple vend pour la fluidité de ses apps, est précisément ce qui rend l’inférence locale possible sur une machine grand public.&lt;/p&gt;
&lt;p&gt;Avant la carte, une règle de budget, parce que tout part de là.&lt;/p&gt;
&lt;p&gt;Première chose, la RAM totale n’est pas la RAM disponible. macOS et tes applications en consomment une partie en permanence. Et derrière le mot « Mac », il y a deux machines très différentes.&lt;/p&gt;
&lt;p&gt;Le Mac mini d’entrée de gamme, le plus répandu, embarque &lt;strong&gt;16 Go de RAM unifiée&lt;/strong&gt;. En comptant 6 à 8 Go pour le système et tes apps, il te reste entre 8 et 10 Go réellement utiles pour l’IA, et encore, en fermant ce qui traîne.&lt;/p&gt;
&lt;p&gt;Une machine à &lt;strong&gt;32 Go&lt;/strong&gt; suit le même principe, mais te laisse une vingtaine de gigas de marge. Dans ce budget utile doivent tenir deux choses en même temps : le &lt;strong&gt;poids&lt;/strong&gt; du modèle (le modèle lui-même) et le &lt;strong&gt;contexte&lt;/strong&gt; (ce que tu lui donnes à lire et ce qu’il génère).&lt;/p&gt;
&lt;p&gt;La règle pratique : ne jamais viser un modèle qui remplit tout le budget utile. Sur 16 Go, ça veut dire un modèle de 4 à 8 Go une fois quantifié. Sur 32 Go, tu peux monter à 14, voire 20 Go. Si tu débordes, la machine bascule sur le disque comme mémoire de secours, et là, ça rame, ou alors ça plante complètement.&lt;/p&gt;
&lt;p&gt;Voici donc la carte de ce qui tourne, du plus accessible au plus gourmand.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce qu’un Mac à 16 Go fait déjà tourner.&lt;/strong&gt; C’est le socle accessible, et il couvre l’essentiel de ton volume quotidien.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour le travail léger&lt;/strong&gt;, trier des emails, classer des notes, extraire ou anonymiser un texte, de tout petits modèles de 2 à 3 Go suffisent largement : Llama 3.2 3B, Gemma 3 4B, Phi-4-mini.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour le travail général&lt;/strong&gt;, résumer un document, rédiger un brouillon, gérer ta correspondance, interroger ta propre base de notes, un modèle de 7 à 8 milliards de paramètres autour de 5 Go fait le job : Qwen2.5 7B, sous licence Apache 2.0, ou Llama 3.1 8B. C’est le cheval de trait d’un 16 Go.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour lire un PDF scanné ou une facture&lt;/strong&gt; sans l’envoyer ailleurs, Qwen2.5-VL 7B (autour de 5 Go) ou Llama 3.2 Vision 11B passent aussi. Le plafond, c’est un modèle de 12 à 14 milliards de paramètres en quantification serrée, autour de 8 à 9 Go, comme Qwen2.5 14B : il passe, mais en fermant le reste et avec un contexte court.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sur ces tâches répétitives et cadrées, le local ne se contente pas de faire le job, il le fait mieux&lt;/strong&gt; : zéro latence réseau, zéro requête facturée, et tes données ne bougent pas d’un millimètre.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que 32 Go débloque en plus.&lt;/strong&gt; Le passage à 32 Go n’est pas un luxe, c’est ce qui ouvre la catégorie au-dessus.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour la rédaction soutenue et l’analyse&lt;/strong&gt; de longs documents, Mistral Small 3, un modèle de 24 milliards de paramètres, tient autour de 14 Go en version quantifiée et il est sous licence Apache 2.0, donc vraiment libre. Gemma 3 27B tourne autour de 16 Go.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour le raisonnement multi-étapes&lt;/strong&gt;, les modèles de 32 milliards de paramètres passent en serrant un peu : QwQ 32B, DeepSeek-R1-distill 32B ou Qwen2.5 32B occupent 19 à 20 Go en quantification Q4. Le contexte devient serré, et sur les raisonnements les plus exigeants, l’écart avec un modèle de frontière reste réel. Le local fait beaucoup. Il ne fait pas encore tout.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Côté code&lt;/strong&gt;, Qwen2.5-Coder 32B atteint une quasi-parité avec les modèles distants pour la programmation du quotidien, compléter, expliquer, déboguer, refactoriser.&lt;/p&gt;
&lt;p&gt;Et ce qui ne passe ni sur 16 ni sur 32 Go. Les très gros modèles, Llama 3.3 70B, les modèles à 405 milliards de paramètres, DeepSeek-R1 en version complète, exigent 64 Go de RAM ou plus. Inutile de prétendre le contraire.&lt;/p&gt;
&lt;p&gt;Maintenant, la souveraineté ne se résume pas à la capacité brute. Deux autres axes comptent.&lt;/p&gt;
&lt;p&gt;Le premier, c’est la provenance. Mistral est français et européen, ce qui en fait le choix souverain naturel pour un lecteur européen. Llama, Gemma et Phi sont américains. Qwen et DeepSeek sont chinois.&lt;/p&gt;
&lt;p&gt;Une nuance s’impose ici, et elle est importante : comme les modèles tournent en local, &lt;strong&gt;aucune donnée ne sort de ta machine, quelle que soit l’origine du modèle.&lt;/strong&gt; La provenance ne joue donc pas sur l’exfiltration des données, elle joue sur la confiance, l’auditabilité, et sur le fait de ne pas mettre tous ses œufs dans un seul panier géopolitique.&lt;/p&gt;
&lt;p&gt;Faire tourner un modèle chinois en local n’envoie rien à Pékin. Choisir un modèle européen, c’est arbitrer sur l’écosystème qu’on soutient et sur ce qu’on peut inspecter, pas sur un risque de fuite.&lt;/p&gt;
&lt;p&gt;Le second axe, c’est &lt;strong&gt;la licence&lt;/strong&gt;. Tous les modèles « ouverts » ne se valent pas juridiquement. Mistral Small 3 et plusieurs Qwen sont sous Apache 2.0, une licence permissive qui te laisse vraiment libre, y compris pour un usage professionnel.&lt;/p&gt;
&lt;p&gt;La licence communautaire de Llama est utilisable, mais assortie de restrictions. Pour un socle souverain, la licence libre n’est pas un détail de juriste, c’est la garantie que personne ne peut changer les règles sous tes pieds.&lt;/p&gt;
&lt;p&gt;Mon pick souverain par défaut, en cohérence avec tout ça. Sur un 16 Go, un 7-8B fait déjà tourner l’essentiel : Qwen2.5 7B (Apache 2.0) en premier choix, ou Llama 3.1 8B. Sur un 32 Go, tu passes à &lt;strong&gt;Mistral Small 3&lt;/strong&gt; comme bête de somme quotidienne (européen, Apache 2.0), épaulé par un modèle de raisonnement 32B, QwQ ou DeepSeek-R1-distill, qu’on sort pour les analyses plus dures. Pour les faire tourner, trois outils suffisent : Ollama et LM Studio pour la simplicité, MLX pour qui veut exploiter au mieux Apple Silicon.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/38-apple-intelligence-ce-qui-sort-de-ton-mac/&quot;&gt;Apple Intelligence, ce qui sort vraiment de ton Mac&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-seuil-réaliste-ce-que-le-local-fait-bien&quot;&gt;Le seuil réaliste, ce que le local fait bien&lt;/h2&gt;
&lt;p&gt;Il ne s’agit pas de claquer la porte au cloud pour le plaisir. Il s’agit de savoir ce qui doit vivre chez toi, et ce qui peut, éventuellement, sortir.&lt;/p&gt;
&lt;p&gt;Le local fait très bien tout ce qui est répétitif, sensible, ou simplement quotidien. Trier, résumer, rédiger, corriger, classer, anonymiser, lire tes propres documents. Pour cette part-là de ton travail, qui est l’essentiel du volume, tu n’as besoin de personne. Ça tourne sans connexion, sans facture par requête, sans qu’une ligne de ton texte quitte ta machine.&lt;/p&gt;
&lt;p&gt;Le cloud de frontière reste gagnant pour le sommet de la pyramide, le raisonnement le plus complexe, le problème inédit où chaque point de performance compte. Mais un appoint reste un appoint. &lt;strong&gt;On n’adosse pas son travail courant à un robinet qu’un tiers peut fermer.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;La bonne posture n’est pas « tout local » ou « tout cloud ». C’est le &lt;strong&gt;cloisonnement&lt;/strong&gt;. Le local devient ta base, ce qui tourne par défaut, ce sur quoi repose ton travail courant et tout ce qui touche à des données sensibles.&lt;/p&gt;
&lt;p&gt;Le cloud devient un appoint conscient, qu’on sollicite pour un usage précis, en sachant ce qu’on lui envoie et en n’y mettant jamais ce qui ne doit pas sortir. Le jour où on te coupe l’accès cloud, tu perds un appoint. Tu ne perds pas ton socle.&lt;/p&gt;
&lt;p&gt;C’est là que l’argument boucle. Si tu lis ces lignes sur un Mac récent, tu es déjà en Apple Silicon. La mémoire unifiée qui fait tourner ces modèles, tu l’as déjà payée. Ce passage au local n’attend pas un investissement, ni une nouvelle machine, ni une compétence d’ingénieur. Il attend une décision.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La souveraineté en matière d’IA ne se mesure pas à la puissance du modèle que tu loues. Elle se mesure à ce qui continue de tourner le matin où on te coupe l’accès.&lt;/strong&gt; Le modèle distant, c’est du confort, et de la puissance quand une tâche l’exige.&lt;/p&gt;
&lt;p&gt;Ton socle IA, c’est ce qui vit sur ta machine. Installe-en un. Fais-le tourner une fois, sur une vraie tâche, pour voir. Tu sauras alors, concrètement, ce qui te reste quand on ferme le robinet.&lt;/p&gt;
&lt;p&gt;Reste la question la plus terre à terre : comment on installe tout ça, concrètement ? C’est l’objet du prochain article, étape par étape, du téléchargement au premier prompt, sans ligne de commande indigeste.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire bientôt : Installer et faire tourner ton premier modèle local sur Mac, le guide pas à pas&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sources&quot;&gt;Sources&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Le déclencheur, directive US et Anthropic&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.anthropic.com/news/fable-mythos-access&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Anthropic, Statement on the US government directive to suspend access to Fable 5 and Mythos 5&lt;/a&gt;, la déclaration officielle, Anthropic applique l’ordre d’export tout en le contestant (12 juin 2026).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://techcrunch.com/2026/06/12/anthropics-safety-warnings-may-have-just-backfired-the-government-has-pulled-the-plug-on-its-most-powerful-ai/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;TechCrunch, Anthropic’s safety warnings may have just backfired&lt;/a&gt;, le débranchement mondial de Fable 5 et Mythos 5 (12 juin 2026).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.theregister.com/ai-and-ml/2026/06/15/us-clampdown-on-anthropic-models-sends-eu-sovereignty-surge-into-overdrive/5255487&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;The Register, US clampdown on Anthropic models sends EU sovereignty surge into overdrive&lt;/a&gt;, comment la coupure accélère la bascule souveraine de l’Europe, l’angle même de cet article (15 juin 2026).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Modèles open-weight cités&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://mistral.ai/news/mistral-small-3&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Mistral AI, Mistral Small 3&lt;/a&gt;, le 24B Apache 2.0, pick souverain européen (30 janvier 2025).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://qwenlm.github.io/blog/qwen2.5/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Qwen, Qwen2.5&lt;/a&gt;, la famille Qwen2.5, variantes 7B sous Apache 2.0.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.llama.com/llama3_1/license/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Meta, Llama 3.1 Community License&lt;/a&gt;, licence permissive mais assortie de restrictions.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Exécution locale sur Apple Silicon&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://ollama.com&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Ollama&lt;/a&gt;, faire tourner des modèles en local, données qui ne quittent pas la machine.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://lmstudio.ai&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;LM Studio&lt;/a&gt;, app de bureau pour exécuter des LLM en privé, support MLX sur Mac.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/ml-explore/mlx&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Apple, MLX&lt;/a&gt;, le framework optimisé pour la mémoire unifiée d’Apple Silicon.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire/&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ia</category><category>souverainete</category><category>modele-local</category><category>macos</category><category>apple-silicon</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-ton-ia-peut-etre-eteinte-monte-la-tienne.png" length="0" type="image/png"/></item><item><title>Le socle de ton SIEM souverain, un VPS durci hors CLOUD Act</title><link>https://macsouverain.com/vps-durci-socle-siem-souverain/</link><guid isPermaLink="true">https://macsouverain.com/vps-durci-socle-siem-souverain/</guid><description>Épisode 1 de la série SIEM souverain. Un VPS européen hors CLOUD Act, SSH durci, surface d&apos;attaque réduite via Tailscale, sauvegardes chiffrées hors-site.</description><pubDate>Fri, 12 Jun 2026 06:11:45 GMT</pubDate><content:encoded>&lt;p&gt;Avant de détecter quoi que ce soit, &lt;strong&gt;il te faut un endroit où installer ton SIEM&lt;/strong&gt;. Une machine. Pas n’importe laquelle, pas configurée n’importe comment.&lt;/p&gt;
&lt;p&gt;Dans &lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;l’épisode d’ouverture&lt;/a&gt;, on a posé le pourquoi. &lt;strong&gt;RGPD t’oblige déjà à détecter une violation et à la notifier en 72 heures&lt;/strong&gt;, NIS2 a élargi le filet, et ce n’est pas fini. Le SaaS américain fait le boulot mais livre tes journaux les plus sensibles, sur simple demande administrative du gouvernement US. Tout cela est extrêmement défavorable à tes intérêts, tu en conviendras.&lt;/p&gt;
&lt;p&gt;Alors comment résoudre ce dilemme ? La conclusion est simple, tu montes ton propre SIEM, conforme RGPD et NIS2, sur une infrastructure que tu contrôles totalement.&lt;/p&gt;
&lt;p&gt;Cet article-là, c’est la première brique. Le socle.&lt;/p&gt;
&lt;p&gt;Tout le reste de la série va s’empiler dessus. Wazuh à l’épisode 2, les agents à l’épisode 3, la défense réseau, le filtre mail, le contrôle d’exécution. Si le socle est bancal, toute la pile est bancale. Un SIEM qui surveille ton parc mais qui tourne sur une machine elle-même percée, c’est une caméra de surveillance branchée sur une porte grande ouverte.&lt;/p&gt;
&lt;p&gt;Cette stack que je te recommande, je l’utilise au quotidien. Je vais te montrer comment monter ton socle, dans l’ordre, avec les commandes réelles. Tu peux le reproduire aujourd’hui.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;choisir-lhébergeur-la-juridiction-avant-le-reste&quot;&gt;Choisir l’hébergeur, la juridiction avant le reste&lt;/h2&gt;
&lt;p&gt;Première décision, et c’est la plus structurante. &lt;strong&gt;Où va vivre ta machine&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;La tentation, c’est d’aller au moins cher ou au plus connu. AWS, Google Cloud, Azure. Ils sont excellents techniquement. Et ils sont tous de nationalité américaine, donc soumis au CLOUD Act, cette magnifique loi de 2018 qui permet aux autorités US de réquisitionner les données d’un fournisseur américain, où qu’elles soient stockées dans le monde, datacenter européen compris.&lt;/p&gt;
&lt;p&gt;Mettre les journaux de sécurité de ton SI là-dedans, c’est exactement le problème qu’on essaie de résoudre depuis le départ. Pour être raccord, ce qu’on cherche, c’est donc un hébergeur dont le siège, les serveurs et le capital échappent à cette exception US.&lt;/p&gt;
&lt;p&gt;Trois critères à vraiment considérer, je te les donne.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;La juridiction du siège social.&lt;/strong&gt; Une entreprise européenne sans société mère américaine n’est pas soumise au CLOUD Act. Suisse, Allemagne, France, etc. La nuance, c’est la filiale, un hébergeur européen qui a ouvert une entité aux États-Unis expose au CLOUD Act les ressources hébergées dans cette filiale. Le siège ne suffit pas, il faut regarder où vivent physiquement tes données.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;La localisation des datacenters.&lt;/strong&gt; Tes logs doivent rester sur des serveurs européens, point. Pas de réplication transatlantique « pour ta disponibilité ».&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Le prix, en dernier.&lt;/strong&gt; Un VPS pour démarrer un SIEM PME coûte entre 5 et 25 euros par mois. À ce niveau, l’écart de prix entre les opérateurs souverains est marginal. Tu ne choisis pas ton hébergeur de sécurité au centime près.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Concrètement, deux noms reviennent quand on croise ces critères.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://www.infomaniak.com/fr/hebergement/vps-cloud&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Infomaniak&lt;/a&gt;&lt;/strong&gt;, &lt;strong&gt;hébergeur suisse&lt;/strong&gt; basé à Genève, détenu à 100 % par ses fondateurs et ses salariés, sans fonds d’investissement extérieur. Serveurs exclusivement en Suisse, sous nLPD, la loi fédérale suisse de protection des données entrée en vigueur en septembre 2023, alignée sur le RGPD et reconnue par décision d’adéquation européenne.&lt;/p&gt;
&lt;p&gt;Pas de filiale américaine, hors CLOUD Act par construction, hors 5eyes, donc sans coopération étendue avec les renseignements US. En Suisse toutes les demandes de communication doivent passer par la Justice, une des juridictions les plus protectrices au monde.&lt;/p&gt;
&lt;p&gt;Leurs datacenters sont certifiés ISO 27001 et ISO 50001. C’est l’opérateur que j’utilise, sur leur gamme VPS Cloud, mais l’entrée de gamme VPS Lite peut largement suffire pour démarrer.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://www.hetzner.com/cloud/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Hetzner&lt;/a&gt;&lt;/strong&gt;, &lt;strong&gt;hébergeur allemand&lt;/strong&gt; familial fondé en 1997, rapport performance/prix imbattable en Europe, avec une gamme cloud ARM à 4,49 euros HT par mois, environ 5,40 euros TTC, au tarif du jour où j’écris ces lignes. Excellent choix, à une condition. Hetzner a ouvert des datacenters aux États-Unis en 2021, puis à Singapour en 2023. Tu dois donc provisionner ta machine exclusivement sur leurs sites européens, Falkenstein, Nuremberg ou Helsinki, pour rester hors CLOUD Act.&lt;/p&gt;
&lt;p&gt;Deux réserves honnêtes en plus, l’interface et le support sont en anglais et en allemand uniquement, et Hetzner suspend parfois les comptes jugés à risque, sans avertissement. Rien de bloquant pour un usage SIEM légitime, mais autant le savoir.&lt;/p&gt;
&lt;p&gt;Pour ce guide, je pars sur Infomaniak. La logique est identique chez Hetzner, seuls les noms d’interface changent.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire bientôt : choisir son hébergeur souverain, le comparatif complet&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;dimensionner-la-machine-ni-trop-ni-trop-peu&quot;&gt;Dimensionner la machine, ni trop, ni trop peu&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;https://documentation.wazuh.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Wazuh&lt;/a&gt;, qu’on installera à l’épisode 2, n’est pas léger. Il embarque un manager, un indexeur de logs et un tableau de bord. L’indexeur, en particulier, aime la mémoire vive.&lt;/p&gt;
&lt;p&gt;Pour une PME jusqu’à une cinquantaine de machines surveillées, le bon point de départ tient en trois chiffres.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;4 vCPU&lt;/strong&gt;, pour absorber l’indexation et les corrélations de règles sans saturer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;8 Go de RAM&lt;/strong&gt;, le minimum sérieux pour l’indexeur Wazuh. En dessous, il rame ou s’arrête. C’est le critère qui compte le plus. &lt;strong&gt;Je recommande 12 Go&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;100 à 250 Go de SSD&lt;/strong&gt;, selon la rétention de logs que tu veux. Plus tu gardes de mois d’historique, plus il te faut d’espace. NIS2 et RGPD raisonnent en mois, prévois large.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Un VPS de ce calibre tourne autour de 15 à 30 euros par mois chez un opérateur souverain. Tu peux démarrer plus petit pour tester, mais ne descends pas sous 8 Go de RAM si tu comptes faire tourner Wazuh dessus pour de vrai.&lt;/p&gt;
&lt;p&gt;Côté système, prends une distribution Linux à support long. &lt;strong&gt;&lt;a href=&quot;https://ubuntu.com/server&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Ubuntu Server LTS&lt;/a&gt;&lt;/strong&gt; ou &lt;strong&gt;&lt;a href=&quot;https://www.debian.org/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Debian stable&lt;/a&gt;&lt;/strong&gt;. Les deux sont documentées partout, supportées des années, et c’est ce sur quoi la communauté Wazuh teste en priorité. J’utilise Ubuntu Server LTS, c’est ce que j’emploierai dans les commandes qui suivent.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-premier-contact-et-le-premier-durcissement&quot;&gt;Le premier contact, et le premier durcissement&lt;/h2&gt;
&lt;p&gt;Tu viens de commander ta machine. L’hébergeur t’envoie une adresse IP, un identifiant &lt;code&gt;root&lt;/code&gt; et un mot de passe. C’est le moment le plus exposé de toute la vie du serveur, un &lt;code&gt;root&lt;/code&gt; accessible par mot de passe sur une IP publique, c’est précisément ce que les bots scannent en permanence.&lt;/p&gt;
&lt;p&gt;Une précision avant de plonger. Un serveur, ça s’administre en ligne de commande, pas d’interface graphique ni de souris, le Terminal est ton seul cockpit. Rien d’intimidant, chaque commande de ce guide est courte et expliquée ligne à ligne.&lt;/p&gt;
&lt;p&gt;La première session de connexion sert à fermer cette porte. Dans l’ordre.&lt;/p&gt;
&lt;h3 id=&quot;créer-un-utilisateur-non-root&quot;&gt;Créer un utilisateur non-root&lt;/h3&gt;
&lt;p&gt;Travailler en &lt;code&gt;root&lt;/code&gt; au quotidien, c’est conduire sans ceinture. La moindre erreur de commande s’exécute avec les pleins pouvoirs. On crée un utilisateur dédié, à qui on donne le droit d’élever ses privilèges quand c’est nécessaire, via &lt;code&gt;sudo&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;adduser&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; mack&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;usermod&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -aG&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; mack&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le premier &lt;code&gt;adduser&lt;/code&gt; crée le compte et demande un mot de passe. Le second l’ajoute au groupe &lt;code&gt;sudo&lt;/code&gt;, ce qui l’autorise à exécuter des commandes administrateur en les préfixant de &lt;code&gt;sudo&lt;/code&gt;. À partir de maintenant, tu te connectes avec ce compte, plus jamais en &lt;code&gt;root&lt;/code&gt; directement.&lt;/p&gt;
&lt;h3 id=&quot;passer-à-lauthentification-par-clé&quot;&gt;Passer à l’authentification par clé&lt;/h3&gt;
&lt;p&gt;Un mot de passe se devine, se force par dictionnaire, se vole. Une clé cryptographique, non. On génère une paire de clés sur ta machine locale, on installe la partie publique sur le serveur, et on désactive complètement la connexion par mot de passe.&lt;/p&gt;
&lt;p&gt;Sur ton Mac, dans le Terminal :&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;ssh-keygen&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -t&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ed25519&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -C&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; &quot;ton-commentaire&quot;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;ssh-copy-id&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; mack@IP_DU_SERVEUR&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;La première commande crée la paire de clés, en Ed25519, l’algorithme moderne, court et solide. La seconde copie ta clé publique dans le serveur. Teste ensuite que tu te connectes bien sans mot de passe, &lt;code&gt;ssh mack@IP_DU_SERVEUR&lt;/code&gt;. Si ça marche, on peut couper le reste.&lt;/p&gt;
&lt;h3 id=&quot;verrouiller-ssh&quot;&gt;Verrouiller SSH&lt;/h3&gt;
&lt;p&gt;C’est ici que la surface d’attaque se referme vraiment. On édite la configuration du démon SSH.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; nano&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /etc/ssh/sshd_config&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Trois lignes à fixer, ce sont les trois qui comptent.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;plaintext&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;PermitRootLogin no&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;PasswordAuthentication no&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;PubkeyAuthentication yes&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;code&gt;PermitRootLogin no&lt;/code&gt; interdit toute connexion directe en &lt;code&gt;root&lt;/code&gt;. &lt;code&gt;PasswordAuthentication no&lt;/code&gt; désactive les mots de passe, seule ta clé ouvre la porte désormais. &lt;code&gt;PubkeyAuthentication yes&lt;/code&gt; confirme qu’on accepte les clés.&lt;/p&gt;
&lt;p&gt;Garde ta session actuelle ouverte, redémarre le service, puis teste une nouvelle connexion dans une seconde fenêtre. Une erreur de configuration SSH, et tu te retrouves verrouillé hors de ta propre machine.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; systemctl&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; restart&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ssh&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Un piège connu des images cloud, Ubuntu y dépose souvent un fichier &lt;code&gt;/etc/ssh/sshd_config.d/50-cloud-init.conf&lt;/code&gt; contenant &lt;code&gt;PasswordAuthentication yes&lt;/code&gt;, qui écrase ta configuration. Vérifie la valeur réellement appliquée avec &lt;code&gt;sudo sshd -T | grep -i passwordauthentication&lt;/code&gt;, et si elle ressort à &lt;code&gt;yes&lt;/code&gt;, corrige ce fichier-là aussi.&lt;/p&gt;
&lt;p&gt;Trois commandes, trois lignes de config. Tu viens d’éliminer la quasi-totalité des attaques automatisées qui visent SSH. Les bots qui tentent &lt;code&gt;root&lt;/code&gt; par mot de passe frappent maintenant contre un mur.&lt;/p&gt;
&lt;h3 id=&quot;activer-les-mises-à-jour-de-sécurité-automatiques&quot;&gt;Activer les mises à jour de sécurité automatiques&lt;/h3&gt;
&lt;p&gt;Un serveur qu’on n’a pas patché est un serveur vulnérable, et personne ne se connecte tous les matins pour lancer les mises à jour à la main. On automatise les correctifs de sécurité.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; update&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; &amp;#x26;&amp;#x26; &lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; install&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; unattended-upgrades&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; dpkg-reconfigure&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --priority=low&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; unattended-upgrades&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Le paquet &lt;a href=&quot;https://wiki.debian.org/UnattendedUpgrades&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;code&gt;unattended-upgrades&lt;/code&gt;&lt;/a&gt; installe automatiquement les correctifs de sécurité publiés pour ta distribution, sans toucher au reste. Tes failles connues se referment toutes seules, pendant que tu dors.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;la-surface-dattaque-minimale-le-vrai-sujet-souverain&quot;&gt;La surface d’attaque minimale, le vrai sujet souverain&lt;/h2&gt;
&lt;p&gt;Le durcissement SSH, c’est le b.a.-ba. Le saut de niveau, il est ici.&lt;/p&gt;
&lt;p&gt;Le principe directeur tient en une phrase. &lt;strong&gt;Un port qui n’écoute pas ne peut pas être attaqué.&lt;/strong&gt; Chaque service exposé sur une IP publique est une porte, et chaque porte est une cible. La sécurité maximale, ce n’est pas le meilleur cadenas sur chaque porte, c’est de ne pas avoir de porte du tout.&lt;/p&gt;
&lt;p&gt;C’est exactement la logique qu’on a vue pour &lt;a href=&quot;https://macsouverain.com/apple-silicon-et-securite-ce-que-secure-enclave-change-vraiment/&quot;&gt;la Secure Enclave&lt;/a&gt;. Le composant le plus sûr est celui qui refuse de donner accès, pas celui qui le défend bien.&lt;/p&gt;
&lt;h3 id=&quot;le-pare-feu-fermer-par-défaut&quot;&gt;Le pare-feu, fermer par défaut&lt;/h3&gt;
&lt;p&gt;Sur Ubuntu, le pare-feu se gère avec &lt;a href=&quot;https://documentation.ubuntu.com/server/how-to/security/firewalls/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;code&gt;ufw&lt;/code&gt;&lt;/a&gt;. La bonne posture, c’est l’inversion, on bloque tout, puis on ouvre seulement ce qui doit l’être.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; default&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; deny&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; incoming&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; default&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; allow&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; outgoing&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; allow&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; 22/tcp&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; enable&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;code&gt;default deny incoming&lt;/code&gt; refuse par principe toute connexion entrante. &lt;code&gt;default allow outgoing&lt;/code&gt; laisse ta machine joindre l’extérieur, pour les mises à jour notamment. On n’ouvre que le port 22, SSH, le strict nécessaire pour administrer la machine. Et on active.&lt;/p&gt;
&lt;p&gt;À ce stade, &lt;strong&gt;ton serveur ne présente plus qu’une seule porte SSH par clé&lt;/strong&gt;. C’est déjà un profil radicalement plus discret que 90 % des VPS en production.&lt;/p&gt;
&lt;h3 id=&quot;tailscale-et-lip-publique-disparaît&quot;&gt;Tailscale, et l’IP publique disparaît&lt;/h3&gt;
&lt;p&gt;On peut faire mieux. Bien mieux. Plutôt que d’ouvrir SSH sur l’IP publique, même par clé, on le retire complètement de la vue d’internet et on l’expose uniquement sur un réseau privé chiffré.&lt;/p&gt;
&lt;p&gt;C’est le rôle de &lt;strong&gt;&lt;a href=&quot;https://tailscale.com/kb/1017/install&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Tailscale&lt;/a&gt;&lt;/strong&gt;. Tailscale crée un &lt;a href=&quot;https://tailscale.com/blog/how-tailscale-works&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;maillage privé&lt;/a&gt; entre tes appareils, par-dessus &lt;a href=&quot;https://www.wireguard.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;WireGuard&lt;/a&gt;, le protocole de tunnel moderne. Tes machines se voient entre elles via des adresses privées, comme si elles étaient sur le même réseau local, alors qu’elles sont éparpillées entre un datacenter suisse, ton bureau et chez toi. Le reste d’internet, lui, ne voit rien.&lt;/p&gt;
&lt;p&gt;Voici le flux concret. Tu installes Tailscale sur le serveur et sur ton Mac. Les deux rejoignent ton réseau privé. Ton Mac obtient une adresse Tailscale, le serveur aussi. Tu te connectes en SSH au serveur via son adresse Tailscale, pas via son IP publique. Et tu refermes le port 22 sur l’IP publique. Désormais, pour atteindre SSH, il faut déjà être membre de ton réseau privé. Un attaquant sur internet ne voit même plus que le port existe.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;curl&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -fsSL&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; https://tailscale.com/install.sh&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; |&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; sh&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tailscale&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; up&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;La commande affiche un lien, tu l’ouvres dans ton navigateur, tu authentifies la machine, elle rejoint ton réseau. Répète sur ton Mac. Récupère l’adresse Tailscale du serveur :&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;tailscale&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ip&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -4&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Teste la connexion SSH via cette adresse privée. Une fois que ça marche, on referme le port 22 public :&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; delete&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; allow&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; 22/tcp&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; ufw&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; allow&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; in&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; on&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tailscale0&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; to&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; any&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; port&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; 22&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; proto&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tcp&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;La première ligne retire l’ouverture de SSH sur toutes les interfaces. La seconde le rouvre uniquement sur l’interface &lt;code&gt;tailscale0&lt;/code&gt;, ton réseau privé. SSH n’écoute plus que sur le maillage chiffré.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le résultat, c’est une machine dont la seule porte d’administration est invisible depuis internet&lt;/strong&gt;. Pas verrouillée, invisible. Un scan de ports sur ton IP publique ne révèle rien d’exploitable.&lt;/p&gt;
&lt;p&gt;Pour la suite de la série, c’est aussi par ce maillage que tes agents Wazuh remonteront leurs logs vers le serveur, sans jamais transiter par l’internet ouvert. Le socle réseau qu’on pose aujourd’hui sert toute la pile.&lt;/p&gt;
&lt;h3 id=&quot;et-les-services-qui-doivent-rester-publics&quot;&gt;Et les services qui doivent rester publics ?&lt;/h3&gt;
&lt;p&gt;Tout ne peut pas vivre derrière le réseau privé. Si ton serveur héberge un site web ou un service qui doit être joignable par n’importe qui, ce service-là doit écouter sur l’IP publique. C’est inévitable.&lt;/p&gt;
&lt;p&gt;La règle, alors, n’est pas « zéro port public » mais « zéro port public &lt;strong&gt;inutile&lt;/strong&gt; ». Tu ouvres exactement ce que le service exige, ni plus. Un site web, c’est le port 443 en HTTPS, et le port 80 le temps de renouveler les certificats. Rien d’autre. Tout le reste, administration, bases de données, tableaux de bord internes, reste sur Tailscale.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour notre socle SIEM,&lt;/strong&gt; à ce stade, la bonne réponse est simple. &lt;strong&gt;Aucun service public&lt;/strong&gt;. Le serveur n’expose rien au monde. Wazuh, qu’on installera ensuite, vit entièrement derrière Tailscale, accessible à toi seul.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-sauvegardes-chiffrées-hors-site&quot;&gt;Les sauvegardes, chiffrées hors-site&lt;/h2&gt;
&lt;p&gt;Un serveur durci n’est pas un serveur immortel. Un datacenter peut prendre feu, on l’a vu avec OVH Strasbourg en mars 2021, des clients sans sauvegarde ont tout perdu. Un ransomware peut malgré tout passer sur une de tes machines de prod. Un doigt qui glisse sur une mauvaise commande peut effacer une base.&lt;/p&gt;
&lt;p&gt;La règle est non négociable. &lt;strong&gt;Tes sauvegardes vivent ailleurs que sur la machine qu’elles protègent, et elles sont chiffrées avant de partir.&lt;/strong&gt; Chiffrées par toi, sur ta machine, avant l’envoi. Pas chiffrées par le fournisseur de stockage, par toi. Comme ça, même l’hébergeur du backup ne peut pas lire ce qu’il stocke.&lt;/p&gt;
&lt;p&gt;L’outil que j’utilise, c’est &lt;strong&gt;&lt;a href=&quot;https://kopia.io/docs/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Kopia&lt;/a&gt;&lt;/strong&gt;. Open source, rapide, et il fait exactement ce qu’on veut, chiffrement côté client avant transfert, déduplication pour ne pas exploser ton volume de stockage, et envoi vers un stockage compatible S3.&lt;/p&gt;
&lt;p&gt;Et le stockage hors-site, je le prends chez &lt;strong&gt;&lt;a href=&quot;https://www.infomaniak.com/fr/swiss-backup&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Swiss Backup&lt;/a&gt;&lt;/strong&gt;, l’offre de sauvegarde d’Infomaniak. Même logique de souveraineté que pour le VPS, serveurs suisses, hors CLOUD Act, et un endpoint S3 standard que Kopia consomme directement.&lt;/p&gt;
&lt;p&gt;Le flux, concrètement. Kopia tourne sur ton serveur. Une fois par jour, ou plusieurs, il prend un instantané des dossiers qui comptent, ta configuration système, tes données Wazuh, tes logs.&lt;/p&gt;
&lt;p&gt;Il chiffre cet instantané localement, avec une clé que toi seul détiens. Puis il l’envoie chez Swiss Backup. Le jour où le serveur meurt, tu provisionnes une nouvelle machine, tu réinstalles Kopia, tu pointes vers le dépôt distant avec ta clé, et tu restaures.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;curl&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -s&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; https://kopia.io/signing-key&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; |&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; gpg&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; --dearmor&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -o&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /usr/share/keyrings/kopia-keyring.gpg&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;echo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; &quot;deb [signed-by=/usr/share/keyrings/kopia-keyring.gpg] http://packages.kopia.io/apt/ stable main&quot;&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; |&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; tee&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /etc/apt/sources.list.d/kopia.list&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; update&lt;/span&gt;&lt;span style=&quot;color:#24292E&quot;&gt; &amp;#x26;&amp;#x26; &lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; apt&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; install&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; kopia&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;kopia&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; repository&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; create&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; s3&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; \&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;  --bucket=TON_BUCKET&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; \&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;  --endpoint=s3.swiss-backup.infomaniak.com&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; \&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;  --access-key=TA_CLE&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; \&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#005CC5&quot;&gt;  --secret-access-key=TON_SECRET&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Les trois premières lignes installent Kopia depuis son dépôt officiel. La dernière commande crée le dépôt chiffré sur le stockage distant, en reprenant l’endpoint exact affiché dans ta console Swiss Backup, il varie selon le cluster qui t’est attribué. Kopia te demande une phrase de passe au moment de la création, c’est la clé de chiffrement de tout ton dépôt. &lt;strong&gt;Note-la ailleurs que sur le serveur.&lt;/strong&gt; Si tu la perds, tes sauvegardes sont définitivement illisibles, y compris pour toi. C’est le prix du chiffrement côté client, et c’est exactement ce qu’on veut.&lt;/p&gt;
&lt;p&gt;Reste à automatiser. On crée un instantané quotidien des dossiers critiques, puis on planifie le tout avec une tâche &lt;code&gt;cron&lt;/code&gt;.&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;kopia&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; snapshot&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; create&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /etc&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /home&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /var/log&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Cette commande capture l’instant présent des trois dossiers. Tu la planifies pour qu’elle s’exécute chaque nuit, et tu vérifies de temps en temps que tes instantanés sont bien là avec &lt;code&gt;kopia snapshot list&lt;/code&gt;. Une sauvegarde qu’on ne teste jamais n’est pas une sauvegarde, c’est un espoir. Il faudra donc prévoir trimestriellement une restauration test de tes données.&lt;/p&gt;
&lt;p&gt;Ce socle de sauvegarde servira tout le reste de la série. Chaque brique qu’on ajoutera, Wazuh et ses données, les règles que tu calibreras, sera capturée dans le même instantané chiffré, hors-site, le jour où tu en auras besoin.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Le socle, c’est quatre gestes qui se tiennent.&lt;/p&gt;
&lt;p&gt;Tu as choisi &lt;strong&gt;un hébergeur dont la juridiction te protège&lt;/strong&gt;, pas seulement dont le datacenter est en Europe. &lt;strong&gt;Tu as durci l’accès&lt;/strong&gt;, utilisateur non-root, clé à la place du mot de passe, &lt;code&gt;root&lt;/code&gt; interdit, correctifs automatiques. &lt;strong&gt;Tu as réduit la surface d’attaque à rien&lt;/strong&gt;, pare-feu fermé par défaut, administration repliée derrière un réseau privé chiffré, plus aucune porte inutile face à internet. Et &lt;strong&gt;tu as posé des sauvegardes chiffrées hors-site&lt;/strong&gt;, illisibles pour quiconque n’a pas ta clé, prêtes pour le jour où.&lt;/p&gt;
&lt;p&gt;Aucune de ces étapes n’est compliquée. Prises &lt;strong&gt;ensemble, elles transforment une machine de location en un coffre-fort que tu contrôles&lt;/strong&gt;. C’est l’inverse exact de ce que tu signes chez un SaaS américain, où la donnée est à toi mais l’infrastructure et la juridiction sont à un autre.&lt;/p&gt;
&lt;p&gt;Un après-midi de travail. Pas un week-end.&lt;/p&gt;
&lt;p&gt;Le socle est en place. À l’épisode 2, on remplit le coffre. Wazuh en mode tout-en-un, le manager, l’indexeur et le tableau de bord sur ce seul nœud. L’équivalent fonctionnel d’un Splunk, pour le prix du VPS que tu viens de monter. Ton SIEM commence à exister.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;rappel-de-la-série&quot;&gt;Rappel de la série&lt;/h2&gt;
&lt;p&gt;Sept épisodes pour monter ta plomberie de sécurité souveraine, brique par brique.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/&quot;&gt;Épisode 0, le fondement de la série.&lt;/a&gt;&lt;/strong&gt; Pourquoi une PME a besoin d’un SIEM souverain, NIS2, RGPD, et le coût du statu quo.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 1, le socle.&lt;/strong&gt; Le VPS durci hors CLOUD Act. Tu viens de le lire.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;Épisode 2, Wazuh en tout-en-un.&lt;/a&gt;&lt;/strong&gt; Manager, indexeur et tableau de bord sur un seul nœud.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;Épisode 3, les agents partout.&lt;/a&gt;&lt;/strong&gt; Déploiement sur tes serveurs, Mac et Windows.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/&quot;&gt;Épisode 4, la défense réseau communautaire.&lt;/a&gt;&lt;/strong&gt; Bloquer les attaquants connus avant qu’ils n’arrivent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;Épisode 5, le filtre mail.&lt;/a&gt;&lt;/strong&gt; Anti-spam et anti-hameçonnage devant ton serveur de messagerie.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/santa-controle-execution-mac-siem-souverain/&quot;&gt;Épisode 6, le contrôle d’exécution sur les Mac.&lt;/a&gt;&lt;/strong&gt; Décider quelles applications ont le droit de démarrer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Épisode 7, alerting et coût total.&lt;/strong&gt; Notifications calibrées et bilan financier honnête face au SaaS.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>vps</category><category>securite</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/06/feature-vps-durci-socle-siem-souverain-1.png" length="0" type="image/png"/></item><item><title>Monte ton SIEM PME souverain, conformité RGPD/NIS2 sans CLOUD Act</title><link>https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/</link><guid isPermaLink="true">https://macsouverain.com/nis2-splunk-pourquoi-pme-siem-souverain/</guid><description>RGPD t&apos;oblige déjà à détecter une violation en 72 h. NIS2 vient d&apos;élargir le filet × 30. Monter ton SIEM aujourd&apos;hui, c&apos;est la sécu maintenant et la conformité amortie avant qu&apos;elle te tombe dessus.</description><pubDate>Fri, 05 Jun 2026 12:00:56 GMT</pubDate><content:encoded>&lt;p&gt;Tu n’as pas de SIEM. Tu te dis que ce n’est pas pour toi, que ta PME est trop petite ou hors secteur régulé, donc sous le radar des grandes obligations cyber. Tu te trompes sur deux temps.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Maintenant, RGPD.&lt;/strong&gt; Depuis 2018, toute entreprise qui traite des données personnelles doit notifier la CNIL d’une violation sous &lt;strong&gt;72 heures&lt;/strong&gt;. C’est l’article 33. Pas une recommandation, une obligation. Notifier en 72 heures, ça veut dire que tu sais qu’il s’est produit quelque chose, que tu peux le caractériser, que tu disposes des journaux pour remonter la chaîne. Sans un système qui centralise tes logs et lève des alertes, cette obligation est inapplicable. Tu es en infraction la première fois qu’un ransomware passe.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Demain, l’élargissement.&lt;/strong&gt; NIS2 vient de multiplier par trente le nombre d’entités françaises soumises à des obligations cyber renforcées, de 500 à environ 15 000. DORA est applicable depuis janvier 2025 pour le secteur financier élargi, sous-traitants compris. Le Cyber Resilience Act s’applique pleinement à partir de décembre 2027 à tout produit avec composant numérique vendu en UE. NIS3 n’est pas votée, le calendrier indicatif vise la fin 2027. Mais la trajectoire est lisible, tous les deux à trois ans le filet s’élargit. Parier que ta PME restera hors champ en 2028 ou 2029, c’est parier contre Bruxelles et contre la jurisprudence RGPD qui n’a cessé de durcir.&lt;/p&gt;
&lt;p&gt;Le mot qui revient dans tous ces textes, c’est SIEM, pour &lt;strong&gt;Security Information and Event Management&lt;/strong&gt;, gestion centralisée des événements de sécurité. Ils ne le nomment jamais, mais ils te le rendent impossible à éviter. Détecter un incident, conserver des journaux exploitables, notifier le régulateur dans des délais courts, ce sont les fonctions d’un SIEM.&lt;/p&gt;
&lt;p&gt;Et c’est quoi, concrètement, un SIEM ? Imagine la vidéosurveillance de ton magasin, mais pour ton informatique. Chaque serveur, chaque pare-feu, chaque poste de travail, chaque boîte mail produit en permanence un journal de ce qui s’y passe. Qui s’est connecté, à quelle heure, depuis où, quel fichier a été ouvert, quel processus a démarré.&lt;/p&gt;
&lt;p&gt;Un SIEM, c’est le système qui ramène tous ces journaux au même endroit, les conserve plusieurs mois, et lève une alerte quand il détecte un comportement suspect.&lt;/p&gt;
&lt;p&gt;Un compte qui se connecte à 3 heures du matin depuis le Pakistan, dix mille fichiers chiffrés en deux minutes, une rafale d’échecs de mot de passe sur le compte du dirigeant, ce sont des signaux qu’un humain ne verra jamais à l’œil nu sur un parc de cinquante machines.&lt;/p&gt;
&lt;p&gt;Le SIEM les voit, les recoupe, et te prévient. Derrière ce sigle de consultant se cache un assemblage très concret, qu’on démonte plus loin dans cet article.&lt;/p&gt;
&lt;p&gt;Le problème, c’est ce qu’on te vend aujourd’hui sous ce nom. &lt;a href=&quot;https://www.splunk.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;Splunk&lt;/strong&gt;&lt;/a&gt;, &lt;a href=&quot;https://learn.microsoft.com/azure/sentinel/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;Microsoft Sentinel&lt;/strong&gt;&lt;/a&gt;, &lt;a href=&quot;https://www.crowdstrike.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;CrowdStrike&lt;/strong&gt;&lt;/a&gt;. Sur le ticket d’entrée d’une PME modeste, les tarifs paraissent accessibles, mais la facture grimpe avec chaque gigaoctet et chaque poste, on fait les comptes complets en fin de série. Et le prix n’est même pas le pire. Ces produits stockent tes journaux d’incident dans une juridiction qui n’est pas la tienne, sous CLOUD Act. La vraie question, c’est qui détient tes données les plus sensibles.&lt;/p&gt;
&lt;p&gt;Il existe un troisième chemin. Le souverain. C’est celui de cette série d’articles.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;nis2-en-cinq-minutes-et-pourquoi-ça-te-concerne-même-hors-périmètre&quot;&gt;NIS2 en cinq minutes, et pourquoi ça te concerne même hors périmètre&lt;/h2&gt;
&lt;p&gt;NIS2, c’est la directive européenne sur la sécurité des réseaux et des systèmes d’information, qui remplace NIS1. NIS1 concernait environ 500 entités françaises. NIS2 en concerne &lt;strong&gt;autour de 15 000&lt;/strong&gt;, réparties sur dix-huit secteurs. La santé, l’énergie, les transports, le numérique, les services financiers, l’agroalimentaire, les déchets, la fabrication. Si ton entreprise dépasse &lt;strong&gt;50 salariés ou 10 millions d’euros de chiffre d’affaires&lt;/strong&gt; dans l’un de ces secteurs, tu es directement concerné. Probablement comme « entité importante », parfois comme « entité essentielle » selon ta taille et ta criticité.&lt;/p&gt;
&lt;p&gt;Si tu es plus petit ou hors secteur listé, tu n’es pas pour autant tranquille. &lt;strong&gt;Deux mécanismes te rattrapent.&lt;/strong&gt; D’abord la chaîne d’approvisionnement, l’article 21 oblige les entités NIS2 à évaluer la cyber-résilience de leurs sous-traitants. Si tu vends du service ou du logiciel à une PME de 60 personnes dans la santé ou la finance, elle va te demander tes preuves. Pas de SIEM, pas de contrat. Ensuite la trajectoire réglementaire elle-même, NIS3 est en préparation à la Commission, le périmètre s’élargit toujours d’une révision à l’autre.&lt;/p&gt;
&lt;p&gt;Le cœur du dispositif, c’est &lt;strong&gt;l’article 21&lt;/strong&gt;. Dix catégories de mesures minimales, analyse des risques, gestion des incidents, journalisation, continuité, formation, chiffrement, contrôle d’accès, sécurité de la chaîne d’approvisionnement. Et l’obligation de notification, en trois temps, &lt;strong&gt;alerte précoce sous 24 heures, notification structurée sous 72 heures, rapport final sous 30 jours&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Le triptyque vaut pour NIS2 comme pour RGPD, sans socle de détection et de journalisation, l’obligation est inapplicable.&lt;/p&gt;
&lt;p&gt;L’article 20 ajoute le détail qui change tout pour le dirigeant. &lt;strong&gt;La responsabilité pèse sur la personne physique qui dirige.&lt;/strong&gt; Pas sur le DSI, ni sur le prestataire. Sur toi.&lt;/p&gt;
&lt;p&gt;Côté sanctions, c’est calibré pour faire mal. Entité essentielle, jusqu’à &lt;strong&gt;10 millions d’euros ou 2 % du chiffre d’affaires mondial&lt;/strong&gt;, le plus élevé des deux. Entité importante, jusqu’à 7 millions d’euros ou 1,4 % du CA mondial. Pour une PME à 30 millions de CA, on parle d’une sanction maximale de plusieurs centaines de milliers d’euros.&lt;/p&gt;
&lt;p&gt;La loi du 30 avril 2025 transpose NIS2 en droit français. Les décrets d’application et le périmètre exact des entités concernées se précisent au fil de 2026. Tant que c’est flou tu te dis que tu as le temps, mais la directive s’applique déjà, la jurisprudence va se construire sur les premiers contentieux. La question est quand, pas si.&lt;/p&gt;
&lt;p&gt;On a déjà vu dans &lt;a href=&quot;https://macsouverain.com/nis2-csar-contradiction-ue-chiffrement-surveillance/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;un article précédent&lt;/a&gt; comment NIS2 contredit CSAR sur le chiffrement. Ici, on regarde l’autre obligation, celle qui devient concrète pour ton infrastructure, &lt;strong&gt;détecter, journaliser, notifier&lt;/strong&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;tu-as-trois-options-et-deux-dentre-elles-sont-mauvaises&quot;&gt;Tu as trois options, et deux d’entre elles sont mauvaises&lt;/h2&gt;
&lt;h3 id=&quot;option-1-le-saas-américain&quot;&gt;Option 1, le SaaS américain&lt;/h3&gt;
&lt;p&gt;Splunk, Microsoft Sentinel, CrowdStrike, &lt;a href=&quot;https://www.datadoghq.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Datadog&lt;/a&gt;, &lt;a href=&quot;https://www.elastic.co/cloud&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Elastic Cloud&lt;/a&gt;. Ils marchent. Ils sont matures. Et sur le prix d’entrée d’une PME modeste, ils ne sont pas hors de portée. Le piège est ailleurs.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Microsoft Sentinel&lt;/strong&gt; facture autour de &lt;strong&gt;4,30 dollars du gigaoctet ingéré&lt;/strong&gt; en région East US, dans le modèle de facturation simplifié qui combine ingestion Log Analytics et analyse Sentinel. &lt;strong&gt;CrowdStrike Falcon&lt;/strong&gt; facture par endpoint, entre &lt;strong&gt;60 et 185 dollars par poste et par an&lt;/strong&gt; selon le niveau, Go, Pro, Enterprise ou Complete. &lt;strong&gt;Splunk&lt;/strong&gt; est plus opaque, l’éditeur ne publie pas ses tarifs, mais les sources secondaires sérieuses convergent autour de &lt;strong&gt;8 000 à 12 500 dollars par an&lt;/strong&gt; pour un ticket d’entrée de 5 gigaoctets de logs par jour, licence seule, en Cloud ou en Enterprise auto-hébergé.&lt;/p&gt;
&lt;p&gt;Prenons une PME de 50 employés qui génère cinq gigaoctets de logs par jour. Sur Microsoft Sentinel, environ &lt;strong&gt;7 800 dollars par an&lt;/strong&gt;. Sur CrowdStrike Falcon Pro pour 50 endpoints, environ &lt;strong&gt;5 000 dollars par an&lt;/strong&gt;. Sur Splunk Cloud à l’entrée, environ &lt;strong&gt;8 000 dollars par an&lt;/strong&gt;. Soyons honnêtes, &lt;strong&gt;13 000 dollars par an pour Sentinel et CrowdStrike combinés, sur une PME à 10 millions de CA, c’est 0,13 % du chiffre d’affaires&lt;/strong&gt;. Le coût d’entrée n’est pas l’obstacle.&lt;/p&gt;
&lt;p&gt;L’obstacle, c’est ce que tu signes en même temps. &lt;strong&gt;Tes logs partent aux États-Unis&lt;/strong&gt;, ou chez une filiale européenne d’une société américaine. Le &lt;strong&gt;CLOUD Act&lt;/strong&gt;, voté en 2018, permet aux autorités américaines de réquisitionner ces données auprès du fournisseur, même stockées physiquement en Europe. Microsoft Irlande, Splunk Cloud, CrowdStrike, tous y sont soumis via leur société mère.&lt;/p&gt;
&lt;p&gt;Et tes logs d’incident, ce ne sont pas n’importe quelles données. Ce sont &lt;strong&gt;les empreintes complètes de ton réseau&lt;/strong&gt;, les noms d’utilisateurs, les flux applicatifs, les comportements internes, les vulnérabilités exposées au moment de l’attaque. Le matériau le plus sensible que produit ton SI. Le confier à un fournisseur réquisitionnable par une juridiction étrangère, c’est un risque opérationnel réel.&lt;/p&gt;
&lt;p&gt;Le &lt;strong&gt;Data Privacy Framework&lt;/strong&gt;, le pont juridique UE-US, a survécu en première instance devant le Tribunal de l’UE en septembre 2025. Il est &lt;strong&gt;en appel devant la CJUE depuis le 31 octobre 2025&lt;/strong&gt;. La CNIL, dans sa décision de février 2025 sur l’hébergement de santé, est nette, &lt;em&gt;le seul marqueur reconnu pour matérialiser un cloud souverain reste la qualification SecNumCloud&lt;/em&gt;. Aucun des trois SaaS cités ne l’a.&lt;/p&gt;
&lt;p&gt;Un dernier point. Le coût d’entrée raisonnable, c’est aujourd’hui. La mécanique de facturation s’aggrave avec ta croissance. Chaque gigaoctet ingéré en plus est facturé, chaque endpoint additionnel aussi. À 50 gigaoctets de logs par jour, le ticket Sentinel passe au-dessus de &lt;strong&gt;78 000 dollars par an&lt;/strong&gt;, Splunk grimpe en proportion selon le mode de licence. Tu signes un prix d’entrée modeste, tu signes en même temps un verrou tarifaire qui se referme au fur et à mesure que ton SIEM voit plus large et plus profond.&lt;/p&gt;
&lt;p&gt;Conclusion, tu paies un prix raisonnable pour la plomberie aujourd’hui, en livrant la donnée la plus stratégique de ton SI dans une juridiction qui n’est pas la tienne, dans un cadre légal défavorable, avec un compteur qui tourne contre toi à chaque extension de périmètre.&lt;/p&gt;
&lt;h3 id=&quot;option-2-ne-rien-faire&quot;&gt;Option 2, ne rien faire&lt;/h3&gt;
&lt;p&gt;C’est tentant. C’est la stratégie la plus répandue chez les PME, qu’elles soient ou non dans le périmètre NIS2. Attendre. Voir. Espérer.&lt;/p&gt;
&lt;p&gt;Le calcul est mauvais sur trois plans. &lt;strong&gt;RGPD aujourd’hui&lt;/strong&gt;, la CNIL a déjà sanctionné des PME pour défaut de notification, l’absence de moyen de détection est aggravante. &lt;strong&gt;NIS2 demain&lt;/strong&gt; si tu y entres par chaîne d’approvisionnement ou par révision, la sanction maximale pour une entité essentielle dépasse celle du RGPD, &lt;strong&gt;la responsabilité personnelle du dirigeant&lt;/strong&gt; existe noir sur blanc. &lt;strong&gt;Ransomware n’importe quand&lt;/strong&gt;, chiffrement de la production, rançon, perte d’exploitation, c’est un autre ordre de grandeur que la mise en conformité.&lt;/p&gt;
&lt;p&gt;Ne rien faire, ce n’est pas économiser. C’est repousser, en risquant d’aggraver la facture finale.&lt;/p&gt;
&lt;h3 id=&quot;option-3-le-souverain-auto-hébergé&quot;&gt;Option 3, le souverain auto-hébergé&lt;/h3&gt;
&lt;p&gt;Tu construis ton SIEM avec des briques open source matures, déployées sur une infrastructure que tu contrôles. Quatre briques, quatre rôles complémentaires.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://wazuh.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;Wazuh&lt;/strong&gt;&lt;/a&gt;, c’est le cerveau du dispositif, la plateforme centrale qui ramène tous les journaux au même endroit, les stocke, les analyse et lève les alertes. C’est ton « Splunk maison ».&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.crowdsec.net/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;CrowdSec&lt;/strong&gt;&lt;/a&gt;, c’est le videur à l’entrée. Une défense réseau communautaire qui bloque automatiquement les adresses IP déjà repérées comme attaquantes par les autres utilisateurs du réseau. Quand un bot scanne mille sites avant le tien, il est blacklisté avant d’arriver chez toi.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rspamd.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;Rspamd&lt;/strong&gt;&lt;/a&gt;, c’est le filtre devant ton serveur mail. Il intercepte spams et tentatives d’hameçonnage avant qu’ils n’atteignent les boîtes de tes salariés. Le mail reste le vecteur n°1 des intrusions PME, c’est là que la prévention paie le plus.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://northpole.security/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;strong&gt;Santa&lt;/strong&gt;&lt;/a&gt;, c’est le contrôleur d’exécution sur tes Mac. Il décide quelles applications ont le droit de démarrer sur chaque poste, selon une liste blanche que tu construis. Un ransomware téléchargé par erreur ne peut pas s’exécuter, parce qu’il n’est pas signé par un éditeur que tu as approuvé. C’est la brique qui transforme un Mac d’usage courant en poste durci, sans que l’utilisateur n’ait à changer ses habitudes.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Aucune de ces briques n’est expérimentale. Wazuh est utilisé par des entreprises du Fortune 100. CrowdSec, société française fondée en 2019, agrège 10 millions de signaux par jour, partagés par plus de 70 000 utilisateurs dans 190 pays. Rspamd équipe Mailcow, Zimbra, Mailu, qui font référence. Santa, développé à l’origine chez Google et maintenu désormais par North Pole Security, tourne en production chez Figma.&lt;/p&gt;
&lt;p&gt;Le coût, c’est un VPS correctement dimensionné, le temps d’installation, et une compétence interne que tu construis. Pas zéro, mais sans commune mesure avec les chiffres précédents.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-quest-vraiment-un-siem-pour-quelquun-qui-ne-fait-pas-de-blue-team&quot;&gt;Ce qu’est vraiment un SIEM, pour quelqu’un qui ne fait pas de blue team&lt;/h2&gt;
&lt;p&gt;Le mot fait peur. Il sent les écrans noirs, les équipes 24/7 et les analystes qui parlent un dialecte que ton DSI ne comprend pas. Une fois démythifié, c’est plus simple.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Un SIEM, c’est de la plomberie.&lt;/strong&gt; Pas un produit, un assemblage. Quatre fonctions qui s’enchaînent :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Collecter&lt;/strong&gt; les journaux de tes équipements, serveurs, pare-feu, postes de travail, applications, boîtes mail. Tout ce qui produit un log, tu le ramènes au même endroit.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Centraliser et conserver&lt;/strong&gt; ces journaux dans un format exploitable, avec une rétention qui te permet d’enquêter sur un incident remontant à plusieurs mois.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Détecter&lt;/strong&gt; les comportements anormaux. Un compte qui se connecte à 3 heures du matin depuis un pays inhabituel, une rafale d’échecs d’authentification, un processus qui modifie 10 000 fichiers en une minute.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Alerter&lt;/strong&gt; et garder la trace, pour ta notification ANSSI sous 24 heures, et pour ton rapport final sous 30 jours.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;C’est tout. Aucune magie. Un système qui voit, qui se souvient, et qui crie quand quelque chose cloche.&lt;/p&gt;
&lt;p&gt;Le travail dur n’est pas la technologie, c’est l’ajustement. Quelles règles tu actives, quels seuils tu calibres, à qui tu envoies l’alerte, comment tu réponds. C’est la même chose sur Splunk ou sur Wazuh. Et c’est cette compétence interne que tu vas construire dans cette série.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Monter ton SIEM en 2026 te paie sur deux horizons.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Court terme, c’est de la sécu opérationnelle.&lt;/strong&gt; Un ransomware détecté en heures au lieu de semaines, une exfiltration interceptée avant la rançon, une violation RGPD que tu peux caractériser et notifier dans les délais. Ce ROI-là ne dépend d’aucun texte qui n’est pas encore voté, il est immédiat.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Moyen terme, c’est de la conformité amortie.&lt;/strong&gt; Tu construis l’infrastructure et la compétence interne &lt;em&gt;avant&lt;/em&gt; que l’obligation te tombe sur ta tête. Tes concurrents la monteront sous contrainte, dans l’urgence, à trois fois le prix d’un consultant en mission flash. Tu auras pris cinq ans d’avance sur eux pour le prix de quelques week-ends étalés sur un trimestre.&lt;/p&gt;
&lt;p&gt;Le SaaS US fait le boulot et n’est pas hors de prix sur le ticket d’entrée. Il livre juste tes données les plus stratégiques dans une juridiction défavorable, et te verrouille dans un modèle où chaque gigaoctet de plus est facturé. L’auto-hébergé demande un investissement initial en temps. Au bout, tu es maître de la donnée, du coût marginal et du calendrier de mise en conformité. La souveraineté réelle contre un peu de ton temps, que l’on va veiller à optimiser lors de nos articles.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sept-épisodes-pour-monter-ta-plomberie&quot;&gt;Sept épisodes pour monter ta plomberie&lt;/h2&gt;
&lt;p&gt;C’est la stack que j’utilise en production. Pas un fantasme de blogueur, une infrastructure qui tourne au quotidien, qui détecte, qui journalise, qui notifie. Sept épisodes, sept briques :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/vps-durci-socle-siem-souverain/&quot;&gt;Épisode 1, le socle.&lt;/a&gt;&lt;/strong&gt; Un VPS durci, sur un hébergeur européen hors emprise américaine. Choix de l’opérateur, configuration de base, surface d’attaque minimale, sauvegardes chiffrées hors-site.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-tout-en-un-siem-souverain/&quot;&gt;Épisode 2, Wazuh en mode tout-en-un.&lt;/a&gt;&lt;/strong&gt; Installation du manager, de l’indexeur, du dashboard sur un seul nœud. Durcissement, premiers tableaux de bord. L’équivalent fonctionnel d’un Splunk pour le prix d’un VPS.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/wazuh-agents-parc-siem-souverain/&quot;&gt;Épisode 3, les agents partout.&lt;/a&gt;&lt;/strong&gt; Déploiement des agents Wazuh sur tes serveurs, Mac et Windows. Collecte des logs système, des événements de sécurité, des activités fichiers. Le moment où ton SIEM commence à voir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/crowdsec-premiere-ligne-siem-souverain/&quot;&gt;Épisode 4, CrowdSec en première ligne.&lt;/a&gt;&lt;/strong&gt; La défense réseau communautaire qui bloque les attaquants connus avant qu’ils n’atteignent tes services. Intégration Wazuh, partage des signaux.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/rspamd-mail-siem-souverain/&quot;&gt;Épisode 5, Rspamd pour le mail.&lt;/a&gt;&lt;/strong&gt; Le filtre anti-spam et anti-phishing qui se branche devant ton serveur mail, ou s’intègre à ta solution existante. Détection d’hameçonnage, journalisation dans Wazuh.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/santa-controle-execution-mac-siem-souverain/&quot;&gt;Épisode 6, Santa sur les Mac.&lt;/a&gt;&lt;/strong&gt; Contrôle d’exécution sur les postes Apple. Fork North Pole Security, le projet activement maintenu depuis que Google a passé la main en 2024. Lockdown progressif, intégration Wazuh.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://macsouverain.com/alerting-cout-total-siem-souverain/&quot;&gt;Épisode 7, alerting et coût total.&lt;/a&gt;&lt;/strong&gt; Notifications calibrées, escalade, bilan financier honnête, comparaison épisode par épisode avec ce qu’aurait coûté l’équivalent SaaS.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Les liens s’allument au fil des publications, reviens te brancher sur les nouveaux épisodes dès qu’ils sortent.&lt;/p&gt;
&lt;p&gt;Chaque épisode est autonome. Tu peux t’arrêter au 3 et avoir déjà couvert l’essentiel de NIS2. Tu peux pousser jusqu’au 7 et avoir une stack qui n’a rien à envier à celles des grandes entreprises.&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>ms-pro</category><category>nis2</category><category>siem</category><category>securite</category><category>tutoriel</category><enclosure url="https://macsouverain.com/content/images/2026/06/feature-nis2-splunk-pourquoi-pme-siem-souverain-1.png" length="0" type="image/png"/></item><item><title>Apple Intelligence : ce qui sort vraiment de ton Mac</title><link>https://macsouverain.com/38-apple-intelligence-ce-qui-sort-de-ton-mac/</link><guid isPermaLink="true">https://macsouverain.com/38-apple-intelligence-ce-qui-sort-de-ton-mac/</guid><description>Ton Mac a basculé Apple Intelligence sur ON sans te prévenir. Trois couches de traitement, une seule reste chez toi. Et le piège du compte OpenAI lié, lui, personne ne te le dit.</description><pubDate>Thu, 28 May 2026 07:48:57 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Mise à jour du 21 juin 2026.&lt;/strong&gt; Depuis le 8 juin 2026, PCC ne tourne plus seulement sur du silicium Apple : pour les requêtes les plus lourdes (agentic, raisonnement complexe), Apple bascule sur du matériel Google Cloud, GPU NVIDIA, CPU Intel et puce Titan. Apple jure que les cinq garanties tiennent, qu’il garde le contrôle logiciel et que Google ne voit rien en clair. Sans doute. Mais l’argument grand public « tout reste chez Apple » vient de tomber : c’est désormais aussi du fer Google, sous garanties Apple.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Tu as mis à jour ton Mac. Tu as accepté les CGU sans lire (comme tout le monde). Quelques semaines plus tard, tu réalises que le toggle « Apple Intelligence » est sur ON, alors que tu l’avais coupé. Ce n’est pas une hallucination : depuis macOS 15.3 sorti le 27 janvier 2025, &lt;strong&gt;Apple Intelligence est passé d’opt-in à opt-out.&lt;/strong&gt; Et une partie des utilisateurs qui l’avaient désactivé l’ont retrouvée réactivée après 15.3.1, bug confirmé par MacRumors et 9to5Mac, inconsistant d’un appareil à l’autre. Pas une règle systémique, mais assez fréquent pour que tu vérifies après chaque update.&lt;/p&gt;
&lt;p&gt;C’est le moment de comprendre ce qui se passe quand tu cliques « Summarize » sur un mail un peu long. Parce qu’entre ton Neural Engine et un data center californien, il y a trois couches de traitement. &lt;strong&gt;Une seule reste vraiment chez toi.&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pourquoi-cette-question-nest-pas-anodine&quot;&gt;Pourquoi cette question n’est pas anodine&lt;/h2&gt;
&lt;p&gt;Apple vend Apple Intelligence comme une IA « privacy-first ». Le slogan est partout sur le site produit : aware of your personal information without collecting your personal information. C’est techniquement vrai pour une partie du périmètre, et techniquement faux pour le reste.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Une IA générative, par construction, a besoin de calcul.&lt;/strong&gt; Quand le modèle qui tourne sur ton Mac ne suffit plus, la requête sort. Soit vers des serveurs Apple, soit vers ceux d’OpenAI. Dans les deux cas, &lt;strong&gt;ton texte quitte ta machine.&lt;/strong&gt; La question n’est pas de savoir si ça sort. C’est de savoir où, sous quelles garanties, et comment Apple t’en informe (spoiler : mal).&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;couche-1--le-modèle-local-ce-qui-reste-vraiment-chez-toi&quot;&gt;Couche 1 : le modèle local, ce qui reste vraiment chez toi&lt;/h2&gt;
&lt;p&gt;Sur Apple Silicon (M1 et plus), Apple fait tourner un modèle fondation d’environ 3,18 milliards de paramètres. Quantifié 2 bits par poids via Quantization-Aware-Training, footprint mémoire d’environ 1 Go, KV-cache partagé qui économise 37,5 % de RAM. Le calcul se fait sur le Neural Engine, le GPU et le CPU de la puce, jamais sur un serveur.&lt;/p&gt;
&lt;p&gt;Concrètement, voilà ce qui reste 100 % local :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Writing Tools&lt;/strong&gt; version courte : Proofread, Rewrite, Summarize sur des textes courts&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Smart Reply&lt;/strong&gt; dans Mail et Messages&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Résumés de notifications&lt;/strong&gt; et Priority Notifications&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Résumés Mail courts&lt;/strong&gt; dans la liste de la boîte de réception&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Genmoji&lt;/strong&gt; (génération d’emoji custom)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Image Playground&lt;/strong&gt; (Animation, Illustration, Sketch)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Image Wand&lt;/strong&gt; dans Notes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Siri basique&lt;/strong&gt; (compréhension, type-to-Siri)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Clean Up Photos&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pour ces usages, &lt;strong&gt;ton texte ne quitte pas l’Apple Silicon.&lt;/strong&gt; Aucun log, aucun serveur, aucune télémétrie de contenu. C’est le périmètre honnête de la promesse Apple, et il est réel.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le problème commence quand tu demandes autre chose.&lt;/strong&gt; Long résumé d’un thread Mail de 80 messages, Composition d’un texte généré, raisonnement Siri multi-étapes : &lt;strong&gt;ton Mac sait qu’il ne tiendra pas la charge. Il bascule.&lt;/strong&gt; Et Apple n’affiche aucun voyant pour te le signaler.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;couche-2--private-cloud-compute-lenclave-californienne&quot;&gt;Couche 2 : Private Cloud Compute, l’enclave californienne&lt;/h2&gt;
&lt;p&gt;C’est l’angle marketing fort d’Apple. PCC tourne sur du custom-silicon Apple dans leurs data centers, avec cinq garanties techniques mises en avant dans la doc Security Research :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Stateless computation&lt;/strong&gt; : ton texte est utilisé pour répondre, jamais conservé après la requête.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enforceable guarantees&lt;/strong&gt; : les protections sont techniquement appliquées, pas contractuellement promises. Un admin Apple ne peut pas désactiver le mécanisme.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No privileged runtime access&lt;/strong&gt; : pas de shell distant, pas de debug interactif. Apple ne peut pas extraire tes données, même volontairement.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Non-targetability&lt;/strong&gt; : un attaquant ne peut pas router ta requête vers un nœud compromis spécifique. La diffusion des requêtes vers les nœuds est aléatoire et attestée.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Verifiable transparency&lt;/strong&gt; : chaque build de production publié dans un log cryptographiquement append-only, images binaires disponibles pour inspection externe pendant 90 jours.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Apple a poussé son code serveur PCC sur GitHub, ouvert un environnement de recherche aux chercheurs externes, et mis sur la table un bug bounty d’un million de dollars. C’est, à ce jour, la stack cloud IA la plus auditable du marché.&lt;/p&gt;
&lt;p&gt;Maintenant les nuances, parce qu’il y en a.&lt;/p&gt;
&lt;p&gt;Trail of Bits, dans son analyse du 14 juin 2024, rappelle un point que le marketing Apple efface volontiers : &lt;em&gt;« the data is decrypted on Apple’s server »&lt;/em&gt;. &lt;strong&gt;PCC n’est pas du chiffrement homomorphe&lt;/strong&gt; (la techno qui ferait calculer un modèle sur des données chiffrées sans jamais les déchiffrer). C’est une enclave durcie, signée, attestée, mais &lt;strong&gt;ton texte est bien déchiffré côté Apple&lt;/strong&gt; le temps du calcul. La sécurité repose sur l’intégrité de l’enclave et la signature des binaires, pas sur une magie cryptographique. Apple est honnête là-dessus dans la doc technique. Le slogan grand public, lui, laisse penser le contraire.&lt;/p&gt;
&lt;p&gt;Deuxième nuance, plus inconfortable. Matthew Green, cryptographe à Johns Hopkins, sur Mastodon en juin 2024 : &lt;em&gt;« Apple does not have explicit plans to announce when your data is going off-device for Private Compute, and you won’t opt into this or necessarily even be told it’s happening »&lt;/em&gt;. Traduction : &lt;strong&gt;tu ne sais jamais si le résumé de ton mail est resté sur ton M2&lt;/strong&gt; ou s’il a fait un aller-retour en Californie. &lt;strong&gt;Aucun indicateur visuel, aucune notification&lt;/strong&gt;, aucun journal côté utilisateur. La transparence d’Apple est cryptographiquement vérifiable mais visuellement invisible.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;couche-3--chatgpt-lopt-in-et-son-piège&quot;&gt;Couche 3 : ChatGPT, l’opt-in et son piège&lt;/h2&gt;
&lt;p&gt;ChatGPT est greffé sur Apple Intelligence depuis macOS 15.2. Désactivé par défaut, activable explicitement dans &lt;code&gt;Apple Intelligence &amp;#x26; Siri → Extensions → ChatGPT&lt;/code&gt;. Quand tu l’actives, Apple ajoute deux protections par-dessus le contrat OpenAI standard :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ton IP est masquée&lt;/strong&gt; par le relai Apple (verbatim Apple Legal : &lt;em&gt;« your IP address is obscured from ChatGPT »&lt;/em&gt;). Une localisation approximée passe, pour la conformité légale et l’anti-fraude.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No-logs et no-training&lt;/strong&gt; côté OpenAI, &lt;em&gt;à condition que tu n’aies pas lié ton compte OpenAI&lt;/em&gt;. Apple Legal : OpenAI &lt;em&gt;« must process your information solely for the purpose of fulfilling your request », « not store your information », « must not use your information to improve or train its models »&lt;/em&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Lis bien la conditionnelle. &lt;strong&gt;Si tu lies &lt;em&gt;n’importe quel&lt;/em&gt; compte OpenAI&lt;/strong&gt; (gratuit, Plus, Pro, Team) pour récupérer ton historique ou accéder à GPT-5, &lt;strong&gt;tu sors immédiatement du contrat Apple&lt;/strong&gt; et tu retombes sous les CGU standard d’OpenAI. Logs, historique de conversation, entraînement potentiel, le tout sous juridiction US. Apple le mentionne dans le texte legal, en petit, après trois paragraphes. La majorité des utilisateurs lient leur compte sans réaliser qu’ils viennent de désactiver la protection qui les a fait choisir Apple.&lt;/p&gt;
&lt;p&gt;Deuxième détail. &lt;strong&gt;Le toggle « Confirm ChatGPT Requests » est sur ON par défaut&lt;/strong&gt; : Siri te demande validation avant d’envoyer le texte. Tu peux le couper. Mais surtout, si tu commences ta requête vocale par « Ask ChatGPT… », la confirmation est court-circuitée. C’est un raccourci documenté côté Apple, qui contourne le seul garde-fou visible du dispositif. Photos et fichiers gardent la confirmation, eux, dans tous les cas.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-quatre-toggles-à-vérifier&quot;&gt;Les quatre toggles à vérifier&lt;/h2&gt;
&lt;p&gt;Quatre chemins à connaître sur Sequoia 15.x et Tahoe 26. Les intitulés anglais sont garantis (testés par Apple Support sur Mac US), les français sont les libellés que tu verras vraisemblablement, à confirmer sur ton Mac.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Le master Apple Intelligence&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;System Settings → Apple Intelligence &amp;#x26; Siri&lt;/code&gt; (toggle en haut du panneau).&lt;br&gt;
État par défaut depuis macOS 15.3 : &lt;strong&gt;ON&lt;/strong&gt; sur les Mac compatibles. Cas documentés de réactivation sur 15.3.1 (bug, pas design). Rare ensuite, mais revérifie après chaque update. À couper si tu ne veux rien, vraiment rien.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/06/capture-02-apple-intelligence-master-prepub-38-apple-intelligence-ce-qui-sort-de-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Réglages Système, panneau Apple Intelligence et Siri, toggle master Apple Intelligence&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;2. ChatGPT master&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;System Settings → Apple Intelligence &amp;#x26; Siri → Extensions → ChatGPT → Use ChatGPT&lt;/code&gt;.&lt;br&gt;
État par défaut : OFF. Active uniquement si tu en veux, et surtout : ne lie pas ton compte OpenAI.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Confirm ChatGPT Requests&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;System Settings → Apple Intelligence &amp;#x26; Siri → Extensions → ChatGPT → Confirm ChatGPT Requests&lt;/code&gt;.&lt;br&gt;
État par défaut : ON. Laisse-le. La friction de confirmation est ton seul indicateur visuel qu’une requête part hors de ton Mac.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Improve Siri &amp;#x26; Dictation&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;System Settings → Privacy &amp;#x26; Security → Analytics &amp;#x26; Improvements → Improve Siri &amp;#x26; Dictation&lt;/code&gt;.&lt;br&gt;
État par défaut : OFF. Vérifie qu’il est resté à OFF. C’est lui qui décide si Apple stocke des extraits audio de tes interactions Siri pour relecture humaine. Identifiant aléatoire, rotation pluri-horaire, pas de lien Apple ID, ils insistent. Tu choisis de leur faire confiance ou pas.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/06/capture-03-improve-siri-dictation-prepub-38-apple-intelligence-ce-qui-sort-de-to-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Réglages Système, Analyse et améliorations, toggle Améliorer Siri et la dictée&quot;&gt;
&lt;/figure&gt;
&lt;hr&gt;
&lt;h2 id=&quot;apple-microsoft-google--qui-fait-quoi&quot;&gt;Apple, Microsoft, Google : qui fait quoi&lt;/h2&gt;
&lt;p&gt;Cinq critères qui comptent pour quelqu’un qui se pose la question de la souveraineté. Verdict acteur par acteur.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Apple Intelligence.&lt;/strong&gt; Local par défaut, oui : modèle 3 B on-device, bascule PCC explicite pour les requêtes lourdes. Attestation cryptographique publique, oui : transparency log, environnement de recherche dédié (VRE), code serveur publié sur GitHub. Opt-in cloud, mi-figue mi-raisin : PCC implicite et invisible, ChatGPT explicite et confirmé à chaque requête. LLM tiers intégré, OpenAI ChatGPT, opt-in, OFF par défaut, no-logs tant que tu ne lies pas ton compte. Juridiction serveurs, USA, data centers Apple custom-silicon.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Microsoft Copilot+ / Recall.&lt;/strong&gt; Local par défaut, partiel : Recall fait ses snapshots en local et ne les envoie jamais au cloud, Copilot général tourne dans Azure. Attestation publique, non : chiffrement VBS local plus TPM, pas d’audit serveur opposable. Opt-in cloud, dépend de la feature : Recall purement local, Copilot général cloud par design, l’utilisateur ne distingue pas toujours laquelle déclenche quoi. LLM tiers intégré, Azure OpenAI GPT-4, intégration commerciale sans opt-in séparé. Juridiction serveurs, USA plus régions Azure globales.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Google Gemini.&lt;/strong&gt; Local par défaut, non : cloud Google par défaut, Gemini Nano local existe mais reste limité aux Pixel haut de gamme. Attestation publique, non. Opt-in cloud, c’est l’inverse, cloud par défaut, opt-out partiel via Activity, et tu perds des features au passage. LLM tiers intégré, aucun, stack Google verrouillée. Juridiction serveurs, EEE/Suisse via Google Ireland pour les comptes EU, reste du monde via Google LLC (USA).&lt;/p&gt;
&lt;p&gt;Une lecture rapide : sur ce dossier précis, Apple fait mieux. Recall version 2025 est solide en local mais reste un vecteur d’attaque sur shared device (Kevin Beaumont l’a documenté en boucle). Gemini conserve un sous-ensemble des chats jusqu’à trois ans pour relecture humaine, même quand tu coupes l’activité. Apple est le seul à publier son code serveur et à payer un million de dollars à qui le casse.&lt;/p&gt;
&lt;p&gt;Apple a dépensé un million de dollars à se faire casser. Les autres ont dépensé un million de dollars en spots TV. Ça ne fait pas de PCC une E2EE. Ça en fait l’option cloud IA la moins opaque du marché en 2026.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-verdict-mack&quot;&gt;Le verdict Mack&lt;/h2&gt;
&lt;p&gt;Apple a construit l’architecture IA cloud la plus auditable du marché grand public. C’est un fait. Trail of Bits, Matthew Green et Schneier le reconnaissent, chacun à sa manière, tout en pointant ce qui cloche.&lt;/p&gt;
&lt;p&gt;Ce qui cloche, c’est trois décisions UX qui trahissent &lt;strong&gt;une intention marketing supérieure à l’intention privacy&lt;/strong&gt; : l’opt-out par défaut depuis 15.3, l’absence totale d’indicateur visuel quand une requête bascule en PCC, et le piège silencieux du compte OpenAI lié. Aucun de ces trois points n’est un bug. &lt;strong&gt;Ce sont des choix.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Ce que tu peux raisonnablement faire : couper le master si tu n’as pas l’usage, garder le toggle de confirmation ChatGPT sur ON si tu l’utilises, &lt;strong&gt;ne jamais lier ton compte OpenAI&lt;/strong&gt;, vérifier Improve Siri &amp;#x26; Dictation après chaque update majeure. C’est cinq minutes de réglages, à refaire deux ou trois fois par an.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;À lire aussi : &lt;a href=&quot;https://macsouverain.com/cloud-ordinateur-quelquun-dautre&quot;&gt;Le cloud, c’est l’ordinateur de quelqu’un d’autre&lt;/a&gt;, &lt;a href=&quot;https://macsouverain.com/privacy-macos-les-parametres-a-changer-immediatement&quot;&gt;Privacy macOS : les paramètres à changer immédiatement&lt;/a&gt; et &lt;a href=&quot;https://macsouverain.com/convergence-libertes-numeriques&quot;&gt;Convergence des libertés numériques&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sources&quot;&gt;Sources&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Apple, sources primaires&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://machinelearning.apple.com/research/introducing-apple-foundation-models&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Apple Machine Learning Research, Introducing Apple’s On-Device and Server Foundation Models&lt;/a&gt;, publication officielle des spécifications du modèle on-device (10 juin 2024).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://machinelearning.apple.com/research/apple-foundation-models-tech-report-2025&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Apple Machine Learning Research, Foundation Models Tech Report 2025&lt;/a&gt; et &lt;a href=&quot;https://arxiv.org/abs/2507.13575&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;arXiv 2507.13575&lt;/a&gt;, détails techniques 2-bit QAT, PT-MoE, 15 langues (17 juillet 2025).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://security.apple.com/blog/private-cloud-compute/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Apple Security Research, Private Cloud Compute : A new frontier for AI privacy in the cloud&lt;/a&gt; et &lt;a href=&quot;https://security.apple.com/blog/pcc-security-research/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Security research on PCC&lt;/a&gt;, la doc PCC complète et le bug bounty.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.apple.com/legal/privacy/data/en/chatgpt-extension/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Apple Legal, ChatGPT Extension and Privacy&lt;/a&gt; et &lt;a href=&quot;https://support.apple.com/guide/mac-help/use-chatgpt-with-apple-intelligence-mchlfc5cf131/mac&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Apple Support, Use ChatGPT with Apple Intelligence on Mac&lt;/a&gt;, source de référence pour l’IP masking et le no-logs conditionnel.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Analyses indépendantes&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://blog.trailofbits.com/2024/06/14/pcc-bold-step-forward-not-without-flaws/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Trail of Bits, PCC : a bold step forward, not without flaws&lt;/a&gt;, cabinet de sécurité reconnu, l’analyse technique la plus citée sur les limites de PCC (« data decrypted on Apple’s server »).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://threadreaderapp.com/thread/1800291897245835616.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Matthew Green, thread Mastodon/X sur PCC&lt;/a&gt;, cryptographe à Johns Hopkins University, sur l’absence d’indicateur visuel quand une requête bascule en PCC.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://doublepulsar.com/microsoft-recall-on-copilot-pc-testing-the-security-and-privacy-implications-ddb296093b6c&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Kevin Beaumont (DoublePulsar), Microsoft Recall privacy implications&lt;/a&gt;, expert sécurité Windows, sur les risques résiduels de Recall version 2025.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.macrumors.com/2025/01/21/macos-sequoia-15-3-apple-intelligence-opt-out/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;MacRumors, macOS 15.3 enables Apple Intelligence automatically&lt;/a&gt;, couverture du basculement opt-in vers opt-out (21 janvier 2025).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://ironcorelabs.com/blog/2024/apple-chatgpt-privacy-issues/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;IronCore Labs, Privacy Guide to Apple Intelligence with ChatGPT&lt;/a&gt;, pour le piège du compte OpenAI lié.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Comparatif IA concurrents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://support.microsoft.com/en-us/windows/privacy-and-control-over-your-recall-experience-d404f672-7647-41e5-886c-a3c59680af15&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Microsoft Support, Privacy and control over your Recall experience&lt;/a&gt;, la doc officielle de Recall après relance avril 2025.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://support.google.com/gemini/answer/13594961?hl=en&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Google Gemini Apps Privacy Hub&lt;/a&gt;, la doc Google sur la rétention, l’activité et la relecture humaine.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>apple-intelligence</category><category>confidentialite</category><category>apple</category><category>ia</category><enclosure url="https://macsouverain.com/content/images/2026/06/feature-38-apple-intelligence-ce-qui-sort-de-ton-mac-1.png" length="0" type="image/png"/></item><item><title>Ton Mac a été patché par XProtect à ton insu, c&apos;est pour ton bien</title><link>https://macsouverain.com/ton-mac-patche-a-ton-insu-xprotect/</link><guid isPermaLink="true">https://macsouverain.com/ton-mac-patche-a-ton-insu-xprotect/</guid><description>Le 11 mai 2026, 170 paquets npm de l&apos;écosystème TanStack sont vérolés en six minutes. Le lendemain, Apple pousse une signature XProtect sur ton Mac sans te le dire. Voici comment vérifier.</description><pubDate>Tue, 19 May 2026 07:25:30 GMT</pubDate><content:encoded>&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ août 2026.&lt;/strong&gt; Le 5 août, Apple a poussé XProtect 5354 avec un fichier inédit, AppProtectionPolicy.plist, qui liste les Team ID et Signing ID autorisés pour les apps tierces sensibles (messagerie chiffrée, navigateurs, portefeuilles crypto), plus une règle Yara visant MACOS.NEFARIOUSNAPKIN. La version citée plus bas, 5344 du 12 mai, n’est plus la dernière.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Pendant que tu dormais, le 11 mai en début de soirée, &lt;strong&gt;170 paquets logiciels&lt;/strong&gt; que la moitié du web utilise sont devenus malveillants en six minutes. Le lendemain, Apple a poussé une signature &lt;strong&gt;XProtect&lt;/strong&gt; sur ton Mac, sans rien te dire.&lt;/p&gt;
&lt;p&gt;Les deux événements sont liés, probablement. Cependant, tu ne le sauras jamais vraiment. L’épisode a un nom, &lt;strong&gt;TanStack&lt;/strong&gt;. Le mécanisme qui a peut-être réagi sur ton Mac s’appelle &lt;strong&gt;XProtect&lt;/strong&gt;. Tu n’as rien vu passer, moi non plus. Apple s’en assure.&lt;/p&gt;
&lt;p&gt;Bienvenue dans le système de défense silencieux de ton Mac.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;lincident-tanstack-en-30-secondes&quot;&gt;L’incident TanStack en 30 secondes&lt;/h2&gt;
&lt;p&gt;Le 11 mai 2026 au soir, l’écosystème &lt;strong&gt;TanStack&lt;/strong&gt;, un kit d’outils JavaScript ultra-populaire utilisé par des millions de développeurs (dont ceux d’OpenAI, Netflix, Shopify), se fait piéger. En six minutes, &lt;strong&gt;170 paquets&lt;/strong&gt; sortent en version vérolée. Le plus visible, &lt;code&gt;react-router&lt;/code&gt;, est téléchargé &lt;strong&gt;12 millions de fois par semaine&lt;/strong&gt;. Autant dire : une partie significative du web qui se met à jour cette semaine récupère du code piégé sans le savoir.&lt;/p&gt;
&lt;p&gt;Le malware s’appelle &lt;strong&gt;Mini Shai-Hulud&lt;/strong&gt;, variante du worm npm qui sévit depuis 2024. Sa cible, c’est ce qui traîne sur le Mac du développeur : mots de passe, clés d’accès cloud, jetons GitHub, fichiers de session. Sur macOS, il s’installe en planque dans un coin du système qui le relance à chaque ouverture de session. Discret, propre, professionnel.&lt;/p&gt;
&lt;p&gt;Le détail qui inquiète vraiment, c’est le vecteur. L’attaquant n’a pas volé de mot de passe, ni exploité de faille dans le code. Il a juste &lt;strong&gt;soumis une fausse contribution&lt;/strong&gt; au projet open source TanStack, en exploitant une configuration imprudente du système d’automatisation.&lt;/p&gt;
&lt;p&gt;Toute contribution était exécutée avec les vrais droits de publication officiels. Une contribution piégée (pull request) a suffi pour récupérer le jeton de signature et publier 170 paquets sous l’identité légitime du projet. Du côté de npm, tout paraissait normal, signé, vérifié. Tamponné par TanStack lui-même.&lt;/p&gt;
&lt;p&gt;OpenAI a été touché par ricochet, via une de ses dépendances. Officiellement, &lt;strong&gt;aucune preuve de compromission de produits ou de données utilisateur&lt;/strong&gt;. Mais la boîte a quand même &lt;strong&gt;rotaté toutes ses clés de signature applicative&lt;/strong&gt; sur macOS, iOS, Windows, Android, et republie l’intégralité de ses apps sous nouveaux certificats.&lt;/p&gt;
&lt;p&gt;Inutile de te dire que tu ne fais pas ça quand tout va bien.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Apple a réagi le lendemain&lt;/strong&gt;. Sans communiqué, sans notification, sans onglet dans Réglages. &lt;strong&gt;Une signature XProtect a été poussée silencieusement&lt;/strong&gt;. Les Macs l’ont récupérée au fil des heures, chacun son tour, sans prévenir personne.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;xprotect-lantivirus-muet-dapple&quot;&gt;XProtect, l’antivirus muet d’Apple&lt;/h2&gt;
&lt;p&gt;XProtect, c’est l’antivirus intégré de macOS. Il est là depuis Snow Leopard, et la plupart des utilisateurs ignorent jusqu’à son existence. C’est voulu.&lt;/p&gt;
&lt;p&gt;Le système fonctionne en deux briques. La première, c’est le &lt;strong&gt;moteur de signatures&lt;/strong&gt; : un fichier que macOS consulte avant d’exécuter une app téléchargée pour vérifier qu’elle ne correspond pas à un malware connu. La deuxième, c’est &lt;strong&gt;XProtect Remediator — XPR —&lt;/strong&gt;, un scanner qui tourne en tâche de fond et inspecte ton disque à la recherche de menaces déjà installées. Quand il en trouve une, il la neutralise.&lt;/p&gt;
&lt;p&gt;Les signatures sont poussées par Apple via &lt;strong&gt;CloudKit&lt;/strong&gt;, le même tuyau silencieux qui synchronise tes photos iCloud et ton trousseau. Quand un malware significatif émerge, Apple compile une signature, la signe, la dépose sur CloudKit. Ton Mac la récupère au prochain check, généralement dans les 24 à 72 heures.&lt;/p&gt;
&lt;p&gt;Pas de notification. Pas de redémarrage. Pas de message “votre Mac a été mis à jour”. Apple a fait un choix éditorial assumé, ne pas affoler l’utilisateur. Le revers, c’est que tu n’as aucun moyen de savoir, à l’œil nu, si tu es bien patché pour l’incident récent.&lt;/p&gt;
&lt;p&gt;C’est là que ça devient intéressant.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-push-5344-le-12-mai-lendemain-de-tanstack&quot;&gt;Le push 5344, le 12 mai, lendemain de TanStack&lt;/h2&gt;
&lt;p&gt;La version XProtect publiée le 12 mai 2026 s’appelle &lt;strong&gt;5344&lt;/strong&gt;. La précédente, 5342, datait du 5 mai. Concordance temporelle parfaite avec TanStack, à J+1.&lt;/p&gt;
&lt;p&gt;Sauf qu’Apple ne documente jamais publiquement le contenu d’une signature XProtect. Howard Oakley, qui décortique chaque release sur eclecticlight.co, observe sur 5344 « quelques ajustements sur des familles de malware connues ». Pas de signature nommée TanStack ou Shai-Hulud. Rien qui dise officiellement « ceci est la réponse à l’incident d’hier ».&lt;/p&gt;
&lt;p&gt;Coïncidence ou réaction ciblée ? Apple ne dit rien. C’est précisément ce flou qui justifie qu’on regarde dedans.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;vérifier-en-30-secondes-que-ton-mac-est-patché&quot;&gt;Vérifier en 30 secondes que ton Mac est patché&lt;/h2&gt;
&lt;p&gt;Sur macOS 15 Sequoia et macOS 26 Tahoe, Apple a déplacé XProtect dans un nouvel emplacement et fournit une commande native. C’est la voie recommandée. Sur macOS 14 Sonoma et antérieurs, l’ancien emplacement reste valide. Je donne les deux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. La version des signatures XProtect&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Sur Sequoia et Tahoe, la commande de référence :&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; xprotect&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; version&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu obtiens un numéro du genre &lt;code&gt;5344&lt;/code&gt; ou &lt;code&gt;5347&lt;/code&gt;. C’est la base de signatures. Plus c’est haut, plus c’est récent.&lt;/p&gt;
&lt;p&gt;Sur Sonoma et antérieurs :&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;defaults&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; read&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /Library/Apple/System/Library/CoreServices/XProtect.bundle/Contents/Info&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; CFBundleShortVersionString&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;L’ancien chemin existe encore sur Sequoia et Tahoe, mais ce n’est plus celui que macOS consulte en premier. Tu peux le lire et tomber sur une version périmée pendant que &lt;code&gt;sudo xprotect version&lt;/code&gt; te donne la vraie. C’est exactement le genre de piège qui fait croire à un Mac à la traîne alors qu’il est à jour.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. La version de XProtect Remediator&lt;/strong&gt;&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;defaults&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; read&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; /Library/Apple/System/Library/CoreServices/XProtect.app/Contents/Info&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; CFBundleShortVersionString&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu obtiens un numéro du genre &lt;code&gt;157&lt;/code&gt;. C’est le scanner lui-même, mis à jour beaucoup moins souvent que les signatures.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. L’historique d’installation&lt;/strong&gt;&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;system_profiler&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; SPInstallHistoryDataType&lt;/span&gt;&lt;span style=&quot;color:#D73A49&quot;&gt; |&lt;/span&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt; grep&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -A&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; 2&lt;/span&gt;&lt;span style=&quot;color:#005CC5&quot;&gt; -i&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; xprotect&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tu vois toutes les versions XProtect installées avec leurs dates. Pratique pour vérifier que tu n’as pas un Mac coincé sur une vieille base parce que CloudKit a un problème.&lt;/p&gt;
&lt;p&gt;Pour comparer ta version à ce qu’Apple publie en temps réel, le tracker public d’Howard Oakley, &lt;a href=&quot;https://eclecticlight.co/category/macos/security/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;eclecticlight.co&lt;/a&gt;, maintient la liste à jour. Oakley est un ingénieur britannique qui décortique macOS depuis quinze ans, c’est la référence sur le sujet.&lt;/p&gt;
&lt;p&gt;Et si ton Mac traîne, tu forces le check :&lt;/p&gt;
&lt;pre class=&quot;astro-code github-light&quot; style=&quot;background-color:#fff;color:#24292e; overflow-x: auto;&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color:#6F42C1&quot;&gt;sudo&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; xprotect&lt;/span&gt;&lt;span style=&quot;color:#032F62&quot;&gt; update&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Sur Sonoma et antérieurs, l’ancienne commande &lt;code&gt;sudo softwareupdate --background-critical&lt;/code&gt; reste opérationnelle.&lt;/p&gt;
&lt;p&gt;Au moment où je publie, la dernière version est &lt;strong&gt;5344, le 12 mai 2026&lt;/strong&gt;. Si ton Mac affiche moins, ton canal CloudKit traîne.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-revers-souverain&quot;&gt;Le revers souverain&lt;/h2&gt;
&lt;p&gt;XProtect, c’est une boîte noire signée Cupertino. Tu ne sais pas quelles signatures sont poussées, tu ne sais pas quelle télémétrie remonte au passage, tu ne sais pas qui décide qu’un binaire est malveillant. Apple décide, Apple pousse, ta machine exécute.&lt;/p&gt;
&lt;p&gt;Le mécanisme est utile, très utile même. Bloquer des malwares connus avant qu’ils s’exécutent, c’est la base d’une défense moderne, et le faire sans te solliciter évitera que tu le désactives le jour où t’es fin énervé par cette &lt;strong&gt;rognutudju!!&lt;/strong&gt; de pop-up (cherche pas, si t’as moins de 50 berges, t’as pas la ref).&lt;/p&gt;
&lt;p&gt;Les trois commandes ci-dessus te donnent un droit de regard minimal sur ce que ton OS fait sans te demander. C’est un petit pas vers la souveraineté, pas reprendre le contrôle, juste savoir.&lt;/p&gt;
&lt;p&gt;La différence entre un utilisateur passif et un utilisateur souverain n’est pas que dans les outils utilisés. Elle est aussi dans les questions qu’il se pose. Quelle version j’ai. Quand a-t-elle été poussée. Qu’est-ce qu’elle contient.&lt;/p&gt;
&lt;p&gt;Apple répond aux deux premières en trois lignes Terminal. Sur la troisième, elle se tait. C’est Howard Oakley qui décortique le contenu après coup et publie les diffs sur &lt;a href=&quot;https://eclecticlight.co/category/macos/security/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;eclecticlight.co&lt;/a&gt;. Tu ne sauras jamais en direct ce qu’Apple a estampillé malveillant cette nuit.&lt;/p&gt;
&lt;p&gt;Tous les mois, je vérifie tout de même les versions XProtect sur mes Macs. Rien d’héroïque, juste une habitude. Le jour où le canal CloudKit déconne, j’aurai un point de référence.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/privacy-macos-les-parametres-a-changer-immediatement/&quot;&gt;Les paramètres macOS à changer immédiatement&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;XProtect est utile, silencieux, et hors de ton contrôle. Le sujet est de savoir qu’il existe, de connaître les trois commandes qui te disent où tu en es, et de comprendre que dans la chaîne d’approvisionnement JavaScript de 2026, comme dans d’autres chaînes de compromission, c’est lui qui colmate les fuites.&lt;/p&gt;
&lt;p&gt;Lance les trois commandes. Note tes numéros. Compare-les à &lt;a href=&quot;https://eclecticlight.co/category/macos/security/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;eclecticlight.co&lt;/a&gt; de temps en temps. Ça prend trente secondes, et ça te permet de savoir si tu es bien patché et à jour.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/lockdown-mode-face-a-coruna-toolkit-espionnage-gouvernemental/&quot;&gt;Lockdown Mode face à Coruña, le toolkit d’espionnage gouvernemental&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire/&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>securite</category><category>macos</category><category>xprotect</category><category>supply-chain</category><category>informatif</category><enclosure url="https://macsouverain.com/content/images/2026/05/feature-37-xprotect-v3.png" length="0" type="image/png"/></item><item><title>kSuite vs Google Workspace, le comparatif honnête</title><link>https://macsouverain.com/ksuite-vs-google-workspace-le-comparatif-honnete/</link><guid isPermaLink="true">https://macsouverain.com/ksuite-vs-google-workspace-le-comparatif-honnete/</guid><description>kSuite Infomaniak ou Google Workspace pour ton Mac ? Pricing, chiffrement, juridiction, apps natives Apple. Le comparatif honnête sans tableau marketing.</description><pubDate>Sun, 10 May 2026 14:27:21 GMT</pubDate><content:encoded>&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Tu paies tous les mois pour Google Workspace. Tu lis MacSouverain et tu te sens concerné par ta Privacy. À un moment, la dissonance devient gênante.&lt;/p&gt;
&lt;p&gt;La question n’est pas “Workspace, c’est mauvais ?”. Workspace marche très bien, c’est même la référence. La question, c’est : qu’est-ce que tu paies au juste, et qu’est-ce que tu lui donnes en échange. Et est-ce qu’il existe une alternative qui te rend ton Mac, ta juridiction et tes données sans te coller un downgrade fonctionnel.&lt;/p&gt;
&lt;p&gt;kSuite, édité par Infomaniak depuis Genève, se vend exactement sur cette promesse. On va regarder si elle tient.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-critères-qui-comptent&quot;&gt;Les critères qui comptent&lt;/h2&gt;
&lt;p&gt;Comparer deux suites collaboratives sans grille, c’est faire une publi-rédactionnelle. Voici les six critères que j’ai retenus, et ce que j’ai délibérément écarté.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Juridiction et souveraineté des données.&lt;/strong&gt; Où sont stockées les données, sous quelle loi, qui peut y accéder par voie légale. Ce critère prime sur tout le reste pour MacSouverain, parce qu’il est structurel et non négociable à coups de feature.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chiffrement réel.&lt;/strong&gt; Pas “chiffré” en général. At-rest, in-transit, et surtout end-to-end : qui détient les clés. C’est la seule grille qui résiste à une réquisition.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Prix et lisibilité.&lt;/strong&gt; Combien tu paies par utilisateur, ce que tu obtiens, ce qui change quand l’éditeur fait du “pricing update”.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Intégration native macOS et iOS.&lt;/strong&gt; Apple Mail, Calendar, Contacts, Files. Est-ce que tu peux travailler sans installer une seule app de l’éditeur sur ton Mac. C’est le marqueur “souverain pratique”.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Couverture fonctionnelle pro.&lt;/strong&gt; Mail pro, drive partagé, visio, docs collaboratifs, console admin, SSO, MDM. Une suite qui te force à en garder une autre à côté, c’est une demi-suite.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sortie possible.&lt;/strong&gt; Export, formats standards, import depuis le concurrent. Tu n’es pas mariée à ton fournisseur cloud, sauf si tu acceptes de l’être.&lt;/p&gt;
&lt;p&gt;Ce que je n’ai PAS évalué : les usages très spécifiques (Workspace for Education, conformité HIPAA US, FedRAMP). Si tu es un hôpital américain, ce comparatif n’est pas pour toi. Si tu es une PME européenne, un freelance ou un family office, on continue.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ksuite-par-infomaniak&quot;&gt;kSuite, par Infomaniak&lt;/h2&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/05/capture-01-ksuite-admin-ksuite-vs-google-workspace-le-comparatif-honnete-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Console Manager Infomaniak, vue dashboard kSuite avec sidebar et section &amp;#x22;My day&amp;#x22; listant Mail, Calendar, kMeet, kChat, kDrive&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;La philosophie en deux phrases.&lt;/strong&gt; Une suite collaborative éditée par un hébergeur suisse de 316 personnes, employee-owned, certifié ISO 27001 et 14001, qui opère ses propres datacenters à Genève et Winterthur. Pas un revendeur qui pose une UI sur des briques tierces, un éditeur vertical intégré.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Les forces.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Suisse, nFADP, hors CLOUD Act.&lt;/strong&gt; Infomaniak est sous juridiction suisse, régie par la nouvelle Loi fédérale sur la protection des données (nFADP, en vigueur depuis le 01/09/2023). Pas de CLOUD Act applicable. La Suisse bénéficie d’une décision d’adéquation UE pour transferts RGPD. Pour un client UE ou simplement attaché à ce que ses données ne fassent pas escale juridique à Washington, ça se passe d’argument complémentaire.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;OpenPGP intégré, gratuit, transparent dans kMail.&lt;/strong&gt; &lt;a href=&quot;https://finance.yahoo.com/news/infomaniak-democratises-email-encryption-users-072800175.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Infomaniak a activé le chiffrement E2E par OpenPGP côté webmail kMail le 17 juin 2025&lt;/a&gt;, pour tous les plans, sans add-on. Tu actives, tu échanges des clés avec ton correspondant, tes mails sont chiffrés bout en bout. Côté suites grand public, seuls Proton et kSuite offrent OpenPGP gratuit dans le webmail. Google Workspace, Microsoft 365 et Zoho réservent leur chiffrement natif aux plans Enterprise.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;OnlyOffice sous le capot des Docs, Grids, Points.&lt;/strong&gt; Le moteur de bureautique de kSuite, c’est &lt;a href=&quot;https://www.infomaniak.com/en/ksuite/kdrive/onlyoffice&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;OnlyOffice, AGPLv3, open source&lt;/a&gt;. Compatibilité haute fidélité avec .docx, .xlsx, .pptx, mieux que Google Docs sur les fichiers Office natifs. Si ton comptable t’envoie un .xlsx avec des macros et une mise en page tordue, OnlyOffice le rend correctement.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Protocoles ouverts partout.&lt;/strong&gt; IMAP, SMTP, CalDAV, CardDAV, WebDAV. Tu configures Apple Mail, Calendar, Contacts et Files.app sans installer un seul exécutable Infomaniak sur ton Mac. C’est rare, et c’est le critère d’intégration le plus pur qu’une suite cloud puisse cocher.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;kMeet avec E2E optionnelle, gratuite.&lt;/strong&gt; Visioconférence WebRTC avec une option de chiffrement bout en bout activable à la création de la réunion (clé partagée), &lt;a href=&quot;https://www.infomaniak.com/en/support/faq/2464/securing-a-kmeet-meeting-password-encryption-key&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;documentée par Infomaniak&lt;/a&gt;. Limitée aux navigateurs Chromium et à l’app desktop, mais existante. Côté Workspace, l’équivalent (CSE) demande Enterprise Plus.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pricing lisible et stable.&lt;/strong&gt; kSuite Pro à 7,90 €/utilisateur/mois pour 3 To de stockage et le mail pro complet. Pas de hausse documentée depuis le lancement en 10/2022. La promesse tarifaire tient.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Les faiblesses.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MDM et Apple Business Manager : le trou dans la raquette.&lt;/strong&gt; Pas d’intégration ABM officielle pour kSuite. Si tu déploies une flotte d’iPhone et de Mac d’entreprise avec federated authentication via Managed Apple ID, Workspace &lt;a href=&quot;https://support.apple.com/guide/apple-business-manager/intro-to-google-workspace-axmaef1a0154/web&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;le fait nativement&lt;/a&gt;. Côté kSuite, tu passes par un MDM tiers (Jamf, Mosyle, Kandji) avec auth IMAP/CalDAV classique. Ça marche, c’est moins intégré.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Marketplace tiers limitée.&lt;/strong&gt; Workspace Marketplace, c’est plus de 4 500 apps connectées. kSuite, c’est essentiellement la suite Infomaniak et quelques intégrations standards. Si ton workflow dépend de quinze SaaS qui se branchent sur Google Calendar, prévois une transition.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Apps mobiles : solides, pas références.&lt;/strong&gt; Infomaniak Mail et kDrive iOS sont propres, mais Gmail et Google Drive iOS restent les références UX du marché. C’est un écart d’expérience, pas un blocage.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Coédition temps réel : bonne, pas excellente.&lt;/strong&gt; OnlyOffice gère la coédition multi-utilisateurs, mais Google Docs reste la référence absolue sur la latence et l’undo collaboratif. Si tu fais de la rédaction simultanée à six dans le même document toute la journée, tu sentiras la différence. Sinon non.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Euria vs Gemini.&lt;/strong&gt; Infomaniak a son IA souveraine (Euria) pour transcription kMeet et assistance. C’est honnête, ce n’est pas Gemini. Si l’IA bureautique poussée est ton critère principal, Workspace gagne ce point sans appel.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour qui.&lt;/strong&gt; Le freelance, la PME, le family office, le cabinet libéral qui veut une suite pro complète sans CLOUD Act et sans installer une app propriétaire de plus sur son Mac. Le profil MacSouverain, en somme.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Prix HT (extraits, vraie page éditeur sur &lt;a href=&quot;https://www.infomaniak.com/en/ksuite/ksuite-pro/prices&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;infomaniak.com/en/ksuite/ksuite-pro/prices&lt;/a&gt;).&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;my kSuite&lt;/strong&gt; : gratuit, 20 Go, 1 adresse @ksuite.infomaniak.com, kMeet inclus. Pas de domaine perso.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;my kSuite+&lt;/strong&gt; : CHF 5,75/mois, 2 To, 1 domaine + 5 alias.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;kSuite Standard&lt;/strong&gt; : 1,90 €/utilisateur/mois, 15 Go par user, mail pro avec domaine.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;kSuite Pro&lt;/strong&gt; : 7,90 €/utilisateur/mois, 3 To par user, mail pro + alias, SSO SAML.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;kSuite Enterprise&lt;/strong&gt; : 14,90 €/utilisateur/mois, 6 To par user, admin avancée.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;google-workspace-par-google-llc&quot;&gt;Google Workspace, par Google LLC&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;La philosophie en deux phrases.&lt;/strong&gt; La suite collaborative qui a redéfini le standard depuis 2006. Référence du marché sur Gmail, Docs, Sheets et Meet, intégrée avec à peu près tous les SaaS du monde, sous juridiction US et CLOUD Act.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Les forces.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le mail anti-spam de référence.&lt;/strong&gt; Gmail filtre mieux que tout le monde, point. Quinze ans de feedback machine learning sur des milliards de messages, ça se rattrape mal. Si tu changes de fournisseur mail, ton dossier spam va te manquer pendant deux mois.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Coédition Docs, Sheets, Slides.&lt;/strong&gt; L’inventeur du genre est aussi le maître du genre. Latence, suggestions, mentions, historique granulaire : Workspace bureautique en ligne reste la référence, et toutes les autres suites se mesurent à elle.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Écosystème tiers gigantesque.&lt;/strong&gt; &lt;a href=&quot;https://workspace.google.com/marketplace&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Workspace Marketplace&lt;/a&gt;, 4 500+ apps. Ton CRM, ta facturation, ton outil RH, ton ATS : tous ont un connecteur Google natif. Pour kSuite, prévois des intégrations CalDAV/IMAP à la main quand l’app tierce le permet, ou rien quand elle ne le permet pas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Apple Business Manager officiel.&lt;/strong&gt; Federated authentication avec Managed Apple ID, DEP token, déploiement MDM Workspace Endpoint Management qui couvre macOS, iOS, ChromeOS, Android, Windows. Pour une PME qui gère une flotte hétérogène, c’est un argument opérationnel réel.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Gemini AI intégré dans tous les plans.&lt;/strong&gt; Depuis le 17/03/2025, &lt;a href=&quot;https://9to5google.com/2025/01/15/google-workspace-price-increase-2025/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Google a bundle Gemini dans le tarif core de Workspace&lt;/a&gt;. NotebookLM, Gemini in Docs, Gemini in Sheets, transcription Meet : c’est puissant, et c’est dispo sans add-on supplémentaire.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Vault, eDiscovery, DLP, audit BigQuery.&lt;/strong&gt; Si ton métier a des obligations de rétention légale, de legal hold, de Data Loss Prevention sérieuse, Workspace Plus et Enterprise sont matures sur ces sujets depuis dix ans. kSuite a des audit logs, pas la pile réglementaire complète.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Les faiblesses.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;CLOUD Act, l’argument structurel.&lt;/strong&gt; Google LLC est une entreprise US, soumise au &lt;a href=&quot;https://wire.com/en/blog/cloud-act-eu-data-sovereignty&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;CLOUD Act 2018&lt;/a&gt;, qui autorise les autorités américaines à exiger d’un fournisseur sous juridiction US la communication de données stockées n’importe où dans le monde. “Datacenter européen” ne change rien : Microsoft France l’a &lt;a href=&quot;https://wire.com/en/blog/cloud-act-eu-data-sovereignty&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;confirmé sous serment au Sénat&lt;/a&gt;, la juridiction prime sur la localisation. Workspace n’est pas qualifié SecNumCloud par l’ANSSI. Le partenariat Thales S3NS pour porter une qualif est en cours, Workspace lui-même ne la porte pas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Hausse en 03/2025, bundle Gemini imposé.&lt;/strong&gt; Google a &lt;a href=&quot;https://workspace.google.com/blog/product-announcements/pricing-updates-and-more-flexible-payment-options-google-workspace&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;augmenté le tarif core de tous les plans Workspace&lt;/a&gt; en intégrant Gemini dans le forfait : +16,7 % sur Business Starter et Standard (annuel), +22,2 % sur Business Plus. Tu n’as pas d’IA générative dans ton workflow ? Tu paies quand même. C’est la deuxième hausse globale après celle de 2023, le pricing Workspace est en hausse continue.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chiffrement E2E réservé à Enterprise Plus.&lt;/strong&gt; S/MIME hosted et CSE (Client-Side Encryption) sont disponibles uniquement &lt;a href=&quot;https://workspace.google.com/learn-more/security/security-whitepaper/page-5/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;en Enterprise Plus et Education Plus&lt;/a&gt;, avec un KMS externe à configurer (Thales, Fortanix, Stormshield, Flowcrypt). Sur Business Starter, Standard et Plus, tu as TLS in-transit et AES-256 at-rest avec clés Google. Ce n’est pas E2E.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Apps natives Apple : ça marche, sans plus.&lt;/strong&gt; Apple Mail avec Google Account fonctionne, mais les labels Gmail deviennent des dossiers IMAP, l’expérience est dégradée. CardDAV est officiellement déprécié par Google au profit de People API (toujours fonctionnel via Google Account natif iOS, mais signal long terme). En pratique, l’utilisateur Workspace finit par ouvrir Gmail web et l’app Drive iOS : l’argument “100 % apps natives Apple” tombe.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Verrouillage Gmail.&lt;/strong&gt; Les labels, les filtres, la catégorisation Gmail sont spécifiques. Google Takeout exporte tout (.mbox, EML), mais le reformatage côté nouveau fournisseur n’est pas trivial. Tu peux sortir, ce ne sera pas confortable.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Données clients vs entraînement IA.&lt;/strong&gt; Google s’engage &lt;a href=&quot;https://workspace.google.com/learn-more/security/security-whitepaper/page-5/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;contractuellement à ne pas utiliser les données Workspace B2B pour entraîner Gemini&lt;/a&gt;. C’est un engagement contractuel, évolutif, distinct de l’engagement commercial Gmail grand public (qui lui, partage des signaux). À surveiller dans le temps.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour qui.&lt;/strong&gt; L’entreprise dont les workflows critiques dépendent du Marketplace, le grand groupe avec besoins eDiscovery sérieux, le client US où la conformité locale impose les certifications Google, l’équipe déjà installée qui n’a aucun argument opérationnel pour bouger.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Prix HT (annuel, page éditeur &lt;a href=&quot;https://workspace.google.com/pricing&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;workspace.google.com/pricing&lt;/a&gt;).&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Business Starter&lt;/strong&gt; : 6,80 €/user/mois (annuel), 30 Go par user, Meet 100 participants, max 300 users.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Business Standard&lt;/strong&gt; : 13,60 €/user/mois, 2 To pooled, Meet 150 + enregistrement.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Business Plus&lt;/strong&gt; : 21,10 €/user/mois, 5 To pooled, Vault eDiscovery, Meet 500.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enterprise&lt;/strong&gt; : sur devis, 5 To+, Meet 1 000, CSE, DLP avancé.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Promo de lancement 50 % les 3 premiers mois sur les 20 premiers utilisateurs, ensuite tarif standard.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;tête-à-tête-sur-les-critères-qui-comptent&quot;&gt;Tête-à-tête sur les critères qui comptent&lt;/h2&gt;
&lt;p&gt;Plutôt qu’un tableau qui aplatit tout au même niveau, regardons les six critères l’un après l’autre.&lt;/p&gt;
&lt;h3 id=&quot;juridiction-et-souveraineté&quot;&gt;Juridiction et souveraineté&lt;/h3&gt;
&lt;p&gt;kSuite est suisse, sous nFADP, hébergée en Suisse (datacenters Genève et région Zurich), hors CLOUD Act, hors RGPD (mais décision d’adéquation UE valide). Workspace est US, sous CLOUD Act, datacenters mondiaux avec option “data regions” Europe en plans Enterprise. Sur ce critère, ce n’est pas un comparatif, c’est une différence de nature. Si la juridiction est décisive pour toi, le sujet est déjà clos.&lt;/p&gt;
&lt;h3 id=&quot;chiffrement-réel&quot;&gt;Chiffrement réel&lt;/h3&gt;
&lt;p&gt;kSuite : OpenPGP E2E natif et gratuit dans kMail, E2E optionnelle dans kMeet, AES-256 at-rest sur kDrive avec clés Infomaniak. Pas d’E2EE drive natif. Workspace : TLS et AES-256 at-rest partout, S/MIME hosted et CSE en Enterprise Plus uniquement, BYOK avec KMS externe en Enterprise Plus. Pour le mail, kSuite gagne nettement, et gratuitement. Pour le drive, les deux te demandent un compromis : Infomaniak garde les clés, ou tu paies Workspace Enterprise Plus pour avoir CSE.&lt;/p&gt;
&lt;h3 id=&quot;prix-et-lisibilité&quot;&gt;Prix et lisibilité&lt;/h3&gt;
&lt;p&gt;À tier équivalent, kSuite est moins cher partout. Solo 2 To : my kSuite+ à 5,75 contre Business Starter à 6,80 € pour 30 Go (un facteur 70 sur le stockage). PME standard : kSuite Pro à 7,90 € contre Business Standard à 13,60 € (kSuite 42 % moins cher, 50 % de stockage en plus). PME premium : kSuite Enterprise 14,90 contre Business Plus 21,10 € (kSuite 29 % moins cher). Et le pricing Workspace monte, celui de kSuite ne bouge pas depuis 10/2022.&lt;/p&gt;
&lt;h3 id=&quot;intégration-native-macos-et-ios&quot;&gt;Intégration native macOS et iOS&lt;/h3&gt;
&lt;p&gt;kSuite expose IMAP, SMTP, CalDAV, CardDAV, WebDAV. Apple Mail, Calendar, Contacts, Files.app fonctionnent en natif sans une seule app propriétaire installée. C’est le scénario “100 % Apple” pur. Workspace fonctionne aussi nativement, mais l’expérience réelle pousse l’utilisateur vers Gmail web et Drive iOS. Sur le critère “ne rien installer de l’éditeur”, kSuite gagne sans bouger ; sur le critère “expérience polie”, Workspace garde la main avec ses propres apps.&lt;/p&gt;
&lt;h3 id=&quot;couverture-fonctionnelle-pro&quot;&gt;Couverture fonctionnelle pro&lt;/h3&gt;
&lt;p&gt;Les deux suites couvrent mail, drive, agenda, contacts, visio, docs collaboratifs, console admin, SSO. Workspace ajoute MDM natif, ABM officiel, Marketplace 4 500 apps, DLP avancé, Vault eDiscovery. kSuite ajoute OnlyOffice haute fidélité, OpenPGP gratuit, kMeet E2E. Sur la couverture pure, Workspace a plus de profondeur ; sur la souveraineté fonctionnelle, kSuite a un cran d’avance.&lt;/p&gt;
&lt;h3 id=&quot;sortie-possible&quot;&gt;Sortie possible&lt;/h3&gt;
&lt;p&gt;kSuite exporte EML, MBOX, vCard, iCal, fichiers natifs OnlyOffice. Workspace exporte via Takeout (mbox, vCard, ics, .docx via conversion). Les deux te laissent partir. kSuite te facilite l’arrivée : un import Workspace intégré est documenté dans la console Manager. L’inverse (sortir de Workspace vers autre chose) marche techniquement mais n’est pas guidé.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;recommandation-mack&quot;&gt;Recommandation Mack&lt;/h2&gt;
&lt;p&gt;Je vais le dire clairement parce que c’est mon job : si tu as le choix, &lt;strong&gt;kSuite est meilleur que Workspace pour ta Privacy.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Pas parce que Workspace est mauvais. Workspace est une excellente suite collaborative. Mais le profil MacSouverain n’est pas l’utilisateur médian de Workspace. Le lecteur de ce site, c’est un freelance, une PME européenne, un family office, un indépendant qui paie pour un service et qui veut savoir qui peut lire ses fichiers, qui peut forcer à les communiquer, et ce qui se passe le jour où un audit arrive. Sur ces trois questions, Workspace répond “Google, le CLOUD Act, on s’en occupe”, et &lt;strong&gt;kSuite répond “toi, personne, et un fichier d’export EML”, totale Privacy.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Si tu es freelance ou solo et que le budget compte.&lt;/strong&gt; my kSuite+ à CHF 5,75/mois pour 2 To, c’est un choix évident face à Business Starter et ses 30 Go.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Si tu es PME 5-50 personnes en Europe.&lt;/strong&gt; kSuite Pro à 7,90 €/user. Tu économises 42 % par rapport à Business Standard, tu gardes ton mail pro avec domaine, tu peux configurer Apple Mail et Calendar sur toute la flotte sans installer une app, et tu sors du CLOUD Act. La seule question à poser : ta flotte a-t-elle un besoin de MDM fédéré via ABM. Si oui, évalue sérieusement le coût d’un Mosyle ou d’un Jamf en complément.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Si tu es déjà sur Workspace avec tout ton workflow branché dessus.&lt;/strong&gt; Une migration coûte. Tu n’as pas à la faire ce trimestre. Mais il y a deux moments où la repenser fait sens : à chaque hausse de prix Workspace (la prochaine arrivera), et au moment où un workflow critique casse à cause d’un changement Google. Ces deux moments arrivent, statistiquement.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Si tu es family office en Suisse, en Allemagne ou ailleurs en UE et que la juridiction US te dérange.&lt;/strong&gt; Tu ne paies pas un cloud américain pour stocker ta correspondance pro et tes documents financiers, c’est aussi simple que ça. kSuite est la réponse la plus courte.&lt;/p&gt;
&lt;p&gt;Pour mon usage perso, j’ai fait un autre choix, &lt;a href=&quot;https://macsouverain.com/ma-stack/&quot;&gt;Proton Workspace&lt;/a&gt;, qui rend la même promesse de souveraineté sous un autre angle (E2E partout par défaut, écosystème Proton complet). Si tu hésites entre les deux mondes souverains, retiens la grille : &lt;strong&gt;kSuite a la longueur d’avance sur l’intégration Apple native pure&lt;/strong&gt; (CalDAV, CardDAV, IMAP standards) et &lt;strong&gt;OnlyOffice haute fidélité&lt;/strong&gt; ; Proton a l’avance sur le E2E systématique et l’app suite cohérente. Aucun des deux ne te ramène au CLOUD Act, c’est l’essentiel.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;kSuite est moins chère&lt;/strong&gt; à tier équivalent, plus souveraine par construction (Suisse, nFADP, employee-owned, ISO 27001), &lt;strong&gt;expose des protocoles ouverts&lt;/strong&gt; qui rendent les apps natives Apple pleinement utilisables, et &lt;strong&gt;inclut le chiffrement OpenPGP&lt;/strong&gt; gratuit dans le mail. Workspace est plus polie sur Gmail, Docs et l’écosystème tiers, plus intégrée avec Apple Business Manager, et beaucoup plus mature sur les sujets Vault et DLP, au prix d’une juridiction US et d’une hausse continue.&lt;/p&gt;
&lt;p&gt;Concrètement :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Freelance ou solo, budget compte&lt;/strong&gt; → &lt;a href=&quot;https://www.infomaniak.com/fr/ksuite/myksuite&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;my kSuite+ à CHF 5,75/mois&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PME européenne 5-50 personnes&lt;/strong&gt; → &lt;a href=&quot;https://www.infomaniak.com/fr/ksuite&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;kSuite Pro à 7,90 €/user/mois&lt;/a&gt;, avec un MDM tiers si besoin fédéré.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Workflow Workspace critique déjà en place&lt;/strong&gt; → reste, prépare la migration au prochain pricing update.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Conformité réglementaire US lourde&lt;/strong&gt; → reste sur Workspace.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Family office UE, juridiction non négociable&lt;/strong&gt; → &lt;a href=&quot;https://www.infomaniak.com/fr/ksuite&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;kSuite, sans hésiter&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sources&quot;&gt;Sources&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Les éditeurs eux-mêmes&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.infomaniak.com/en/ksuite&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Infomaniak&lt;/a&gt;, l’hébergeur suisse de Genève, employee-owned, qui édite kSuite depuis 10/2022. Page produit, prix et certifications ISO 27001 / 14001 / 50001 publics.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://workspace.google.com/pricing&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Google Workspace&lt;/a&gt;, Mountain View, sous juridiction US et CLOUD Act. Page pricing, security whitepaper, ISO 27001 publics.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;La doc technique&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Annonce OpenPGP gratuit dans kMail, &lt;a href=&quot;https://finance.yahoo.com/news/infomaniak-democratises-email-encryption-users-072800175.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;reprise par Yahoo Finance&lt;/a&gt; le 17 juin 2025.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://support.apple.com/guide/apple-business-manager/intro-to-google-workspace-axmaef1a0154/web&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Apple Business Manager × Workspace&lt;/a&gt;, guide officiel Apple, fédération Managed Apple ID native côté Google, pas côté kSuite.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Les analyses indépendantes&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://wire.com/en/blog/cloud-act-eu-data-sovereignty&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Wire, CLOUD Act vs souveraineté UE&lt;/a&gt;, l’éditeur suisse de messagerie chiffrée explique pourquoi un datacenter européen ne suffit pas si l’entreprise est US.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://9to5google.com/2025/01/15/google-workspace-price-increase-2025/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;9to5Google, hausse Workspace 03/2025&lt;/a&gt;, la presse tech qui a documenté le bundle Gemini imposé et la grille tarifaire actualisée.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;voir-aussi&quot;&gt;Voir aussi&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/quest-ce-que-la-souverainete-digitale-en-pratique/&quot;&gt;Souveraineté digitale, en pratique&lt;/a&gt; : la grille générale dont kSuite est un cas d’application.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/cloud-ordinateur-quelquun-dautre/&quot;&gt;Le cloud, c’est l’ordinateur de quelqu’un d’autre&lt;/a&gt; : le cadre mental qui sous-tend ce comparatif.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/dns-talon-achille-privacy/&quot;&gt;DNS, le talon d’Achille de ta privacy&lt;/a&gt; : même logique de juridiction sur une autre couche.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>privacy</category><category>mac</category><category>comparatif</category><category>souverainete</category><category>suite-collaborative</category><category>infomaniak</category><category>google-workspace</category><category>comparatifs</category><enclosure url="https://macsouverain.com/content/images/2026/05/feature-ksuite-vs-google-workspace-le-comparatif-honnete-3.png" length="0" type="image/png"/></item><item><title>Little Snitch vs LuLu, quel pare-feu sortant pour ton Mac</title><link>https://macsouverain.com/little-snitch-vs-lulu-pare-feu-sortant-mac/</link><guid isPermaLink="true">https://macsouverain.com/little-snitch-vs-lulu-pare-feu-sortant-mac/</guid><description>Little Snitch payant et closed-source vs LuLu OSS gratuit. Souveraineté maximale d&apos;un côté, granularité maximale de l&apos;autre. Comment choisir sans regretter.</description><pubDate>Tue, 05 May 2026 11:57:32 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ juillet 2026.&lt;/strong&gt; dns0.eu, le résolveur DNS chiffré européen que Little Snitch proposait en preset, a fermé fin mai 2026 (ressources insuffisantes). Little Snitch l’a basculé sur DNS4EU, et l’article suit, on te renvoie désormais vers DNS4EU ou Quad9.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Mise à jour, 2 juillet 2026.&lt;/strong&gt; Little Snitch est passé en 6.4.1 (juin 2026) : déverrouillage des réglages verrouillés par Touch ID, copie de règles entre profils au glisser-déposer, mises à jour horaires des listes de blocage. La 6.4.1 corrige un rejet d’anciennes licences. Le verdict du comparatif ne bouge pas, les versions de référence ci-dessous sont à jour.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Pendant que tu lis cet article, ton Mac parle. À quarante-sept serveurs, sans te demander ton avis. Apple iCloud, Adobe, Microsoft Telemetry, l’app météo qui réveille un CDN à Singapour, le mini-jeu Solitaire qui poste tes scores chez un éditeur que tu ne connais pas.&lt;/p&gt;
&lt;p&gt;Personne, ou presque, ne regarde la sortie réseau de ses données.&lt;/p&gt;
&lt;p&gt;C’est là que le pare-feu sortant sur Mac entre en scène. Pas l’ALF intégré (Application Firewall, qui ne filtre que l’entrée), pas &lt;code&gt;pf&lt;/code&gt; (puissant mais aveugle au process). Un vrai pare-feu sortant &lt;em&gt;process-aware&lt;/em&gt;, qui te dit “tel binaire essaie de joindre tel domaine, tu autorises ?”. Sur macOS, deux outils dominent : &lt;strong&gt;Little Snitch&lt;/strong&gt; (payant, closed-source, viennois) et &lt;strong&gt;LuLu&lt;/strong&gt; (gratuit, open source, américain, signé Patrick Wardle).&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/privacy-macos-les-parametres-a-changer-immediatement/&quot;&gt;Les réglages privacy macOS à changer en 15 minutes&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pourquoi-un-pare-feu-sortant-process-aware&quot;&gt;Pourquoi un pare-feu sortant &lt;em&gt;process-aware&lt;/em&gt;&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Pare-feu sortant en deux phrases.&lt;/strong&gt; Un logiciel qui intercepte les connexions sortantes de tes apps avant qu’elles partent vers Internet et te demande “j’autorise ou je bloque ?”. Le pare-feu &lt;em&gt;entrant&lt;/em&gt; fait l’inverse, il filtre ce qui rentre depuis le réseau. Little Snitch et LuLu jouent côté sortant uniquement, c’est leur job.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;macOS livre nativement deux couches de sécurité. ALF (Application Layer Firewall) filtre les connexions entrantes. XProtect et MRT scannent les binaires connus comme malveillants. C’est ce que tu as out-of-the-box.&lt;/p&gt;
&lt;p&gt;Si tu veux du sérieux, tu en empiles d’autres par dessus, à ta charge : Santa (NorthPoleSec, OSS) pour bloquer les exécutables non whitelistés, Wazuh pour remonter les événements vers un SIEM, et précisément ce dont parle cet article, un pare-feu sortant process-aware. Toutes ces couches, natives ou ajoutées, font ce qu’elles doivent faire, en se complétant.&lt;/p&gt;
&lt;p&gt;Une app peut être signée, validée par Apple, exécutée par un user légitime, et envoyer ton carnet d’adresses à un serveur tiers. ALF ne voit rien (c’est de la sortie). Santa ne voit rien (le binaire est autorisé à s’exécuter). XProtect ne voit rien (le binaire n’est pas dans la base malware). C’est exactement &lt;strong&gt;le rôle d’un pare-feu sortant &lt;em&gt;process-aware&lt;/em&gt;&lt;/strong&gt; : combler ce trou. &lt;strong&gt;Filtrer non par adresse IP, mais par process et par destination&lt;/strong&gt;, avec un verdict allow/drop par connexion.&lt;/p&gt;
&lt;p&gt;Sur macOS, depuis Big Sur, ces outils utilisent tous le framework Apple &lt;code&gt;NEFilterDataProvider&lt;/code&gt; (Network Extension). Plus de kernel extension à charger, plus de risque de kernel panic lié à un kext tiers. C’est Apple qui maintient le chemin réseau, l’outil tiers ne fait que rendre un verdict.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-protagonistes&quot;&gt;Les protagonistes&lt;/h2&gt;
&lt;h3 id=&quot;little-snitch-641&quot;&gt;Little Snitch 6.4.1&lt;/h3&gt;
&lt;p&gt;Édité par &lt;strong&gt;Objective Development Software GmbH&lt;/strong&gt;, à Vienne, Autriche, depuis 2003. Vingt-deux ans d’âge, équipe stable, zéro rachat, zéro pivot. Licence perpétuelle, &lt;strong&gt;closed-source propriétaire&lt;/strong&gt;. Un seul incident de sécurité connu (faille de code-signing en 2018, fix livré avant la disclosure publique de Patrick Wardle). Depuis la v5 (2020), plus de kernel extension, uniquement Network Extension Apple. Version actuelle : 6.4.1, sortie le 22 juin 2026, supporte macOS Sonoma, Sequoia et Tahoe. UI en anglais et allemand. Pas de français.&lt;/p&gt;
&lt;h3 id=&quot;lulu-432&quot;&gt;LuLu 4.3.2&lt;/h3&gt;
&lt;p&gt;Développé par &lt;strong&gt;Patrick Wardle&lt;/strong&gt;, fondateur d’Objective-See (États-Unis), depuis 2017. Wardle est une référence mondiale sécurité Mac : ex-NSA, créateur du Mac Malware Project, intervenant régulier à Black Hat, DEFCON et Objective by the Sea. &lt;strong&gt;Open source, GPL-3.0&lt;/strong&gt;, sources publiques sur GitHub, binaire compilable maison. Modèle 100 % gratuit, financé par dons via Patreon (pas de freemium, pas de tier payant). Version actuelle : 4.3.2, sortie le 3 mai 2026. Supporte macOS 10.15+, Tahoe inclus depuis la 4.0. UI principalement en anglais.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-quils-font-ce-quils-ne-font-pas&quot;&gt;Ce qu’ils font, ce qu’ils ne font pas&lt;/h2&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/05/capture-02-prompts-cote-a-cote-prepub-art35.png&quot; alt=&quot;Prompts Little Snitch et LuLu côte à côte, écart de granularité immédiat&quot;&gt;
&lt;em&gt;Prompts Little Snitch (gauche) et LuLu (droite). Captures officielles obdev.at et objective-see.org. © Objective Development et © Objective-See, GPL-3.0.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cœur produit partagé.&lt;/strong&gt; Les deux sont des pare-feu sortants process-aware bâtis sur le même framework Apple &lt;code&gt;NEFilterDataProvider&lt;/code&gt;, donc le chemin réseau est dicté par macOS, pas par l’éditeur. Ni l’un ni l’autre ne fait de filtrage entrant, ils laissent ça à ALF natif. Versions de référence ici : Little Snitch 6.4.1 (sortie le 22 juin 2026, premier macOS Tahoe 26 supporté côté LS depuis la 6.3) et LuLu 4.3.2 (sortie le 3 mai 2026, GPL-3.0). Apple Silicon natif des deux côtés.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Granularité des règles.&lt;/strong&gt; Little Snitch te laisse cibler par process, domaine, port, protocole, interface réseau, horaire et profil. LuLu te laisse cibler par process, domaine ou IP, scope (process spécifique ou global), et durée. La différence n’est pas cosmétique : un horaire (autorise Spotify entre 8h et 22h, par exemple), un port précis, ou encore un profil dédié au train, c’est sur LS uniquement.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Profils réseau.&lt;/strong&gt; LS bascule automatiquement sur le SSID Wi-Fi ou l’interface (réseau de confiance vs réseau public, profil VPN adapté au contexte). C’est l’argument MacBook nomade qui n’a pas d’équivalent. LuLu a des profils depuis la 4.0, mais le switch est manuel. Tu choisis avant de te connecter, ou tu as oublié.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;DNS chiffré intégré.&lt;/strong&gt; LS livre du DoH, DoT, DoQ vers Quad9, Cloudflare, DNS4EU, Google (tu auras compris que ce n’est pas le choix MS), en option directe dans la conf de l’app. Tu n’as plus besoin d’un profil système séparé pour le DNS chiffré. LuLu a un toggle “Allow DNS Traffic” basique sur UDP:53, le DNS chiffré n’est pas son problème, à toi de gérer en amont (dnscrypt-proxy, AdGuard, etc.). Et attention au conflit Network Extension décrit plus bas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Wildcard DNS et le piège Chrome.&lt;/strong&gt; LS gère les re-routages CDN type Akamai ou iCloud sans casser les règles, parce qu’il fait de la résolution wildcard côté domaine. LuLu n’a pas le wildcard côté hostname (issue GitHub #379, demandée depuis longtemps, pas implémentée). Conséquence sérieuse côté Chrome : Chrome n’utilise pas &lt;code&gt;Network.framework&lt;/code&gt; Apple pour ses résolutions DNS, donc avec LuLu, le blocage par hostname est inopérant sur Chrome, fallback IP-only seulement (issue #410). Si tu vis dans Chrome, c’est une limite produit majeure, peu connue.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Network Monitor live et Research Assistant.&lt;/strong&gt; LS a une map réseau temps réel, un graphe de trafic 5 min, un inspector connexion par connexion, et un Research Assistant qui te dit ce que la communauté a déjà jugé pour ce process (réduit la fatigue whitelist). LuLu a Netiquette comme outil annexe, à lancer séparément, pas intégré au prompt. Pas de base communautaire de réputation.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Petits trucs qui s’additionnent.&lt;/strong&gt; LS a un mode silencieux (auto-allow ou auto-deny pendant un meeting, une présentation), des blocklists intégrées (trackers, pubs, malwares, MAJ quotidienne), des notifications acoustiques configurables par règle, des règles bidirectionnelles depuis LS 6, l’identification du process par signature de code (résiste au remplacement par un faux binaire au même chemin), et des statistiques d’usage par règle.&lt;/p&gt;
&lt;p&gt;LuLu n’a pas le mode silencieux automatisé (issue #540), pas de blocklist native, pas de sons, pas de bidir (sortant uniquement par design), identifie le process par chemin (plus fragile), et ne stocke pas de stats.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;CLI et automatisation.&lt;/strong&gt; LS livre une CLI mature &lt;code&gt;littlesnitch&lt;/code&gt; avec &lt;code&gt;export-model&lt;/code&gt;, &lt;code&gt;restore-model&lt;/code&gt;, &lt;code&gt;diagnostics&lt;/code&gt;, &lt;code&gt;switch-profile&lt;/code&gt;, &lt;code&gt;write-rules&lt;/code&gt;. Tu peux backup ton modèle de règles, le versionner, et le restaurer sur un autre Mac (avec mapping users si différents et mot de passe Keychain si export chiffré). Format JSON natif côté backup, format &lt;code&gt;.lsrules&lt;/code&gt; JSON côté subscription rule sets, les deux Git-friendly.&lt;/p&gt;
&lt;p&gt;LuLu n’a pas de CLI officielle, le format des règles est un plist binaire fragile, l’export user rules existe depuis 4.2.1 mais reste moins normalisé. Pour une fleet de plusieurs Macs gérée en infra-as-code, l’écart est direct.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Logs et SIEM.&lt;/strong&gt; LS écrit dans un subsystem &lt;code&gt;at.obdev.littlesnitch&lt;/code&gt; (unified log macOS), plus une DB SQLite locale exploitable, plus un decoder Wazuh propre à écrire en quelques lignes. LuLu écrit dans &lt;code&gt;os_log&lt;/code&gt; sans subsystem documenté, donc le tail Wazuh côté manager demande plus de regex et moins de structure. Si tu remontes tes événements vers un SIEM (Wazuh, Splunk, Elastic), LS te donne de la matière propre, LuLu te donne du best effort.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Limite macOS commune.&lt;/strong&gt; Un seul provider de filtrage actif à la fois sur le système. Activer LS, ou LuLu, ou un profil DNS chiffré tiers (NextDNS par exemple), pas les trois. C’est une contrainte Apple, pas un défaut produit. LS contourne en intégrant son DNS chiffré, LuLu non.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cycles de release.&lt;/strong&gt; LS, régulier, 6.3.1, 6.3.2, 6.3.3 sur septembre-novembre 2025 puis 6.4 et 6.4.1 en juin 2026, équipe stable depuis 22 ans. LuLu, plus erratique, 4.2.0 en octobre 2023, 4.3.0 en mars 2026, 4.3.2 en mai 2026, projet maintenu sur le temps disponible de Wardle et de la fondation Objective-See. Aucun des deux n’est en français côté UI.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Score brut :&lt;/strong&gt; Little Snitch couvre environ 22 fonctionnalités natives complètes sur 24 vérifiées. LuLu en couvre environ 10 complètes, 5 partielles, 9 absentes.&lt;/p&gt;
&lt;p&gt;L’écart est franc. Et il ne disparaîtra pas avec la prochaine release de LuLu : certaines absences (CLI, DNS chiffré, Network Monitor intégré) sont des choix architecturaux, pas des oublis.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;souveraineté--lulu-gagne&quot;&gt;Souveraineté : LuLu gagne&lt;/h2&gt;
&lt;p&gt;C’est le point le plus mal compris du débat francophone, donc on va être direct.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;LuLu est plus souverain que Little Snitch. Point.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Pourquoi ? Trois raisons qui s’empilent.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. LuLu est open source GPL-3.0.&lt;/strong&gt; Le code intégral est sur GitHub. Tu peux le lire, l’auditer, le compiler toi-même, le forker. Aucune backdoor n’est insérable sans laisser de trace publique. Aucun kill-switch éditeur n’est possible sans qu’un chercheur le repère. Aucune télémétrie cachée ne tient face à un &lt;code&gt;grep&lt;/code&gt; sur les sources. C’est le modèle de confiance vérifiable, pas le modèle de confiance déléguée.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Little Snitch est closed-source propriétaire.&lt;/strong&gt; L’éditeur viennois peut être impeccable (et il l’est, depuis 22 ans), tu n’as aucun moyen de le vérifier autrement qu’en lui faisant confiance. La signature Apple garantit que le binaire vient bien d’Objective Development. Elle ne garantit rien sur ce que ce binaire fait. Aucun audit indépendant formel n’a été publié sur Little Snitch (ni sur LuLu d’ailleurs). À ce jeu, l’OSS auditable l’emporte sur le closed-source non audité.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. L’argument “Wardle est américain donc juridiction US” ne tient pas.&lt;/strong&gt; Un argument circule depuis la sortie de la version Linux gratuite de Little Snitch en 2025, surtout côté marketing obdev : LuLu serait américain, donc moins souverain que LS qui est viennois. C’est faux, ou au mieux trompeur. Pour une raison simple : le code de LuLu est public, GPL-3.0, compilable maison. Aucune injonction américaine ne peut forcer Wardle à insérer une backdoor sans que la communauté la repère au prochain commit. Le binaire que tu compiles depuis tes sources locales n’a plus aucun lien juridictionnel avec Wardle. C’est précisément ce que l’OSS auditable rend impossible : la prise juridictionnelle non détectable. Pendant ce temps, Little Snitch reste closed-source côté UE, donc l’argument souveraineté s’inverse littéralement quand on regarde l’auditabilité plutôt que le siège social.&lt;/p&gt;
&lt;p&gt;Et Wardle n’est pas n’importe qui. Ex-NSA, fondateur d’Objective-See, créateur du Mac Malware Project, conférencier régulier Black Hat et DEFCON, organisateur d’Objective by the Sea. Sa recherche publique a documenté plusieurs bypass des firewalls macOS (BlackHat 2018), ce qui nourrit directement la défense de son propre produit. Sur la couche pare-feu sortant Mac, c’est une autorité.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Verdict souveraineté : LuLu, sans débat.&lt;/strong&gt; Si la souveraineté est ton critère absolu, l’arbitrage est trivial. Si quelqu’un te vend Little Snitch comme “plus souverain car éditeur UE”, il confond souveraineté juridictionnelle (vraie sur d’autres couches : Proton, DNS4EU) et auditabilité (la vraie question sur du code qui inspecte ton trafic).&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/05/LuLu-rules-window-01-prepub-art35.png&quot; alt=&quot;Fenêtre des règles LuLu, vue ensemble apps autorisées et bloquées&quot;&gt;
&lt;em&gt;LuLu fenêtre des règles, capture officielle objective-see.org. © Objective-See, GPL-3.0.&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;fonctionnalités--little-snitch-gagne&quot;&gt;Fonctionnalités : Little Snitch gagne&lt;/h2&gt;
&lt;p&gt;Sur l’autre axe, l’écart est tout aussi franc, mais dans l’autre sens.&lt;/p&gt;
&lt;p&gt;Cinq fonctionnalités font basculer le choix dès qu’on dépasse l’usage “je veux juste qu’une app arrête de phoner home”.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Profils réseau auto-switch sur SSID.&lt;/strong&gt; Tu es chez toi sur ton Wi-Fi domestique : règles permissives. Tu pousses ton MacBook sur le Wi-Fi d’un café : règles strictes (blocklist trackers activée, DNS chiffré forcé, apps bureautiques restreintes). Tu rentres au bureau : profil pro qui autorise les outils internes. Little Snitch bascule automatiquement sur le SSID. LuLu a des profils, mais le switch reste manuel. Pour un MacBook nomade, c’est un point à considérer.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. DNS chiffré intégré.&lt;/strong&gt; DoH, DoT, DoQ, choix du provider (Quad9 en Suisse, DNS4EU en UE, Cloudflare ou Google côté US). LuLu n’en a pas, et c’est plus pénible que ça en a l’air : tu peux toujours installer un profil DNS chiffré tiers (Quad9, DNS4EU), sauf que macOS interdit deux Network Extensions actives simultanément. Donc tu as LuLu, &lt;strong&gt;ou&lt;/strong&gt; ton profil DNS chiffré, pas les deux. Little Snitch contourne en intégrant le DNS chiffré directement dans son extension.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Wildcard hostname mature.&lt;/strong&gt; iCloud, Akamai, Adobe et la plupart des CDN modernes ré-routent constamment leurs IPs. Une règle “autorise &lt;code&gt;*.icloud.com&lt;/code&gt;” tient la route. Une règle “autorise 17.X.X.X” se casse à la première rotation. Little Snitch gère les wildcards proprement. LuLu non (issue #379, pas implémenté). Et sur Chrome, qui n’utilise pas le framework réseau Apple natif, LuLu retombe en filtrage IP-only, ce qui veut dire que ton blocage par hostname &lt;strong&gt;ne marche plus du tout&lt;/strong&gt; sur Chrome (issue #410). Limite produit majeure peu connue.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://macsouverain.com/content/images/2026/05/capture-05-ls-network-monitor-prepub-art35.png&quot; alt=&quot;Little Snitch Network Monitor, map live + liste process + graphe trafic + inspector connexion&quot;&gt;
&lt;em&gt;Little Snitch Network Monitor, capture officielle obdev.at. © Objective Development.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Network Monitor temps réel.&lt;/strong&gt; Pendant la phase whitelist, ou pendant un audit, tu veux voir le trafic vivant : qui parle à quoi, quel volume, quelle destination géographique. Little Snitch a une map live et un graphe 5 minutes intégrés à l’app. LuLu propose Netiquette, un outil annexe d’Objective-See, qu’il faut lancer séparément. C’est OSS et ça fait le job, mais c’est moins fluide.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. CLI scriptable pour la fleet.&lt;/strong&gt; C’est le point qui fait basculer dès qu’on a plus de deux Macs à gérer. Little Snitch expose un binaire &lt;code&gt;littlesnitch&lt;/code&gt; qui sait faire &lt;code&gt;export-model&lt;/code&gt; (backup JSON du modèle de règles), &lt;code&gt;restore-model&lt;/code&gt; (restauration depuis fichier JSON, avec map des UID utilisateurs et mot de passe Keychain si l’export est chiffré), &lt;code&gt;diagnostics&lt;/code&gt;, &lt;code&gt;switch-profile&lt;/code&gt;, &lt;code&gt;write-rules&lt;/code&gt;. Le workflow réel sur une fleet ressemble à ça : &lt;code&gt;ssh mac-source littlesnitch export-model &gt; rules.json&lt;/code&gt; côté Mac de référence, tu commites &lt;code&gt;rules.json&lt;/code&gt; dans un repo Git, et sur chaque Mac cible tu fais &lt;code&gt;scp rules.json mac-cible:&lt;/code&gt; puis &lt;code&gt;littlesnitch restore-model -m oldUID&gt;newUID rules.json&lt;/code&gt;. Pas un one-liner magique en pipe stdin, mais versionné, diff propre, code review possible. LuLu n’a pas de CLI officielle. Pour pousser des règles, tu copies un plist binaire fragile, qui change de format entre les versions, sans garantie de reproductibilité.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Verdict fonctionnalités : Little Snitch, sans débat.&lt;/strong&gt; Si tu veux la granularité maximale, les profils nomades, la scriptabilité fleet et l’intégration SIEM propre, l’arbitrage est vite fait.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;limites-communes-quon-ne-te-dit-pas-ailleurs&quot;&gt;Limites communes (qu’on ne te dit pas ailleurs)&lt;/h2&gt;
&lt;p&gt;Avant de trancher, quatre limites qui s’appliquent &lt;strong&gt;aux deux&lt;/strong&gt; outils. Honnêteté radicale, on ne fait pas semblant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Apple apps qui bypass les Network Extensions.&lt;/strong&gt; Depuis Big Sur, Apple a une whitelist d’apps système exemptées de tout filtrage &lt;code&gt;NEFilterDataProvider&lt;/code&gt; tiers. Apple Mail, App Store, certains services iCloud passent à travers Little Snitch comme à travers LuLu. Ni l’un ni l’autre ne voit 100 % du trafic Apple natif. Ce n’est pas un bug des outils, c’est une décision d’Apple, et c’est documenté (Michael Tsai 2020).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Conflit Network Extensions.&lt;/strong&gt; macOS n’autorise qu’&lt;strong&gt;un seul&lt;/strong&gt; provider de filtrage réseau actif à la fois. Tu actives Little Snitch, &lt;strong&gt;ou&lt;/strong&gt; LuLu, &lt;strong&gt;ou&lt;/strong&gt; un profil DNS chiffré tiers (NextDNS, DNS4EU), pas les trois. C’est une contrainte plateforme, pas un défaut produit.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Pas d’audit indépendant formel.&lt;/strong&gt; Ni Little Snitch ni LuLu n’ont eu d’audit tiers publié type Cure53, Trail of Bits ou ANSSI/CSPN. C’est une limite à connaître. Côté LuLu, l’OSS GPL-3.0 compense (audit communautaire continu). Côté Little Snitch, le track record 22 ans sans incident majeur compense partiellement (un seul vuln code-signing 2018, fix avant disclosure). Mais sur la rigueur formelle, les deux outils sont au même niveau : zéro audit publié.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. La phase whitelist est un coût caché.&lt;/strong&gt; Pendant les premiers jours d’usage, tu vas être prompted toutes les deux minutes. Ton OS, tes apps, ton anti-virus, ta sauvegarde, ton client mail, chacun veut joindre quelque chose. Compte une à deux semaines de friction sérieuse avant que ton modèle de règles soit stable. C’est vrai avec les deux outils. Si tu n’as pas la patience, désactive plutôt que de tout autoriser sans regarder (auto-allow par défaut casse l’intérêt même de l’outil).&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;combien-ça-coûte-vraiment&quot;&gt;Combien ça coûte vraiment&lt;/h2&gt;
&lt;p&gt;LuLu, c’est zéro euro. Pas de freemium, pas de tier payant, dons libres via Patreon. Si tu veux soutenir Wardle et la fondation Objective-See, fais-le. Ce n’est pas obligatoire pour utiliser le produit.&lt;/p&gt;
&lt;p&gt;Little Snitch, c’est plus subtil. La grille publique obdev.at, capture vérifiée le 5 mai 2026, propose cinq formules. La &lt;strong&gt;Single License&lt;/strong&gt; à 59 € pour un Mac. La &lt;strong&gt;Family License&lt;/strong&gt; à 115 €, sur laquelle obdev ne précise pas combien de Macs sont couverts sur la page order, donc à clarifier auprès du support avant achat. La &lt;strong&gt;Multi License&lt;/strong&gt; explicite, 5 Macs à 239 € (environ 48 € par Mac) ou 10 Macs à 419 € (environ 42 € par Mac). Et le &lt;strong&gt;Snitch Bundle&lt;/strong&gt; (Little Snitch + Micro Snitch, le contrôle micro/caméra du même éditeur) à 63,49 € pour un Mac.&lt;/p&gt;
&lt;p&gt;Licence &lt;strong&gt;perpétuelle&lt;/strong&gt;, pas d’abonnement. Maj majeure (5 → 6 par exemple) = upgrade payant à tarif réduit. Sur la durée, tu payes une fois, tu uses jusqu’à la prochaine bascule majeure.&lt;/p&gt;
&lt;p&gt;Pour une fleet 5 Macs en Multi License, le coût réel est de &lt;strong&gt;environ 48 € par Mac&lt;/strong&gt;, en licence perpétuelle. Pour 10 Macs, &lt;strong&gt;environ 42 € par Mac&lt;/strong&gt;. C’est un calcul que personne ne fait, mais qui change l’équation comparée au “59 € le Single Mac” cité partout.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;verdict-à-deux-axes&quot;&gt;Verdict à deux axes&lt;/h2&gt;
&lt;p&gt;Pas de gagnant unique. Deux axes, deux gagnants, un choix qui dépend de &lt;strong&gt;ton critère prioritaire&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Si la souveraineté est ton critère absolu : LuLu.&lt;/strong&gt;
Open source GPL-3.0, sources auditables, binaire compilable maison, auteur de référence sécurité Mac. Aucune prise juridictionnelle non détectable. Gratuit. Tu acceptes en échange une granularité plus faible, pas de profils auto, pas de DNS chiffré intégré, pas de CLI fleet. Pour un Mac unique, usage personnel, blocage process basique, c’est largement suffisant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Si la richesse fonctionnelle est ton critère absolu : Little Snitch.&lt;/strong&gt;
Profils auto-switch SSID, DNS chiffré intégré, wildcard hostname, Network Monitor live, CLI scriptable, intégration Wazuh propre. Tu acceptes en échange le closed-source (avec un éditeur viennois stable depuis 22 ans, mais non auditable), un coût licence (de 42 à 59 € par Mac selon le pack), pas de version française. Pour une fleet familiale ou TPE, un usage nomade MacBook, ou une intégration SIEM sérieuse, c’est l’outil.&lt;/p&gt;
&lt;p&gt;Aucun des deux n’est “meilleur dans l’absolu”. Ils répondent à deux questions différentes.&lt;/p&gt;
&lt;p&gt;Et si tu hésites encore : commence par LuLu. Gratuit, OSS, deux clics à installer. Si après deux mois tu sens que la granularité te manque, le wildcard te frustre, ou que la fleet à scripter devient une corvée, passe à Little Snitch en connaissance de cause. Le contraire (commencer par LS payant et redescendre vers LuLu) coûte 59 € de plus pour rien.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Aucune affiliation Objective Development, aucun lien commercial avec Objective-See. Cet article ne touche pas un centime sur les achats Little Snitch.&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;voir-aussi&quot;&gt;Voir aussi&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/privacy-macos-les-parametres-a-changer-immediatement/&quot;&gt;Les réglages privacy macOS à changer en 15 minutes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/apple-silicon-securite-secure-enclave/&quot;&gt;Apple Silicon et Secure Enclave : ce que ton Mac protège vraiment&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/souverainete-digitale-en-pratique/&quot;&gt;Souveraineté digitale en pratique&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/securite-email-client-mail/&quot;&gt;Sécurité email et client mail sur Mac&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sources&quot;&gt;Sources&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Les éditeurs eux-mêmes&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.obdev.at/products/littlesnitch/index.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Objective Development (obdev.at)&lt;/a&gt;, l’entreprise autrichienne qui développe Little Snitch depuis 2003 : page produit, &lt;a href=&quot;https://www.obdev.at/littlesnitch/releasenotes.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;notes de version&lt;/a&gt;, &lt;a href=&quot;https://obdev.at/press/pr/2024-05-21-Objective-Development-Releases-Little-Snitch-6.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;communiqués&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://objective-see.org/products/lulu.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Objective-See (objective-see.org)&lt;/a&gt;, la fondation de Patrick Wardle, ex-NSA devenu chercheur en sécurité Mac, qui publie LuLu gratuitement&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Le code et la doc technique&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/objective-see/LuLu&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Le code source de LuLu sur GitHub&lt;/a&gt;, librement consultable, avec les discussions publiques entre l’auteur et les utilisateurs (bugs, limitations : &lt;a href=&quot;https://github.com/objective-see/LuLu/issues/280&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;#280&lt;/a&gt;, &lt;a href=&quot;https://github.com/objective-see/LuLu/issues/379&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;#379&lt;/a&gt;, &lt;a href=&quot;https://github.com/objective-see/LuLu/issues/410&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;#410&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developer.apple.com/documentation/networkextension/nefilterdataprovider&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;La documentation Apple de NEFilterDataProvider&lt;/a&gt;, l’interface système que les deux logiciels utilisent depuis qu’Apple a fermé l’ancienne méthode en 2019&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Les analyses indépendantes&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.macg.co/logiciels/2024/05/little-snitch-6-gere-encore-plus-finement-les-connexions-reseau-du-mac-143869&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;MacGeneration&lt;/a&gt;, site français de référence sur l’écosystème Apple, pour la revue de Little Snitch 6&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://eclecticlight.co/2019/08/09/firewalls-phoning-home-and-whitelists/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Howard Oakley (The Eclectic Light Company)&lt;/a&gt;, ingénieur britannique qui décortique les entrailles de macOS, pour comprendre comment ces pare-feu s’intègrent au système&lt;/li&gt;
&lt;li&gt;Patrick Wardle lui-même, pour &lt;a href=&quot;https://www.patreon.com/posts/just-released-v4-137905009&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;l’annonce LuLu v4 sur son Patreon&lt;/a&gt; (2025) où il documente la refonte complète du pare-feu&lt;/li&gt;
&lt;/ul&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>privacy</category><category>mac</category><category>comparatif</category><category>pare-feu</category><category>little-snitch</category><category>lulu</category><category>securite</category><category>souverainete</category><category>comparatifs</category><enclosure url="https://macsouverain.com/content/images/2026/07/feature-little-snitch-vs-lulu-pare-feu-sortant-mac.png" length="0" type="image/png"/></item><item><title>Proton Meet : Visio chiffrée E2EE, pour Privacy Max</title><link>https://macsouverain.com/proton-meet-visio-chiffree/</link><guid isPermaLink="true">https://macsouverain.com/proton-meet-visio-chiffree/</guid><description>Proton Meet chiffre tes appels de bout en bout via MLS. Même Proton ne peut pas espionner tes réunions. Ce que ça change vraiment vs Zoom, Teams et Google Meet.</description><pubDate>Thu, 30 Apr 2026 10:24:38 GMT</pubDate><content:encoded>&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Tu organises une réunion Zoom avec ton comptable pour parler de chiffres. Ou un appel Teams avec un client pour finaliser un contrat. Tu fais confiance à l’icône de cadenas dans le navigateur.&lt;/p&gt;
&lt;p&gt;Problème : ce cadenas protège le transport des données, pas le contenu. Zoom, Teams et Google Meet déchiffrent ton appel sur leurs serveurs par défaut pour pouvoir traiter la vidéo, la qualité audio, les sous-titres automatiques. Ça s’appelle du chiffrement en transit, pas du chiffrement de bout en bout. La nuance est massive. Les trois proposent un mode E2EE optionnel, mais il désactive la plupart des fonctionnalités intelligentes et reste invisible à 99% des usages.&lt;/p&gt;
&lt;p&gt;Proton a lancé &lt;a href=&quot;https://proton.me/meet&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Proton Meet&lt;/a&gt; le 31 mars 2026. La promesse tient en une phrase : même Proton ne peut pas accéder à tes appels, ton partage d’écran ou ton chat. Les clés de déchiffrement ne quittent jamais les appareils des participants, point. On va voir ce que ça signifie concrètement, pour qui ça vaut vraiment le coup, et où sont les limites réelles.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/28-capture-01-hero.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Page d&amp;#x27;accueil Proton Meet — &amp;#x22;Video calls that keep your conversations private&amp;#x22; avec la mention du chiffrement de bout en bout&quot;&gt;
&lt;/figure&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-zoom-et-teams-font-de-tes-réunions&quot;&gt;Ce que Zoom et Teams font de tes réunions&lt;/h2&gt;
&lt;p&gt;Commençons par poser le contexte. Quand tu utilises Zoom, Google Meet ou Microsoft Teams, tes données audio et vidéo transitent chiffrées entre ton appareil et leurs serveurs. Jusque-là, rien de choquant. Mais sur leurs serveurs, ces données sont déchiffrées pour être traitées.&lt;/p&gt;
&lt;p&gt;Pourquoi ? Parce que toutes les fonctionnalités “intelligentes” que tu utilises quotidiennement l’exigent. Les sous-titres automatiques, la suppression de bruit, les flous d’arrière-plan, l’optimisation adaptative de la qualité vidéo : tout ça nécessite d’accéder au contenu brut de ton appel. Ce modèle s’appelle le chiffrement en transit, et il est parfaitement légal, largement documenté dans les conditions d’utilisation que personne ne lit.&lt;/p&gt;
&lt;p&gt;Ce que ça implique concrètement :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Zoom peut être contraint par injonction judiciaire américaine (CLOUD Act) de livrer le contenu de tes appels (sauf si tu as activé son mode E2EE optionnel, ce qui n’est jamais le défaut)&lt;/li&gt;
&lt;li&gt;Google peut nourrir le profil personnel associé à ton compte avec les métadonnées de tes appels Meet (qui, quand, durée) si tu utilises un compte Google grand public. En Workspace, contractuellement Google ne s’en sert pas pour la pub. Mais il les garde quand même (audit, “service improvement”, CLOUD Act). Pas zero-knowledge pour autant.&lt;/li&gt;
&lt;li&gt;Microsoft Teams stocke les métadonnées de tes réunions (qui, quand, combien de temps, avec qui) dans ses systèmes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Zoom ne lit probablement pas tes appels d’affaires de façon systématique. Mais techniquement et légalement, il le peut. C’est cette possibilité qui pose problème, pas l’intention déclarée.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/quest-ce-que-la-souverainete-digitale-en-pratique/&quot;&gt;Qu’est-ce que la souveraineté digitale en pratique&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;comment-proton-meet-fonctionne-différemment&quot;&gt;Comment Proton Meet fonctionne différemment&lt;/h2&gt;
&lt;p&gt;Le chiffrement de bout en bout — E2EE — change radicalement le modèle. Tes données ne sont jamais accessibles en clair sur les serveurs de Proton, parce que les clés de déchiffrement ne quittent jamais tes appareils et ceux de tes interlocuteurs.&lt;/p&gt;
&lt;p&gt;Proton Meet utilise le protocole &lt;strong&gt;MLS — Messaging Layer Security&lt;/strong&gt; — développé par l’IETF, le même organisme qui standardise les protocoles fondamentaux d’internet. MLS est conçu spécifiquement pour les groupes : il gère efficacement les entrées et sorties de participants en cours d’appel sans avoir à re-chiffrer l’intégralité de la session à chaque fois, un problème technique que les implémentations naïves de E2EE rencontraient.&lt;/p&gt;
&lt;p&gt;Ce que ça couvre en pratique :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;L’audio et la vidéo, évidemment&lt;/li&gt;
&lt;li&gt;Le partage d’écran, intégralement&lt;/li&gt;
&lt;li&gt;Le chat en temps réel pendant l’appel&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ce que “même Proton ne peut pas voir” signifie techniquement : les serveurs de Proton voient passer des paquets chiffrés qu’ils ne peuvent pas déchiffrer. Ils savent qu’une réunion a lieu (ils en gèrent la signalisation), mais pas ce qui s’y dit, se montre ou s’écrit.&lt;/p&gt;
&lt;p&gt;Le code de Proton Meet est open source. Proton fait régulièrement auditer ses produits par des cabinets indépendants (Mail, VPN, Drive, Pass) ; un audit dédié à Meet est attendu suite au lancement. L’open source permet à n’importe quel chercheur en sécurité de vérifier que les affirmations correspondent à l’implémentation réelle.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/28-capture-02-mls-v2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;La section MLS de Proton Meet : chiffrement Messaging Layer Security expliqué sur le site officiel&quot;&gt;
&lt;/figure&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-plans-et-ce-quils-couvrent&quot;&gt;Les plans et ce qu’ils couvrent&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Version gratuite :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Jusqu’à 50 participants&lt;/li&gt;
&lt;li&gt;Durée maximum : 1 heure par appel&lt;/li&gt;
&lt;li&gt;Compte Proton requis pour créer la réunion ; aucun compte requis pour les participants invités (un lien dans le navigateur suffit)&lt;/li&gt;
&lt;li&gt;Création instantanée de lien de réunion, partage en un clic&lt;/li&gt;
&lt;li&gt;Partage d’écran et chat inclus&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pour un indépendant qui veut faire une réunion client sans friction, c’est utilisable immédiatement. Tu crées le lien, tu l’envoies, ton client clique, l’appel démarre dans son navigateur. Aucune installation, aucun compte Proton requis pour les participants.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Meet Professional (à partir de $7,99 USD/utilisateur/mois, inclus dans les plans Workspace) :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Jusqu’à 250 participants&lt;/li&gt;
&lt;li&gt;Durée : jusqu’à 24 heures par appel&lt;/li&gt;
&lt;li&gt;Fonctionnalités de modération avancées&lt;/li&gt;
&lt;li&gt;Intégration Proton Calendar&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Proton Workspace (Standard et Premium), pour les équipes :&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Proton Workspace positionne Meet comme composant d’une suite complète qui inclut Mail, Calendar, Drive, Docs, Sheets, VPN, Pass (gestionnaire de mots de passe d’équipe) et Lumo, un assistant IA privacy-first disponible sur le plan Premium.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Workspace Standard&lt;/strong&gt; (€12,99/utilisateur/mois en facturation annuelle) : 1 To par utilisateur, Meet jusqu’à 100 participants, 15 domaines email, Mail, Calendar, Drive, Docs, Sheets, VPN, Pass.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Workspace Premium&lt;/strong&gt; (€19,99/utilisateur/mois en facturation annuelle) : 3 To par utilisateur, Meet jusqu’à 250 participants, 20 domaines email, Lumo (IA privacy-first) inclus, assistant rédaction email, policies de retention configurables.&lt;/p&gt;
&lt;p&gt;Workspace vise les équipes qui veulent remplacer Google Workspace ou Microsoft 365 par une alternative entièrement chiffrée. C’est la cible PME directe : tu gardes une organisation collaborative complète (email, documents, réunions, mots de passe) mais tu bascules sur une juridiction suisse avec un modèle économique fondé sur les abonnements, pas sur la publicité ou la revente de données.&lt;/p&gt;
&lt;p&gt;Proton AG est certifié ISO 27001 et audité SOC 2 Type II. Workspace est compatible RGPD, HIPAA et CCPA.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/28-capture-03-workspace-v2.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Proton Workspace Standard vs Premium — comparatif fonctionnalités et stockage&quot;&gt;
&lt;/figure&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-change-concrètement-pour-un-indépendant-ou-une-pme&quot;&gt;Ce que ça change concrètement pour un indépendant ou une PME&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Pour les cas où la confidentialité compte :&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Appel avec un avocat pour discuter d’un litige. Réunion avec ton expert-comptable sur une restructuration. Échange avec un client qui partage des données sensibles. Revue de code en équipe sur un projet confidentiel (et tu devrais considérer que tous tes projets le sont).&lt;/p&gt;
&lt;p&gt;Dans ces situations, la différence entre “chiffré en transit” et “chiffré de bout en bout” n’est pas théorique. C’est la différence entre un document dans une enveloppe et un document dans un coffre que le transporteur ne peut pas ouvrir.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Zéro friction pour tes interlocuteurs :&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Ton client n’a pas besoin de créer un compte, de télécharger une app, ni de te demander “c’est quoi Proton ?”. Tu lui envoies un lien, il clique, il est dans la réunion depuis son navigateur. C’est le niveau de friction de Zoom ou Google Meet, avec le niveau de confidentialité d’une infrastructure chiffrée de bout en bout. Pour convaincre ton équipe, ou encore un client réticent à “changer d’outil”, c’est l’argument le plus solide.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour les équipes à distance :&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Si ton équipe est déjà dans l’écosystème Proton (Mail, Drive), Workspace Standard ou Premium donne accès à Meet avec des limites de participants et de durée cohérentes avec la plupart des usages professionnels. La promesse de ne pas avoir à sortir de l’écosystème souverain pour une visio est réelle.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que Proton Meet ne fait pas (encore) :&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Pas d’enregistrement cloud côté Proton : architecturalement cohérent avec le E2EE, le serveur ne peut pas enregistrer ce qu’il ne peut pas déchiffrer. L’enregistrement local côté hôte reste possible si tu en as besoin (conformité, documentation). Pas non plus de transcription auto, sous-titres en direct ou résumés IA : ces features nécessitent un traitement serveur du contenu en clair, incompatible avec E2EE strict. C’est l’arbitrage assumé : privacy ou IA serveur, pas les deux.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/apple-mail-vs-gmail-vs-proton-mail/&quot;&gt;Apple Mail vs Gmail vs Proton Mail : le comparatif honnête&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-limites-réelles-à-connaître&quot;&gt;Les limites réelles à connaître&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;La version gratuite est limitée.&lt;/strong&gt; Une heure par appel, cela peut s’avérer insuffisant pour un entretien client large, un atelier ou une formation. 50 participants suffisent pour la grande majorité des réunions d’équipe, mais c’est juste pour un webinaire.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La migration de l’écosystème a un coût.&lt;/strong&gt; Si ton équipe est habituée à Teams avec ses intégrations Office 365, passer à Workspace n’est pas transparent. Les docs Proton (Docs, Sheets) sont fonctionnels mais n’ont pas encore la maturité de Google Workspace sur les fonctionnalités avancées de collaboration. C’est un choix, pas une amélioration sur tous les tableaux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Les intégrations tierces sont limitées.&lt;/strong&gt; Proton Meet s’intègre nativement avec Proton Calendar pour l’insertion de liens de réunion. En dehors de ça, les intégrations avec des outils comme Slack, Notion ou des CRM sont absentes ou limitées, là où Zoom et Teams ont des années d’écosystème derrière eux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le prix par rapport à la concurrence.&lt;/strong&gt; La bonne comparaison n’est pas Meet Pro contre une autre ligne de visio. Il faut regarder l’angle des suites complètes.&lt;br&gt;
Proton Workspace Standard (€12,99/utilisateur/mois) contre Google Workspace Business Starter (~6,80 €/utilisateur/mois) ou Microsoft 365 Business Basic (~6 €/utilisateur/mois).&lt;/p&gt;
&lt;p&gt;Proton est environ deux fois plus cher. Google et Microsoft proposent E2EE en option mais ça désactive sous-titres auto, transcription, Copilot/Duet .&lt;/p&gt;
&lt;p&gt;Proton Meet ne propose pas non plus ces features, mais c’est par cohérence E2EE assumée dès le départ. Le delta de prix, c’est le coût d’un service privacy complet, qui vit de ton abonnement plutôt que de tes données.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/proton-bridge-apple-mail-mac/&quot;&gt;Proton Bridge + Apple Mail sur Mac : le chiffrement sans sacrifier le confort&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;Proton Meet est une visioconférence E2EE qui utilise le protocole MLS, open source, audité indépendamment, juridiction suisse. Lancement le 31 mars 2026.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Plan gratuit&lt;/strong&gt; : 50 participants, 1 heure. Tes invités rejoignent depuis leur navigateur, sans compte ni installation.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Meet Professional&lt;/strong&gt; : jusqu’à 250 participants, 24 heures, à partir de $7,99 USD/utilisateur/mois (inclus dans Workspace Standard et Premium).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Proton Workspace&lt;/strong&gt; : suite complète pour équipes avec apps Mail, Calendar, Drive, Docs, Sheets, Meet, VPN, Pass, en Standard et Premium (Lumo IA compris pour Premium).&lt;/p&gt;
&lt;p&gt;Ce n’est pas un remplacement universel de Zoom ou Teams. C’est la bonne option si la confidentialité architecturale de tes réunions compte pour toi, ou bien si tu es déjà dans l’écosystème Proton.&lt;/p&gt;
&lt;p&gt;Si tu veux une suite entièrement chiffrée et cohérente pour ton équipe, sans dépendre d’une infrastructure américaine soumise au CLOUD Act et à la juridiction 5 Eyes, et que tu veux que tes données n’abreuvent pas en plus une régie publicitaire, la suite Proton Workspace s’adresse à toi et à ton équipe. C’est un candidat très sérieux à évaluer.&lt;/p&gt;
&lt;p&gt;Pour un indépendant avec des appels clients inférieurs à une heure, le plan gratuit avec 50 participants max est largement suffisant. Pour une équipe qui veut migrer hors Google Workspace ou Microsoft 365 : Proton Workspace mérite une évaluation sérieuse.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire/&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>privacy</category><category>visio</category><category>proton</category><category>pme</category><category>informatif</category><enclosure url="https://macsouverain.com/content/images/2026/04/28-feature-proton-meet.png" length="0" type="image/png"/></item><item><title>Six mois et dix-neuf textes mondiaux, la terrible convergence</title><link>https://macsouverain.com/convergence-libertes-numeriques/</link><guid isPermaLink="true">https://macsouverain.com/convergence-libertes-numeriques/</guid><description>HR 8250, CSAR, verdict Meta, World ID, Online Safety Act. Six mois, dix-neuf textes, quatre continents. Une seule direction.</description><pubDate>Thu, 30 Apr 2026 08:43:55 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ juillet 2026.&lt;/strong&gt; Point de calendrier sur le volet CSAR : le trilogue du 4 mai a eu lieu, et le 9 juillet le Parlement a laissé passer la reconduction de Chat Control 1.0 (volontaire, E2E exclu) faute des 361 voix pour le bloquer, majorité contre. Le scanning obligatoire (2.0) décrit dans cette carte n’est pas tranché : il repart en trilogue en septembre. &lt;a href=&quot;https://macsouverain.com/radar-chat-control-1-adopte-par-defaut/&quot;&gt;Détails dans le radar&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Ta Privacy ? Elle n’est plus vraiment à toi.&lt;/p&gt;
&lt;p&gt;Personne ne te l’a confisquée d’un coup, non. Ça c’est pour les régimes pressés. On te la grignote juste petit à petit, lentement, pour que tu ne te rendes compte de rien.&lt;/p&gt;
&lt;p&gt;Un projet de loi à Washington qui fait de ton Mac un checkpoint d’identité. Un règlement européen qui remplace tes messages chiffrés par un mouchard. Un jury au Nouveau-Mexique qui colle 375 millions de dollars d’amendes à Meta pour avoir osé déployer du chiffrement fort.&lt;/p&gt;
&lt;p&gt;Six mois. Dix-neuf textes. Quatre continents. Une seule direction.&lt;/p&gt;
&lt;p&gt;Voici la carte.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;trois-mécaniques-une-seule-trajectoire&quot;&gt;Trois mécaniques, une seule trajectoire&lt;/h2&gt;
&lt;p&gt;Les dix-neuf textes que je vais te présenter ne se ressemblent pas en surface. Une loi américaine, un règlement européen, une décision de justice, un produit privé. Mais empilés, trois mécaniques émergent, et elles travaillent ensemble.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;M1, l’identification universelle.&lt;/strong&gt; Plus d’anonymat sur Internet, pas même pour les adultes. Chaque connexion, chaque inscription, chaque message demande une preuve d’identité.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;M2, le cassage du chiffrement bout-en-bout.&lt;/strong&gt; Le chiffrement reste sur le papier. Mais les contenus sont scannés avant qu’il s’applique, ou le déployer devient juridiquement risqué.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;M3, la centralisation chez deux ou trois acteurs.&lt;/strong&gt; Apple, Google, Microsoft, ou un Sam Altman décidé à monopoliser la vérification d’humanité. Tu ne te logues plus sur un site, tu te logues à travers un courtier d’identité.&lt;/p&gt;
&lt;p&gt;La plupart de ces textes sont passés sous le radar, parce qu’ils sont arrivés un par un. Quand tu les vois ensemble, le tableau change.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;m1-lidentification-universelle-sans-exception-adulte&quot;&gt;M1, l’identification universelle sans exception adulte&lt;/h2&gt;
&lt;p&gt;Le 13 avril 2026, Josh Gottheimer (D-NJ) et Elise Stefanik (R-NY) déposent &lt;a href=&quot;https://www.congress.gov/bill/119th-congress/house-bill/8250/text&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;HR 8250 Parents Decide Act&lt;/a&gt; à la Chambre des représentants américaine. Le texte oblige Apple, Google et Microsoft à exiger une date de naissance à la création de tout compte OS, et à exposer ensuite cette information aux éditeurs d’apps via une interface dédiée. Pas d’exception adulte. Tu installes un Mac neuf en 2027, le système t’identifie, et toute app peut le lire.&lt;/p&gt;
&lt;p&gt;Andy Yen, CEO de Proton, &lt;a href=&quot;https://www.theregister.com/2026/04/23/proton_ceo_age_checks_id_checkpoint/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;a synthétisé l’enjeu en une phrase&lt;/a&gt; : « Nous ne pouvons pas accepter un monde où chaque adulte est censé présenter une pièce d’identité comme prix d’entrée pour aller sur Internet. » Huit jours plus tard, l’&lt;a href=&quot;https://ilga.gov/Legislation/BillStatus/FullText?GAID=18&amp;#x26;DocNum=5511&amp;#x26;DocTypeID=HB&amp;#x26;LegId=167486&amp;#x26;SessionID=114&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Illinois HB 5511&lt;/a&gt; est voté à la Chambre de l’État, 82 contre 27. Logique identique, déplacer la vérification d’âge depuis chaque app vers l’OS, plus difficile à contourner parce que l’OS est lié au compte vérifié et au moyen de paiement.&lt;/p&gt;
&lt;p&gt;La logique n’est pas uniquement américaine. Le UK &lt;a href=&quot;https://www.ofcom.org.uk/online-safety/protecting-children/age-checks-to-protect-children-online&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Online Safety Act&lt;/a&gt; est entré en application le 25 juillet 2025. Au premier trimestre 2026, l’Ofcom a ouvert plus de quatre-vingt-dix enquêtes et prononcé six amendes, dont 1,35 million de livres contre 8579 LLC. L’Australie a activé son &lt;a href=&quot;https://www.esafety.gov.au/about-us/industry-regulation/social-media-age-restrictions&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Online Safety Amendment&lt;/a&gt; le 10 décembre 2025, étendu à dix plateformes. Le Brésil a promulgué la loi 15.211/2025 en septembre 2025. Et le 14 avril 2026, la Commission européenne dévoile son app de vérification d’âge harmonisée pour les vingt-sept États membres.&lt;/p&gt;
&lt;p&gt;Au passage, elle est contournée en deux minutes par un consultant britannique, Paul Moore. Pour les détails, tu peux lire le radar depuis le lien ci-dessous. À pleurer de rire, vraiment. Ou à pleurer tout court, selon.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/radar-eu-age-verification-hackee-avril-2026/&quot;&gt;Vérification d’âge EU, hackée en 2 minutes, la surveillance mal codée&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Le 2 mars 2026, &lt;a href=&quot;https://www.euronews.com/next/2026/03/02/dangerous-and-socially-unacceptable-experts-warn-against-rushed-rollout-of-online-age-chec&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;371 chercheurs en cybersécurité de 29 pays&lt;/a&gt; signent une lettre ouverte. Ronald Rivest, Turing Award et co-inventeur de RSA. Bart Preneel, président de l’IACR. Pas exactement des activistes du dimanche.&lt;/p&gt;
&lt;p&gt;La lettre soutient que la méthode n’est pas sûre et risque d’exposer les utilisateurs à des malwares ou à des arnaques sur les sites illicites qui n’implémentent pas la vérification, ou de divulguer plus d’informations personnelles aux fournisseurs de services. Leur conclusion sur les déploiements en cours : « dangereux et socialement inacceptable ».&lt;/p&gt;
&lt;p&gt;Pour qu’un système de vérification d’âge fonctionne réellement, écrivent-ils, il faudrait des « pièces d’identité émises par l’État, avec une protection cryptographique forte, pour chaque interaction avec le service ».&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;m2-casser-le-chiffrement-dans-la-loi-ou-dans-la-jurisprudence&quot;&gt;M2, casser le chiffrement dans la loi ou dans la jurisprudence&lt;/h2&gt;
&lt;p&gt;Côté UE, le dossier est connu, je l’ai déjà détaillé.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/chat-control-csar-surveillance-messageries-chiffrees/&quot;&gt;Chat Control 2.0 : l’UE veut lire tes messages avant que tu les envoies&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/nis2-csar-contradiction-ue-chiffrement-surveillance/&quot;&gt;NIS2 oblige les entreprises à chiffrer. CSAR leur interdit de le faire vraiment.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La nouveauté, c’est l’aveu. Vera Jourova, Vice-Présidente de la Commission, &lt;a href=&quot;https://x.com/edri/status/1803775436633031048&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;a reconnu publiquement&lt;/a&gt; au sommet de l’EDPS que le CSAR briserait le chiffrement. Trois ans de discours « CSAR ne casse pas le chiffrement » de Ylva Johansson, démentis par sa propre collègue. Le prochain trilogue est fixé au 4 mai 2026, l’adoption visée en juillet. Le compteur tourne.&lt;/p&gt;
&lt;p&gt;Mais l’attaque la plus brutale contre le chiffrement bout-en-bout vient des États-Unis, et elle ne ressemble pas à une loi. De la jurisprudence, et c’est bien pire.&lt;/p&gt;
&lt;p&gt;Le 24 mars 2026, un jury du Nouveau-Mexique &lt;a href=&quot;https://nmdoj.gov/press-release/new-mexico-department-of-justice-wins-landmark-verdict-against-meta/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;condamne Meta à 375 millions de dollars&lt;/a&gt; de pénalités civiles. Le procureur général a utilisé la décision de Meta de déployer le chiffrement bout-en-bout dans Messenger comme preuve d’irresponsabilité envers les mineurs.&lt;/p&gt;
&lt;p&gt;Et la séquence qui suit est encore plus parlante que le verdict : &lt;strong&gt;pendant le procès&lt;/strong&gt;, avant même la sentence, &lt;strong&gt;Meta annonce le retrait de l’E2E des messages directs Instagram&lt;/strong&gt;. Effet programmé au 8 mai 2026. La simple existence du procès aura suffi à les décider.&lt;/p&gt;
&lt;p&gt;Et le véritable problème de la jurisprudence, c’est qu’un seul juge aura suffi, pour que tous les autres puissent reprendre son arrêt dans d’autres jugements. Avec de lourdes indemnisations à la clé, ce qui aura pour effet, dans un horizon très bref, de décourager les startups qui viseraient à chiffrer leurs services. Parce que 375M$ pour Meta, c’est de la broutille. Pour une startup, c’est la mort assurée.&lt;/p&gt;
&lt;p&gt;Plus efficace encore, qu’une loi ou un règlement.&lt;/p&gt;
&lt;p&gt;Pour autant que ce soit tentant, &lt;strong&gt;on ne peut pas jeter toute la pierre au juge&lt;/strong&gt;. Le comportement irresponsable (volontaire ?) de Meta a façonné la décision. Je m’explique :&lt;/p&gt;
&lt;p&gt;Une note interne signée Monika Bickert (directrice de la politique de contenu de Meta à l’époque) a fini dans le dossier d’instruction. Ironie noire absolue : « Nous nous apprêtons à faire une mauvaise chose en tant qu’entreprise. C’est tellement irresponsable. » Bickert ne critiquait pas le chiffrement en lui-même, elle alertait sa hiérarchie sur le timing.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Activer l’E2E par défaut&lt;/strong&gt; sur Messenger sans avoir d’abord trouvé comment continuer à détecter les abus sur mineurs, &lt;strong&gt;ça revenait à aveugler volontairement les systèmes de signalement de Meta&lt;/strong&gt;. Le procureur du Nouveau-Mexique a sorti cette note pour démontrer la chose la plus difficile à prouver dans une affaire civile : que &lt;strong&gt;Meta savait que sa décision laisserait passer des prédateurs&lt;/strong&gt;, et l’a prise quand même.&lt;/p&gt;
&lt;p&gt;Là, c’est vraiment, vraiment important. Il ne faut pas se tromper sur le rôle de chacun dans cette affaire. &lt;strong&gt;Meta n’est pas victime du procès&lt;/strong&gt;. Pour Zuckerberg, l’E2E n’a jamais été une valeur, c’était un argument marketing pour rester compétitif face à WhatsApp et Signal.&lt;/p&gt;
&lt;p&gt;C’est exactement ce qui sépare Meta de Signal ou Proton. Signal ne peut pas retirer l’E2E, ce serait dissoudre le produit. Proton non plus, sa proposition entière repose dessus. Meta peut, parce que pour elle, l’E2E était une option de cuisine, pas une fondation.&lt;/p&gt;
&lt;p&gt;Et c’est précisément cela qui crée le précédent que les juges pourront brandir face à Signal ou Proton ensuite. « Voyez, même Meta a reculé, vous pouvez bien le faire aussi. » &lt;strong&gt;Meta ne subit pas la chute de l’E2E. Elle y participe activement&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Et c’est aussi la conclusion de Bruce Schneier, sommité mondiale de la cryptographie. Déployer du chiffrement fort sur ton produit peut désormais être attaqué juridiquement comme un acte de mauvaise foi. Pas illégal en soi. Juste… dommageable au civil, devant un juge américain.&lt;/p&gt;
&lt;p&gt;Le tableau US se complète avec &lt;strong&gt;FISA Section 702&lt;/strong&gt;. La loi expirait le 20 avril 2026. Le Congrès a voté une extension de dix jours en urgence et bloqué d’avance l’amendement « exigence de mandat ». &lt;strong&gt;La NSA aspire les communications&lt;/strong&gt; &lt;strong&gt;d’étrangers ciblés&lt;/strong&gt; hors des États-Unis, les Américains qui leur écrivent rentrent alors dans la base, &lt;strong&gt;le FBI l’interroge sans mandat&lt;/strong&gt;. Sept mille requêtes US-person en 2025, sous-déclarées de l’aveu du DOJ lui-même.&lt;/p&gt;
&lt;p&gt;À l’autre bout du monde, &lt;strong&gt;Hong Kong.&lt;/strong&gt; Le 23 mars 2026, les règles d’enforcement de la &lt;strong&gt;National Security Law&lt;/strong&gt; sont modifiées, &lt;strong&gt;la police peut désormais exiger tes mots de passe&lt;/strong&gt; et tes clés de chiffrement. &lt;strong&gt;Refuser est un délit pénal&lt;/strong&gt;. &lt;a href=&quot;https://www.schneier.com/blog/archives/2026/04/hong-kong-police-can-force-you-to-reveal-your-encryption-keys.html&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Schneier en a fait une note de blog&lt;/a&gt;. Hong Kong contraint frontalement. Les démocraties, elles, contournent par contrat (CSAR), par jurisprudence (Meta NM), ou par barrières d’âge au niveau de l’OS. &lt;strong&gt;Résultat équivalent, emballage différent&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Convergence sans concertation, mais convergence quand même.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;m3-courtiers-privés-et-publics-lidentité-comme-infrastructure&quot;&gt;M3, courtiers privés et publics, l’identité comme infrastructure&lt;/h2&gt;
&lt;p&gt;Une fois HR 8250 voté, ou Illinois HB 5511, &lt;strong&gt;Apple et Google deviennent courtiers d’âge&lt;/strong&gt;. Pas par choix, par contrainte légale. Techniquement, c’est juste une option régionale, le genre de switch qu’Apple bascule déjà pour le RGPD. &lt;strong&gt;Le vrai risque, c’est que les autres gouvernements voient le système tourner aux US et le copient&lt;/strong&gt;. Effet RGPD à l’envers, par mimétisme.&lt;/p&gt;
&lt;p&gt;Pendant que les États débattent, &lt;strong&gt;Sam Altman pousse son alternative privée&lt;/strong&gt;. Le 17 avril 2026, &lt;a href=&quot;https://techcrunch.com/2026/04/17/sam-altmans-project-world-looks-to-scale-its-human-verification-empire-first-stop-tinder/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;World ID annonce son intégration&lt;/a&gt; avec Tinder, Zoom, DocuSign, Okta, Shopify et VanEck. &lt;strong&gt;Dix-huit millions d’utilisateurs déjà vérifiés par scan d’iris&lt;/strong&gt; (l’Orb), dans cent soixante pays. Le pitch : « la première couche d’identité décentralisée pour l’humanité », face aux bots et aux deepfakes, que la même industrie IA produit en masse.&lt;/p&gt;
&lt;p&gt;C’est élégant. &lt;strong&gt;Tu génères le problème (deepfakes IA), tu vends la solution (scan d’iris)&lt;/strong&gt;. Au passage, tu construis une base biométrique privée à l’échelle planétaire, que tu connectes à Tinder, Zoom, DocuSign et Shopify. Le scanné devient bêta-testeur d’humanité gratuit, et paie en iris. &lt;strong&gt;L’industrie IA gagne encore plus de données gratuites, mais surtout surqualifiées&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;On peut difficilement faire mieux, en effet, que de pouvoir pister précisément un individu à travers tous les services qu’il utilise au quotidien. Je te dis pas la mine d’or !&lt;/p&gt;
&lt;p&gt;Côté étatique, le UK avance son &lt;a href=&quot;https://www.gov.uk/government/news/digital-driving-licence-coming-this-year&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;GOV.UK Wallet&lt;/a&gt; et son permis de conduire numérique, déploiement complet courant 2026. Rien d’obligatoire à ce stade, photocards physiques valides jusqu’en 2030. Mais l’infrastructure est là, prête à devenir obligatoire dès qu’un futur gouvernement l’aura décidé.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Trois acteurs&lt;/strong&gt; émergent comme &lt;strong&gt;courtiers d’identité dominants, Apple plus Google&lt;/strong&gt; côté OS, &lt;strong&gt;World ID côté privé global&lt;/strong&gt;, GOV.UK Wallet et ses jumeaux côté étatique. Personne ne s’est concerté. &lt;strong&gt;La convergence est politique, économique, structurelle&lt;/strong&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pourquoi-cette-convergence&quot;&gt;Pourquoi cette convergence&lt;/h2&gt;
&lt;p&gt;Ce n’est pas un complot. C’est plus ennuyeux que ça, &lt;strong&gt;c’est de la mécanique systémique&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;D’abord, l’imitation transatlantique&lt;/strong&gt;. Le UK Online Safety Act voté en 2023 sert de modèle. L’Australie le réplique en 2025. La Commission européenne le cite explicitement comme « bonne pratique » pour son app de vérification d’âge. HR 8250 et Illinois HB 5511 reprennent la même architecture six mois plus tard. Pas de coordination secrète, juste du « regarde, ça marche chez eux, copions ».&lt;/p&gt;
&lt;p&gt;Ensuite, &lt;strong&gt;le coût marginal nul pour Apple, Google et Microsoft&lt;/strong&gt;. Une fois &lt;strong&gt;l’infrastructure de vérification d’âge construite au niveau OS&lt;/strong&gt; pour un État, &lt;strong&gt;l’export vers les autres pays ne coûte rien de plus&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Enfin, &lt;strong&gt;le momentum réglementaire crée le marché privé&lt;/strong&gt;. Les plateformes cherchent des fournisseurs de vérification d’identité ? Worldcoin lève la main. Les États veulent leur wallet souverain ? Les intégrateurs (Thales, IDEMIA, Entrust) se positionnent sur les appels d’offres eIDAS 2.0. La régulation crée le besoin, le marché vend la solution.&lt;/p&gt;
&lt;p&gt;Le résultat est exactement ce que la &lt;a href=&quot;https://www.euronews.com/next/2026/03/02/dangerous-and-socially-unacceptable-experts-warn-against-rushed-rollout-of-online-age-chec&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;lettre des 371 chercheurs&lt;/a&gt; redoute, un système où chaque interaction avec un service en ligne suppose une preuve d’identité émise par un État ou par un courtier privé.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-contre-mouvements&quot;&gt;Les contre-mouvements&lt;/h2&gt;
&lt;p&gt;Finir sur une note totalement défaitiste serait malvenu.&lt;/p&gt;
&lt;p&gt;Le 1er avril 2026, le gouverneur Brad Little signe &lt;a href=&quot;https://legislature.idaho.gov/sessioninfo/2026/legislation/S1299/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Idaho SB 1299&lt;/a&gt;, qui interdit aux entités gouvernementales de l’État d’exiger un digital ID. Premier État américain à repousser frontalement, texte juridiquement solide et réplicable.&lt;/p&gt;
&lt;p&gt;Deux jours plus tard, le gouverneur Tony Evers du Wisconsin exerce un &lt;a href=&quot;https://www.404media.co/wisconsin-age-verification-bill-vetoed/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;veto AB 105&lt;/a&gt;, sur un projet de vérification d’âge pour sites adultes. Premier veto de gouverneur américain sur un projet de loi de vérification d’âge, trois objections argumentées, intrusion Privacy sur les adultes, absence de restrictions de partage, vulnérabilités exposant les internautes au vol et au chantage.&lt;/p&gt;
&lt;p&gt;Le 23 avril 2026, Thomas Massie (R-KY) et Lauren Boebert (R-CO) déposent &lt;a href=&quot;https://www.govtrack.us/congress/bills/119/hr8470/text&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;HR 8470 Surveillance Accountability Act&lt;/a&gt;. Mandat et cause probable exigés avant toute surveillance d’Américains, fermeture de la « faille des courtiers de données ». Bipartisan dans l’esprit, signe que le débat sur la surveillance traverse les deux partis.&lt;/p&gt;
&lt;p&gt;Et le 8 avril, la &lt;a href=&quot;https://itsocial.fr/logiciel-agilite/logiciel-agilite-actualites/la-dinum-lache-windows-pour-linux-et-impose-un-plan-de-souverainete-numerique-a-chaque-ministere-avant-lautomne/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;DINUM française&lt;/a&gt; annonce la migration de 2,5 millions de postes administration vers Linux. David Amiel, ministre du Budget, demande des plans ministériels avant l’automne 2026. Sept axes de réduction de dépendance, visio souveraine pour 200 000 agents fin 2026, 2,5 millions en 2027.&lt;/p&gt;
&lt;p&gt;Soyons honnêtes deux secondes. La France ne migre pas pour protéger la Privacy de ses fonctionnaires, elle s’en moque. Elle migre parce que dépendre de Microsoft coûte entre 500 et 800 millions d’euros de licences par an, et parce qu’un Trump 2.0 a fini de rappeler à Bruxelles et à Paris qu’un fournisseur américain peut être désactivé par décret de la Maison Blanche. Souveraineté budgétaire et souveraineté stratégique. Privacy nulle part.&lt;/p&gt;
&lt;p&gt;Mais c’est précisément pour ça que l’exemple est intéressant. &lt;strong&gt;Un État sort d’un stack hégémonique pour des raisons d’argent et de géopolitique&lt;/strong&gt;, pas par idéologie.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le résultat, par effet de bord&lt;/strong&gt;, c’est que ses &lt;strong&gt;2,5 millions de fonctionnaires arrêtent d’être télémétrés en continu&lt;/strong&gt; par Redmond.&lt;/p&gt;
&lt;p&gt;Ce qu’un État fait pour ses raisons, un citoyen peut le faire pour les siennes. Et protéger sa Privacy online n’est pas un crime, du moins pas encore.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sortir-techniquement-et-politiquement&quot;&gt;Sortir, techniquement et politiquement&lt;/h2&gt;
&lt;p&gt;J’utilise Proton Mail et un serveur de mail self-host Stalwart pour les emails, Matrix pour la messagerie instantanée, un réseau mesh Tailscale wireguard avec exit node Mullvad pour la sécu, un résolveur DNS unbound self-host, et divers autres outils open source pour ma souveraineté numérique.&lt;/p&gt;
&lt;p&gt;Ce n’est pas absolu, bien sûr, mais c’est déjà une énorme indépendance, une réelle Privacy, une importante limitation pour des tiers commerciaux, ou étatiques, à pouvoir me pister en continu.&lt;/p&gt;
&lt;p&gt;À part Proton, et l’hébergement de mes VPS chez Infomaniak, tous ces outils sont gratuits, open source, audités pour la plupart, et soutenus par des communautés dynamiques. C’est la preuve que la Privacy n’est pas morte et qu’elle intéresse, au contraire, nombre de personnes.&lt;/p&gt;
&lt;p&gt;Tu n’es certes pas obligé d’aller jusque là, même si pour ton activité pro en particulier, je te conseille vivement d’aller jusqu’à cet arsenal-là. Mais chaque geste que tu feras pour ta Privacy compte. C’est le droit inaliénable pour toi de disposer de tes données numériques, comme tu l’entends, et de définir avec qui tu les partages. C’est aussi fondamental que la liberté d’aller et venir.&lt;/p&gt;
&lt;p&gt;Si CSAR passe, si HR 8250 progresse, et que tu te sens concerné, le bon réflexe est de choisir des architectures dont la conception technique rend le scan de tes données impossible, et le tracking extrêmement pénible.&lt;/p&gt;
&lt;p&gt;Signal et Proton ne peuvent pas implémenter le client-side scanning sans casser leur modèle. Ce n’est pas une politique, c’est une impossibilité technique. Les choisir eux, ou d’autres bâtis sur le même modèle, c’est te protéger.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/quest-ce-que-la-souverainete-digitale-en-pratique/&quot;&gt;Qu’est-ce que la souveraineté digitale en pratique&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Côté politique, si ça t’intéresse, écris à tes représentants. Le trilogue CSAR du 4 mai 2026 est un point de bascule. La pression publique a fonctionné sur Chat Control 1.0, elle peut fonctionner sur CSAR 2.0.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://edri.org&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;EDRi&lt;/a&gt;, &lt;a href=&quot;https://www.eff.org&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;EFF&lt;/a&gt;, &lt;a href=&quot;https://noyb.eu&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;noyb&lt;/a&gt;, maintiennent des outils de contact direct avec les citoyens. Utilise-les et participe à l’action, si cela te parle.&lt;/p&gt;
&lt;p&gt;Et suis les Radars MacSouverain. Chaque texte, chaque verdict, chaque tour de vis est suivi en temps réel. La vigilance Privacy, c’est de l’attention au quotidien, pas de l’épisodique.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Six mois, dix-neuf textes&lt;/strong&gt;, quatre continents. &lt;strong&gt;Trois mécaniques qui s’emboîtent&lt;/strong&gt;, identification universelle, cassage du chiffrement, centralisation des données d’identification chez deux ou trois courtiers. Ce n’est pas un complot, juste &lt;strong&gt;des trajectoires convergentes qui aboutiront à moins de Privacy, voire à plus de Privacy du tout&lt;/strong&gt;, si on les combine dans chaque pays.&lt;/p&gt;
&lt;p&gt;Tout le monde en sort gagnant, c’est comme ça qu’on te le vend, sauf l’utilisateur final, à bien lire. Autrement dit, toi, moi, et tous les citoyens.&lt;/p&gt;
&lt;p&gt;Idaho SB 1299, Wisconsin veto Evers, Surveillance Accountability Act, 371 chercheurs, des points d’appui réels, démontrent qu’une autre voie est possible.&lt;/p&gt;
&lt;p&gt;Tes choix techniques d’aujourd’hui, Signal, Proton, MacOS bien réglé et à jour, Linux pourquoi pas, sont aussi des choix politiques. Et soutenir EDRi et EFF, refuser les fonctions de confort qui pavent la voie, est aussi le bon moyen de combiner les deux.&lt;/p&gt;
&lt;p&gt;Ce qui arrive n’est pas encore totalement écrit. Mais c’est d’ores et déjà inscrit dans une trajectoire.&lt;/p&gt;
&lt;p&gt;À toi de choisir ce que tu en fais.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;sources&quot;&gt;Sources&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Textes officiels et législatifs&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;HR 8250 Parents Decide Act, Congress.gov : &lt;a href=&quot;https://www.congress.gov/bill/119th-congress/house-bill/8250/text&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.congress.gov/bill/119th-congress/house-bill/8250/text&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Illinois HB 5511 Digital Age Assurance, ILGA : &lt;a href=&quot;https://ilga.gov/Legislation/BillStatus/FullText?GAID=18&amp;#x26;DocNum=5511&amp;#x26;DocTypeID=HB&amp;#x26;LegId=167486&amp;#x26;SessionID=114&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://ilga.gov/Legislation/BillStatus/FullText?GAID=18&amp;#x26;DocNum=5511&amp;#x26;DocTypeID=HB&amp;#x26;LegId=167486&amp;#x26;SessionID=114&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;HR 8470 Surveillance Accountability Act, GovTrack : &lt;a href=&quot;https://www.govtrack.us/congress/bills/119/hr8470/text&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.govtrack.us/congress/bills/119/hr8470/text&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Idaho SB 1299, Idaho Legislature : &lt;a href=&quot;https://legislature.idaho.gov/sessioninfo/2026/legislation/S1299/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://legislature.idaho.gov/sessioninfo/2026/legislation/S1299/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;UK Online Safety Act enforcement, Ofcom : &lt;a href=&quot;https://www.ofcom.org.uk/online-safety/protecting-children/age-checks-to-protect-children-online&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.ofcom.org.uk/online-safety/protecting-children/age-checks-to-protect-children-online&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Australia Online Safety Amendment, eSafety : &lt;a href=&quot;https://www.esafety.gov.au/about-us/industry-regulation/social-media-age-restrictions&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.esafety.gov.au/about-us/industry-regulation/social-media-age-restrictions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;New Mexico Department of Justice, verdict Meta : &lt;a href=&quot;https://nmdoj.gov/press-release/new-mexico-department-of-justice-wins-landmark-verdict-against-meta/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://nmdoj.gov/press-release/new-mexico-department-of-justice-wins-landmark-verdict-against-meta/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;UK GOV.UK digital driving licence : &lt;a href=&quot;https://www.gov.uk/government/news/digital-driving-licence-coming-this-year&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.gov.uk/government/news/digital-driving-licence-coming-this-year&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Analyses et coalitions&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;EDRi, ECtHR sur le chiffrement comme droit fondamental : &lt;a href=&quot;https://edri.org/our-work/european-court-of-human-rights-confirms-weakening-of-encryption-can-violate-the-human-right-to-privacy/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://edri.org/our-work/european-court-of-human-rights-confirms-weakening-of-encryption-can-violate-the-human-right-to-privacy/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Bruce Schneier sur le verdict Meta NM : &lt;a href=&quot;https://www.schneier.com/blog/archives/2026/04/new-mexicos-meta-ruling-and-encryption.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.schneier.com/blog/archives/2026/04/new-mexicos-meta-ruling-and-encryption.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Bruce Schneier sur Hong Kong NSL : &lt;a href=&quot;https://www.schneier.com/blog/archives/2026/04/hong-kong-police-can-force-you-to-reveal-your-encryption-keys.html&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.schneier.com/blog/archives/2026/04/hong-kong-police-can-force-you-to-reveal-your-encryption-keys.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Lettre ouverte des 371 chercheurs cybersécu, Euronews : &lt;a href=&quot;https://www.euronews.com/next/2026/03/02/dangerous-and-socially-unacceptable-experts-warn-against-rushed-rollout-of-online-age-chec&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.euronews.com/next/2026/03/02/dangerous-and-socially-unacceptable-experts-warn-against-rushed-rollout-of-online-age-chec&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Andy Yen, Proton CEO, sur HR 8250, The Register : &lt;a href=&quot;https://www.theregister.com/2026/04/23/proton_ceo_age_checks_id_checkpoint/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.theregister.com/2026/04/23/proton_ceo_age_checks_id_checkpoint/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;App EU age verification contournée, Cybernews : &lt;a href=&quot;https://cybernews.com/security/eu-age-verification-app-hack/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://cybernews.com/security/eu-age-verification-app-hack/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;World ID partenariats, TechCrunch : &lt;a href=&quot;https://techcrunch.com/2026/04/17/sam-altmans-project-world-looks-to-scale-its-human-verification-empire-first-stop-tinder/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://techcrunch.com/2026/04/17/sam-altmans-project-world-looks-to-scale-its-human-verification-empire-first-stop-tinder/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Wisconsin veto Evers, 404 Media : &lt;a href=&quot;https://www.404media.co/wisconsin-age-verification-bill-vetoed/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://www.404media.co/wisconsin-age-verification-bill-vetoed/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;France DINUM, IT Social : &lt;a href=&quot;https://itsocial.fr/logiciel-agilite/logiciel-agilite-actualites/la-dinum-lache-windows-pour-linux-et-impose-un-plan-de-souverainete-numerique-a-chaque-ministere-avant-lautomne/&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;https://itsocial.fr/logiciel-agilite/logiciel-agilite-actualites/la-dinum-lache-windows-pour-linux-et-impose-un-plan-de-souverainete-numerique-a-chaque-ministere-avant-lautomne/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;voir-aussi&quot;&gt;Voir aussi&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/chat-control-csar-surveillance-messageries-chiffrees/&quot;&gt;Chat Control 2.0 : l’UE veut lire tes messages avant que tu les envoies&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/nis2-csar-contradiction-ue-chiffrement-surveillance/&quot;&gt;NIS2 oblige les entreprises à chiffrer. CSAR leur interdit de le faire vraiment.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/radar-eu-age-verification-hackee-avril-2026/&quot;&gt;Radar : Vérification d’âge EU, hackée en 2 minutes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/radar-chat-control-2-espionnage-masse/&quot;&gt;Radar : Chat Control 2.0, l’UE veut scanner tous tes messages&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/quest-ce-que-la-souverainete-digitale-en-pratique/&quot;&gt;Qu’est-ce que la souveraineté digitale en pratique&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>privacy</category><category>securite</category><category>reglementation</category><category>surveillance</category><category>informatif</category><category>analyse</category><enclosure url="https://macsouverain.com/content/images/2026/04/feature-art33-hd.png" length="0" type="image/png"/></item><item><title>Le DNS, talon d&apos;Achille de ta souveraineté numérique</title><link>https://macsouverain.com/dns-talon-achille-privacy/</link><guid isPermaLink="true">https://macsouverain.com/dns-talon-achille-privacy/</guid><description>Tu chiffres tes mails, tu paies un VPN, tu actives Tailscale. Et ton FAI sait quand même que tu as visité tinder.com hier soir. Le DNS, voilà pourquoi.</description><pubDate>Sat, 25 Apr 2026 15:35:46 GMT</pubDate><content:encoded>&lt;h2 id=&quot;le-paradoxe-de-la-souveraineté-à-moitié&quot;&gt;Le paradoxe de la souveraineté à moitié&lt;/h2&gt;
&lt;p&gt;Tu paies un VPN sérieux. Tu as migré vers Proton Mail. Tu as monté un mesh Tailscale entre tes Macs. Tu as activé la Protection Avancée des Données iCloud, désactivé la moitié des analytics, basculé Safari en mode privacy max.&lt;/p&gt;
&lt;p&gt;Et ton FAI sait pourtant que hier soir, petit coquinou, tu as ouvert un onglet sur un site de rencontres à 23h47.&lt;/p&gt;
&lt;p&gt;Pas parce que le VPN a fui. Pas parce qu’Apple a craqué. Parce que la couche la plus banale d’internet, celle dont tout le monde a entendu le nom sans jamais s’en occuper, fonctionne en clair par défaut. Cette couche s’appelle le DNS, et c’est le maillon faible que personne ne regarde, y compris dans des stacks privacy par ailleurs solides.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/01-dns-reglages-fai-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Panneau DNS macOS — resolver FAI 192.168.1.1 par défaut&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Cet article explique pourquoi ce maillon est cassé, pourquoi les réponses faciles, ces fameux Cloudflare 1.1.1.1 et iCloud Private Relay, ne sont pas vraiment des réponses, et comment reprendre le contrôle en trois niveaux gradués.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-dns-cest-quoi&quot;&gt;Le DNS, c’est quoi&lt;/h2&gt;
&lt;h3 id=&quot;lannuaire-qui-rend-internet-utilisable&quot;&gt;L’annuaire qui rend internet utilisable&lt;/h3&gt;
&lt;p&gt;Les humains retiennent des noms : &lt;code&gt;proton.me&lt;/code&gt;, &lt;code&gt;apple.com&lt;/code&gt;, &lt;code&gt;macsouverain.fr&lt;/code&gt;. Les machines, elles, ne savent parler qu’avec des adresses IP : &lt;code&gt;185.70.43.10&lt;/code&gt;, &lt;code&gt;17.253.144.10&lt;/code&gt;, &lt;code&gt;83.228.215.109&lt;/code&gt;. Entre les deux, il faut un traducteur en temps réel. C’est le DNS, &lt;em&gt;Domain Name System&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Imagine un téléphone fixe sans répertoire. Tu connais le nom de ton plombier mais pas son numéro. Tu appelles donc d’abord les renseignements téléphoniques, qui te donnent le numéro, puis tu rappelles ton plombier. Le DNS, c’est exactement ça : un service de renseignements automatique, interrogé des dizaines de fois par minute, sans que tu t’en rendes compte.&lt;/p&gt;
&lt;h3 id=&quot;le-flux-complet-dune-résolution&quot;&gt;Le flux complet d’une résolution&lt;/h3&gt;
&lt;p&gt;Quand tu tapes &lt;code&gt;signal.org&lt;/code&gt; dans Safari, voilà ce qui se passe en quelques dizaines de millisecondes :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Ton Mac regarde dans son cache local. A-t-il déjà demandé cette adresse récemment ? Si oui, il la réutilise et c’est terminé.&lt;/li&gt;
&lt;li&gt;Sinon, il interroge le &lt;strong&gt;resolver&lt;/strong&gt; configuré sur la machine. Par défaut, c’est celui que ta box t’a poussé en DHCP, donc celui de ton FAI.&lt;/li&gt;
&lt;li&gt;Ce resolver, s’il n’a pas la réponse en cache, attaque la hiérarchie DNS. Il interroge d’abord un &lt;strong&gt;root server&lt;/strong&gt;, l’une des treize adresses de référence de l’annuaire global (déployées sur des centaines d’instances physiques en anycast), qui lui dit « pour &lt;code&gt;.org&lt;/code&gt;, demande à ces serveurs-là ».&lt;/li&gt;
&lt;li&gt;Il interroge ensuite le serveur &lt;strong&gt;TLD&lt;/strong&gt; du &lt;code&gt;.org&lt;/code&gt;, qui lui dit « pour &lt;code&gt;signal.org&lt;/code&gt;, demande à ces serveurs-là ».&lt;/li&gt;
&lt;li&gt;Il interroge enfin le serveur &lt;strong&gt;authoritative&lt;/strong&gt; de &lt;code&gt;signal.org&lt;/code&gt;, qui détient la vérité officielle et lui renvoie l’adresse IP.&lt;/li&gt;
&lt;li&gt;Le resolver te transmet la réponse, ton Mac peut établir la connexion HTTPS.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Cette descente de la hiérarchie, c’est ce qu’on appelle une résolution &lt;strong&gt;récursive&lt;/strong&gt;. Le resolver fait le travail de remontée à ta place.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/02-dns-flux-recursif-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Résolution DNS récursive — le maillon Mac → Resolver FAI en rouge identifie le point de fuite&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Et c’est précisément sur ce premier maillon, entre ton Mac et le resolver, que tout se joue.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pourquoi-cest-le-talon-dachille&quot;&gt;Pourquoi c’est le talon d’Achille&lt;/h2&gt;
&lt;h3 id=&quot;par-défaut-tout-passe-en-clair&quot;&gt;Par défaut, tout passe en clair&lt;/h3&gt;
&lt;p&gt;Le DNS classique tourne sur le port 53, en UDP, sans chiffrement. Quand ton Mac demande &lt;code&gt;proton.me&lt;/code&gt; à ton FAI, la question et la réponse circulent en clair sur le réseau, lisibles par n’importe quel équipement entre les deux : ta box, le DSLAM du quartier, le routeur de l’opérateur, et bien sûr le serveur DNS du FAI lui-même qui fait le travail.&lt;/p&gt;
&lt;p&gt;Le HTTPS ne change rien à ça. HTTPS chiffre le contenu des pages, pas la question DNS qui les a précédées. Tu peux avoir le plus beau cadenas du monde sur Safari, ton FAI a déjà noté la destination avant que la connexion chiffrée ne commence.&lt;/p&gt;
&lt;h3 id=&quot;ton-fai-voit-chaque-domaine-avec-horodatage&quot;&gt;Ton FAI voit chaque domaine, avec horodatage&lt;/h3&gt;
&lt;p&gt;C’est l’équivalent de connaître la liste de tous les magasins que tu visites dans une journée, sans savoir ce que tu y achètes. Pour un profilage commercial ou un examen judiciaire, c’est largement suffisant.&lt;/p&gt;
&lt;p&gt;Un appel au site web d’un avocat spécialisé en droit du divorce en dit long sur toi. Une visite à 3h du matin sur une plateforme de pari en ligne renseigne ton FAI tout aussi bien. Idem pour une consultation matinale et systématique d’un site médical spécialisé. Tes données de navigation, c’est une manne de données gratis, à revendre ou à exploiter.&lt;/p&gt;
&lt;p&gt;En France, les FAI sont légalement tenus de conserver ces métadonnées pendant un an (décret 2006-358, contesté mais maintenu malgré les arrêts de la CJUE). Aux États-Unis, des FAI ont vendu des historiques de navigation à des courtiers en données, légalement, faute de protection fédérale comparable. Le risque n’est pas l’espionnage ciblé du quotidien, c’est l’exposition structurelle : des données collectées automatiquement, stockées des mois, accessibles sur réquisition ou via une fuite.&lt;/p&gt;
&lt;h3 id=&quot;chiffré-côté-fai--chiffré-bout-en-bout&quot;&gt;Chiffré côté FAI ≠ chiffré bout en bout&lt;/h3&gt;
&lt;p&gt;Beaucoup d’utilisateurs croient que parce que leur box affiche un cadenas dans l’interface admin ou parce que leur abonnement mentionne « DNS sécurisé », ils sont protégés. Erreur. Le FAI peut très bien chiffrer la liaison entre ses propres serveurs et un upstream, ça ne change rien : c’est lui qui résout, c’est lui qui voit, c’est lui qui logue.&lt;/p&gt;
&lt;p&gt;La seule manière de soustraire ta question DNS au regard de ton FAI, c’est qu’elle ne passe jamais par ses serveurs. Pas par lui, pas par sa box, pas par son resolver « amélioré ».&lt;/p&gt;
&lt;h3 id=&quot;et-même-avec-un-vpn-ça-peut-fuir&quot;&gt;Et même avec un VPN, ça peut fuir&lt;/h3&gt;
&lt;p&gt;Tu as un VPN qui tourne. Tout ton trafic est chiffré dans un tunnel WireGuard. Et pourtant, tes requêtes DNS peuvent contourner le tunnel et aller directement chez ton FAI. C’est ce qu’on appelle une &lt;strong&gt;fuite DNS&lt;/strong&gt;, et c’est l’un des défauts les plus silencieux des VPN mal configurés ou trop bon marché.&lt;/p&gt;
&lt;p&gt;Le mécanisme est simple : ton appareil garde en mémoire le resolver DHCP de la box, le VPN ne pousse pas son propre resolver assez fort, et certaines requêtes système partent en parallèle du tunnel. Ton trafic web est protégé, ton DNS est exposé.&lt;/p&gt;
&lt;p&gt;Test en trente secondes : &lt;code&gt;dnsleaktest.com&lt;/code&gt; ou &lt;code&gt;dnscheck.tools&lt;/code&gt;. Si ton FAI apparaît dans la liste alors que ton VPN est connecté, tu fuis.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/pourquoi-tu-as-besoin-dun-vpn/&quot;&gt;Pourquoi tu as besoin d’un VPN, et ce qu’il fait vraiment&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-piège-doh-dot-et-private-relay&quot;&gt;Le piège DoH, DoT et Private Relay&lt;/h2&gt;
&lt;h3 id=&quot;chiffrer-oui-mais-chez-qui&quot;&gt;Chiffrer, oui, mais chez qui&lt;/h3&gt;
&lt;p&gt;Pour répondre au DNS en clair, l’industrie a poussé deux protocoles : &lt;strong&gt;DoH&lt;/strong&gt; (DNS-over-HTTPS, port 443) et &lt;strong&gt;DoT&lt;/strong&gt; (DNS-over-TLS, port 853). Sur le fond, ils font la même chose : encapsuler la requête DNS dans un tunnel chiffré entre ton Mac et un resolver. Sur la forme, le DoH se fond dans le trafic HTTPS normal et est plus discret, le DoT est plus facile à identifier et à bloquer côté admin réseau.&lt;/p&gt;
&lt;p&gt;Activer DoH ou DoT sort enfin tes requêtes DNS du regard de ton FAI. C’est un vrai progrès. Sauf qu’on n’a pas vraiment résolu le problème, on l’a juste déplacé.&lt;/p&gt;
&lt;p&gt;Parce que la vraie question n’est pas « est-ce que c’est chiffré sur le câble ? » Elle est « qui est en face ? ».&lt;/p&gt;
&lt;h3 id=&quot;la-centralisation-cest-lautre-nom-du-fouineur&quot;&gt;La centralisation, c’est l’autre nom du fouineur&lt;/h3&gt;
&lt;p&gt;Quand tu actives DoH par défaut sur Chrome, Firefox, ou via un profil macOS générique, tu te retrouves typiquement chez Cloudflare, Google, ou NextDNS. Cloudflare gère une part énorme du DNS public mondial. Google aussi. Tous les deux sont des entreprises américaines, soumises au CLOUD Act, donc contraignables par la justice US à remettre les données qu’elles stockent, indépendamment de la nationalité de l’utilisateur.&lt;/p&gt;
&lt;p&gt;Tu as remplacé un fouineur, ton FAI réquisitionnable par la justice française, par un autre fouineur, un cloud américain réquisitionnable par les Etats-Unis, sans mandat au besoin, merci au Cloud Act 2018. La conversation n’est plus en clair sur le câble, elle est juste enregistrée chez quelqu’un d’autre.&lt;/p&gt;
&lt;p&gt;C’est ici que la plupart des comparatifs DNS détournent le regard. « Cloudflare 1.1.1.1, c’est gratuit et c’est rapide ». C’est vrai. « C’est privé » est une affirmation qui peut se révéler trompeuse et qui demande à être contextualisée par la juridiction et le modèle économique de l’opérateur.&lt;/p&gt;
&lt;h3 id=&quot;apple-private-relay-lillusion-premium&quot;&gt;Apple Private Relay, l’illusion premium&lt;/h3&gt;
&lt;p&gt;iCloud Private Relay, inclus dans iCloud+, est une variante intéressante du même piège. Le mécanisme : Apple chiffre tes requêtes DNS et ton trafic Safari, les fait sortir d’abord par un serveur Apple, puis par un partenaire (Cloudflare ou Fastly dans la plupart des régions). L’idée, c’est qu’aucun acteur seul ne voit à la fois qui tu es et où tu vas.&lt;/p&gt;
&lt;p&gt;Sur le papier, c’est élégant. Dans les faits, deux problèmes massifs.&lt;/p&gt;
&lt;p&gt;D’abord, Private Relay ferme le DNS au niveau OS, pour Safari et certaines app système, en court-circuitant ce que tu aurais configuré. Tu pensais utiliser ton resolver Quad9 ? Apple repasse par Cloudflare ou Fastly pour Safari, sans te demander.&lt;/p&gt;
&lt;p&gt;Ensuite, ça ne couvre que Safari et une fraction du trafic iCloud. Ton Chrome, ton Firefox, ton Mail, ton Slack, ton Discord, ton client SSH, ton terminal, ton client torrent, tes apps tierces : Private Relay ne touche pas à leurs requêtes DNS.&lt;/p&gt;
&lt;p&gt;Tu paies un service « premium » pour une couverture partielle qui déporte la confiance sur un tandem Apple+Cloudflare que tu ne peux ni configurer ni remplacer. Apple voit que tu navigues, Cloudflare voit où tu vas, séparément par design, mais toujours deux acteurs CLOUD Act sur lesquels tu n’as aucune prise. Pour la moitié du trafic, tu n’as rien gagné.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/privacy-macos-les-parametres-a-changer-immediatement/&quot;&gt;Privacy macOS, les paramètres à changer immédiatement&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-change-concrètement&quot;&gt;Ce que ça change concrètement&lt;/h2&gt;
&lt;h3 id=&quot;ce-que-ton-fai-voit-et-ne-voit-pas&quot;&gt;Ce que ton FAI voit, et ne voit pas&lt;/h3&gt;
&lt;p&gt;Sans DNS chiffré, ton FAI dispose d’un journal complet : domaine, horodatage, fréquence, durée approximative de session. Il peut établir que tu visites un site bancaire chaque jour à 8h, que tu consultes un site médical spécifique tous les mardis soir, que tu passes un certain temps sur des sites de presse alternative, que tu te connectes à &lt;code&gt;signal.org&lt;/code&gt; à des horaires précis. Il ne lit pas tes messages, il n’a pas besoin.&lt;/p&gt;
&lt;p&gt;Avec un DNS chiffré et un resolver de confiance, ton FAI ne voit plus que des connexions TLS vers des adresses IP. Il sait que tu utilises internet, pas vers qui tu te connectes en premier lieu. Une partie de l’IP reste révélatrice, mais c’est un saut qualitatif énorme par rapport au défaut.&lt;/p&gt;
&lt;h3 id=&quot;ce-qui-peut-quand-même-être-corrélé&quot;&gt;Ce qui peut quand même être corrélé&lt;/h3&gt;
&lt;p&gt;Soyons clairs sur ce qui reste exposé même avec un DNS souverain.&lt;/p&gt;
&lt;p&gt;Le &lt;strong&gt;SNI&lt;/strong&gt; (&lt;em&gt;Server Name Indication&lt;/em&gt;) : pendant la poignée de main TLS, ton navigateur annonce encore en clair quel domaine il veut joindre, pour que le serveur présente le bon certificat. Cette information est lisible par les acteurs réseau, indépendamment du DNS. La parade s’appelle &lt;strong&gt;ECH&lt;/strong&gt; (&lt;em&gt;Encrypted Client Hello&lt;/em&gt;). Les navigateurs majeurs supportent ECH côté client, c’est le déploiement serveur qui traîne. Pour les sites sans ECH côté serveur, le SNI reste lisible par les acteurs réseau.&lt;/p&gt;
&lt;p&gt;L’&lt;strong&gt;adresse IP de destination&lt;/strong&gt; : même si personne ne lit ton DNS et ton SNI, la connexion à un serveur révèle son IP. Pour un service utilisant un grand CDN partagé (Cloudflare, AWS), l’IP toute seule ne dit pas grand chose. Pour un petit site auto-hébergé, l’IP suffit à l’identifier.&lt;/p&gt;
&lt;p&gt;Le &lt;strong&gt;fingerprinting navigateur&lt;/strong&gt; : c’est là que ça devient plus concret. Ton navigateur divulgue passivement, au moment de charger n’importe quelle page, une combinaison de signaux : rendu canvas, GPU, polices installées, résolution d’écran, timezone, plugins actifs. Pris ensemble, ils forment une empreinte suffisamment unique pour t’identifier à travers les sites, sans cookie, sans identifiant visible.&lt;/p&gt;
&lt;p&gt;C’est la technique de tracking post-cookie des réseaux adtech et des data brokers, Meta Pixel, Google Analytics, et des dizaines d’acteurs moins visibles. Elle fonctionne en navigation privée. Elle survit à la suppression des cookies. Et elle n’a rien à voir avec ton resolver DNS : tu peux passer par Quad9 chiffré, ton empreinte navigateur reste aussi lisible.&lt;/p&gt;
&lt;p&gt;Le DNS souverain n’est donc pas une baguette magique. C’est une couche de protection parmi d’autres. Elle bouche le trou le plus visible, le plus systématique, et celui que personne ne regarde.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;idées-reçues-à-démonter&quot;&gt;Idées reçues à démonter&lt;/h2&gt;
&lt;h3 id=&quot;-jai-un-vpn-donc-le-dns-est-couvert&quot;&gt;« J’ai un VPN, donc le DNS est couvert »&lt;/h3&gt;
&lt;p&gt;Pas nécessairement. Un VPN sérieux pousse son propre resolver DNS et force toutes les requêtes dans le tunnel. Un VPN gratuit ou bon marché ne le fait pas, ou le fait mal. Et même avec un VPN sérieux, certaines configurations macOS, des apps qui résolvent par leur propre stack, des fallbacks DHCP, peuvent contourner. Test obligatoire à dnscheck.tools.&lt;/p&gt;
&lt;h3 id=&quot;-doh-égale-privacy&quot;&gt;« DoH égale privacy »&lt;/h3&gt;
&lt;p&gt;DoH chiffre le tuyau. Il ne change pas la nature de l’opérateur en face. Activer DoH par défaut dans Chrome, c’est typiquement balancer son DNS chez Cloudflare ou Google. Centralisation et juridiction US sont des questions distinctes du chiffrement, et elles ne disparaissent pas avec un cadenas en plus.&lt;/p&gt;
&lt;h3 id=&quot;-je-nai-rien-à-cacher&quot;&gt;« Je n’ai rien à cacher »&lt;/h3&gt;
&lt;p&gt;L’argument classique repose sur une hypothèse fausse : que le problème serait ce que &lt;strong&gt;toi&lt;/strong&gt; tu fais. Le vrai problème, c’est ce que &lt;strong&gt;d’autres&lt;/strong&gt; peuvent faire avec tes données. Un historique DNS de plusieurs mois, croisé avec des bases tierces, dessine un profil comportemental dont tu ne contrôles ni l’usage, ni la durée de rétention, ni les destinataires futurs. « Rien à cacher » suppose que tu connais d’avance toutes les manières dont ces données peuvent être réutilisées contre toi. Personne ne le sait.&lt;/p&gt;
&lt;h3 id=&quot;-apple-private-relay-cest-top&quot;&gt;« Apple Private Relay, c’est top »&lt;/h3&gt;
&lt;p&gt;Sur un sous-ensemble du trafic Safari, Private Relay améliore le statu quo. Sur le reste, il ne fait rien. Et il déporte la confiance vers Apple + Cloudflare/Fastly sans alternative configurable. Pour quelqu’un qui n’a aucune envie de toucher aux réglages, c’est mieux que rien. Pour quelqu’un qui essaie d’avoir une stack souveraine cohérente, c’est un placebo qui peut donner un faux sentiment de sécurité.&lt;/p&gt;
&lt;h3 id=&quot;-cloudflare-1111-cest-rapide-et-gratuit&quot;&gt;« Cloudflare 1.1.1.1, c’est rapide et gratuit »&lt;/h3&gt;
&lt;p&gt;C’est vrai. C’est aussi un cloud américain dont le modèle économique repose sur la collecte agrégée de données réseau, et qui est soumis au CLOUD Act. Pour un utilisateur ordinaire, c’est mieux que le DNS de la box. Pour quelqu’un qui veut sortir des juridictions Five Eyes sur sa stack privacy, c’est un point de départ, pas un point d’arrivée.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;reprendre-le-contrôle-en-trois-niveaux&quot;&gt;Reprendre le contrôle, en trois niveaux&lt;/h2&gt;
&lt;p&gt;Trois niveaux d’engagement, du plus simple au plus souverain. Chacun est une vraie amélioration. Choisis celui qui correspond à ton temps disponible et à ton seuil de tolérance technique.&lt;/p&gt;
&lt;h3 id=&quot;niveau-1-gain-immédiat-deux-minutes&quot;&gt;Niveau 1, gain immédiat, deux minutes&lt;/h3&gt;
&lt;p&gt;Tu changes le resolver système macOS pour un opérateur respectueux, en DoH ou DoT, via un profil de configuration. Pas d’app à installer, pas de service à lancer.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les étapes :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Choisis un resolver. Deux candidats sérieux, accessibles sans connaissances techniques particulières : &lt;strong&gt;Quad9&lt;/strong&gt; (fondation à but non lucratif, Suisse, juridiction nLPD) et &lt;strong&gt;Mullvad DNS&lt;/strong&gt; (Suède, no-logs déclaré, infrastructure auditée Cure53, opérateur transparent). Les deux : un fichier &lt;code&gt;.mobileconfig&lt;/code&gt;, deux clics, c’est plié.&lt;/li&gt;
&lt;li&gt;Récupère le profil de configuration &lt;code&gt;.mobileconfig&lt;/code&gt; officiel sur &lt;code&gt;quad9.net&lt;/code&gt; ou &lt;code&gt;mullvad.net&lt;/code&gt; selon ton choix.&lt;/li&gt;
&lt;li&gt;Double-clique le fichier sur ton Mac, va dans Réglages Système &gt; Confidentialité et sécurité &gt; Profils, valide l’installation.&lt;/li&gt;
&lt;li&gt;Vérifie le résultat sur &lt;code&gt;dnscheck.tools&lt;/code&gt; : tu devrais voir le resolver choisi, plus ton FAI.&lt;/li&gt;
&lt;/ol&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/03-dns-profil-mobileconfig-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Quad9 et Mullvad DNS — téléchargement du profil .mobileconfig pour macOS&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;Avantage :&lt;/strong&gt; deux minutes, zéro maintenance, gain immédiat. Tes requêtes ne sont plus visibles par ton FAI.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Limite :&lt;/strong&gt; tu confies quand même tes requêtes à un opérateur externe. Quad9 et Mullvad ont des politiques no-log vérifiées et des audits indépendants et c’est autrement plus sérieux que ton FAI. Mais c’est une fondation ou une entreprise, pas toi. Pour ceux qui veulent moins déléguer, on monte d’un cran.&lt;/p&gt;
&lt;h3 id=&quot;niveau-2-local-first-avec-dnscrypt-proxy&quot;&gt;Niveau 2, local-first avec dnscrypt-proxy&lt;/h3&gt;
&lt;p&gt;Tu installes &lt;code&gt;dnscrypt-proxy&lt;/code&gt; sur ton Mac. C’est un petit service local qui devient ton resolver. Il gère DoH, DoT, le protocole DNSCrypt, le cache local, le filtrage de domaines, et surtout l’&lt;strong&gt;anti-leak&lt;/strong&gt; : il intercepte toutes les requêtes système et les force dans son tunnel chiffré, peu importe ce que macOS aurait fait par défaut.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Comment ça marche concrètement :&lt;/strong&gt; ton Mac demande &lt;code&gt;proton.me&lt;/code&gt;. La requête part en &lt;code&gt;127.0.0.1:53&lt;/code&gt;, vers &lt;code&gt;dnscrypt-proxy&lt;/code&gt; qui tourne en local. Le proxy chiffre la requête et l’envoie à un ou plusieurs resolvers en anycast (Quad9, Mullvad, des serveurs DNSCrypt communautaires). Les réponses reviennent, sont mises en cache local, et servent ton Mac. Le tout sans que ton FAI voie quoi que ce soit, et avec la possibilité de réveiller plusieurs upstreams pour ne pas mettre tous tes œufs dans le même panier.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les étapes :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Installation : &lt;code&gt;brew install dnscrypt-proxy&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Configuration : éditer &lt;code&gt;/opt/homebrew/etc/dnscrypt-proxy.toml&lt;/code&gt; pour activer DoH, désactiver le DNS clair, choisir une liste de resolvers (Quad9, Mullvad, communautaires non-loggés).&lt;/li&gt;
&lt;li&gt;Démarrage : &lt;code&gt;sudo brew services start dnscrypt-proxy&lt;/code&gt;. Le service s’enregistre et démarre au boot.&lt;/li&gt;
&lt;li&gt;Configurer macOS pour utiliser &lt;code&gt;127.0.0.1&lt;/code&gt; comme seul resolver (Réglages Système &gt; Réseau &gt; avancé &gt; DNS).&lt;/li&gt;
&lt;li&gt;Vérifier sur &lt;code&gt;dnscheck.tools&lt;/code&gt; : tu vois plusieurs upstreams qui tournent, jamais ton FAI, jamais Cloudflare ou Google.&lt;/li&gt;
&lt;/ol&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/04-dnscrypt-proxy-config-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;dnscrypt-proxy.toml — configuration souveraine : resolvers no-log, DNSSEC obligatoire&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;Avantage :&lt;/strong&gt; souverain à 80%. Ton Mac ne fait plus confiance à un opérateur unique. Tu peux distribuer la charge sur plusieurs resolvers no-logs européens. Anti-leak natif. Cache local rapide.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Limite :&lt;/strong&gt; un cran de plus en config initiale, environ trente minutes la première fois. Maintenance ensuite minimale, mises à jour via brew. Tu fais toujours confiance à des resolvers tiers, simplement à plusieurs au lieu d’un seul, et en pouvant en changer en deux lignes de config.&lt;/p&gt;
&lt;h3 id=&quot;niveau-3-plein-contrôle-unbound-récursif-sur-vps-perso&quot;&gt;Niveau 3, plein contrôle, Unbound récursif sur VPS perso&lt;/h3&gt;
&lt;p&gt;Tu montes ton propre resolver récursif. Pas de tiers du tout. Ton Mac interroge ta machine, qui descend la hiérarchie root → TLD → authoritative toute seule, comme une grande. Personne en face ne voit l’agrégat de tes requêtes : chaque serveur autoritaire ne voit que la requête qui le concerne, sans rien savoir du reste.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Comment ça marche concrètement :&lt;/strong&gt; tu as un VPS chez un hébergeur souverain (Infomaniak en Suisse, Hetzner en Allemagne, etc…). Sur ce VPS tourne &lt;strong&gt;Unbound&lt;/strong&gt;, un serveur DNS récursif open source réputé pour la propreté de son code. Tu connectes ton Mac à ce VPS via Tailscale, donc en tunnel WireGuard chiffré sur réseau privé. Tu configures ton Mac pour utiliser l’IP Tailscale du VPS comme resolver. Les requêtes sont chiffrées dans Tailscale, atterrissent chez Unbound qui fait la résolution récursive, et reviennent. Et parce que tout ton trafic transite dans le tunnel WireGuard Tailscale, ton FAI ne voit même plus le SNI de tes connexions HTTPS : uniquement des paquets chiffrés vers les endpoints Tailscale.&lt;/p&gt;
&lt;p&gt;Aucun opérateur commercial ne logue l’ensemble de tes requêtes. Les serveurs autoritaires voient une IP de datacenter européen, pas ton IP résidentielle. Le seul maillon résiduel dans la config de base : les requêtes récursives d’Unbound sortent du VPS en UDP non chiffré. L’éliminer est simple : configurer Unbound en mode &lt;code&gt;forward-tls-upstream&lt;/code&gt; vers Quad9 ou Mullvad en DoT (port 853), et tout le chemin devient chiffré, ton hébergeur ne voit plus rien non plus.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les étapes :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Provisionner un petit VPS (1 vCPU, 1 Go RAM, suffit largement) chez un hébergeur souverain.&lt;/li&gt;
&lt;li&gt;Installer &lt;strong&gt;Unbound&lt;/strong&gt; + DNSSEC validation activée.&lt;/li&gt;
&lt;li&gt;Joindre le VPS au mesh Tailscale.&lt;/li&gt;
&lt;li&gt;Restreindre Unbound à n’écouter que sur l’interface Tailscale, jamais sur l’interface publique.&lt;/li&gt;
&lt;li&gt;Configurer macOS pour utiliser l’IP Tailscale du VPS comme seul resolver.&lt;/li&gt;
&lt;/ol&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/05-dig-dnssec-output-1.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Sortie &amp;#x60;dig +dnssec&amp;#x60; — le flag &amp;#x60;ad&amp;#x60; confirme la validation DNSSEC bout en bout&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;Avantage :&lt;/strong&gt; souveraineté maximale sur le DNS. Aucun opérateur tiers. Validation DNSSEC bout à bout. Tu peux ajouter tes propres listes de filtrage (publicité, trackers, télémétrie Apple, télémétrie Microsoft) sans dépendre d’un service externe. Le résolveur t’appartient.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Limite :&lt;/strong&gt; le frein, c’est l’installation. Compter une demi-journée la première fois si tu n’as jamais touché à Unbound. Une fois en place, la maintenance est minimale, mise à jour mensuelle du paquet et logs occasionnels. Tu paies un VPS, quelques euros par mois.&lt;/p&gt;
&lt;p&gt;C’est excessif pour la plupart des particuliers, mais cohérent quand le reste de la stack est déjà souverain (mail, drive, password manager, mesh) et que le DNS resterait sinon le seul maillon centralisé.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/quest-ce-que-la-souverainete-digitale-en-pratique/&quot;&gt;Souveraineté digitale en pratique&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-qui-reste-exposé-et-comment-le-fermer&quot;&gt;Ce qui reste exposé, et comment le fermer&lt;/h2&gt;
&lt;p&gt;Le DNS souverain ferme le trou le plus systématique. Trois autres existent.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le SNI&lt;/strong&gt; (&lt;em&gt;Server Name Indication&lt;/em&gt;) : pendant la poignée de main TLS, ton navigateur annonce en clair le domaine de destination. Même avec un DNS parfait, cette info reste lisible par les acteurs réseau, tant qu’ECH n’est pas déployé côté serveur.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;L’adresse IP de destination&lt;/strong&gt; reste visible. Pour les services derrière un grand CDN partagé, l’IP seule ne dit pas grand chose. Pour un site auto-hébergé sur un VPS dédié, elle suffit à l’identifier.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le fingerprinting navigateur&lt;/strong&gt; : rendu canvas, GPU, polices, timezone forment une empreinte cross-site que les adtech utilisent indépendamment du DNS, et qui survit à la navigation privée. Ni le DNS souverain, ni Tailscale n’y changent quoi que ce soit : c’est une couche applicative, dans le navigateur. La réponse est ailleurs, Firefox avec arkenfox, Brave avec sa randomisation native, ou des extensions comme CanvasBlocker. Sujet à part entière, article à venir.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La parade pour le SNI et l’IP : Tailscale avec exit node.&lt;/strong&gt; Tout ton trafic transite dans un tunnel WireGuard chiffré. Ton FAI ne voit plus ni les requêtes DNS, ni le SNI, ni la destination. DNS souverain + Tailscale exit node, c’est le combo qui ferme ces deux portes d’un coup.&lt;/p&gt;
&lt;p&gt;DNS souverain seul, c’est la première brique. &lt;strong&gt;DNS souverain + Tailscale exit node, c’est la stack réseau réellement blindée&lt;/strong&gt;. L’architecture Tailscale, c’est donc la suite et, promis, on t’explique tout ça en détail, dans un nouvel article à venir bientôt.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Le DNS, c’est l’annuaire d’internet. Par défaut sur la plupart des connexions, il fonctionne en clair, et ton FAI voit chaque domaine que tu visites avec horodatage. Le HTTPS ne change rien à ça : il chiffre le contenu, pas la destination. Et un VPN mal configuré peut laisser fuir le DNS hors du tunnel sans que tu t’en rendes compte.&lt;/p&gt;
&lt;p&gt;Les solutions faciles sont en réalité des déplacements de problème. Activer DoH par défaut, c’est typiquement basculer chez Cloudflare ou Google, des clouds américains soumis au CLOUD Act. iCloud Private Relay couvre Safari et oublie le reste, en redonnant les clés à Apple et Cloudflare sur la partie qu’il couvre. Tu n’as pas supprimé le fouineur, tu en as juste changé.&lt;/p&gt;
&lt;p&gt;Reprendre le contrôle se fait en trois niveaux gradués : gain immédiat avec Quad9 ou Mullvad DNS en DoH, deux minutes via profil de configuration. Local-first avec &lt;code&gt;dnscrypt-proxy&lt;/code&gt; sur ton Mac, anti-leak natif et multi-resolvers, en trente minutes. Plein contrôle avec Unbound récursif sur un VPS perso joint à ton mesh Tailscale, exit node activé, demi-journée d’install, DNS et SNI réglés d’un coup.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les actions :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Teste maintenant tes fuites DNS sur &lt;code&gt;dnscheck.tools&lt;/code&gt;. Si ton FAI ou Cloudflare apparaissent et que ce n’était pas un choix conscient, tu sais ce que tu as à faire.&lt;/li&gt;
&lt;li&gt;Choisis un niveau d’engagement honnête avec ton temps. Niveau 1 immédiat, c’est mieux que niveau 3 jamais.&lt;/li&gt;
&lt;li&gt;Si tu as déjà une stack privacy ailleurs (VPN, Proton, Tailscale), assure-toi que le DNS n’est pas le maillon faible qui révèle ce que le reste protège.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Le DNS, c’est la première brique d’une souveraineté réseau cohérente. Sans elle, le reste est en partie du théâtre. Avec elle et Tailscale en exit node, c’est une stack réellement blindée.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;voir-aussi&quot;&gt;Voir aussi&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/pourquoi-tu-as-besoin-dun-vpn/&quot;&gt;Pourquoi tu as besoin d’un VPN, et ce qu’il fait vraiment&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/quest-ce-que-la-souverainete-digitale-en-pratique/&quot;&gt;Souveraineté digitale en pratique&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/cloud-ordinateur-quelquun-dautre/&quot;&gt;Le cloud, c’est l’ordinateur de quelqu’un d’autre&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://macsouverain.com/privacy-macos-les-parametres-a-changer-immediatement/&quot;&gt;Privacy macOS, les paramètres à changer immédiatement&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire/&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>dns</category><category>privacy</category><category>souverainete</category><category>reseau</category><category>securite</category><category>informatif</category><enclosure url="https://macsouverain.com/content/images/2026/04/feature-dns-draft-1.png" length="0" type="image/png"/></item><item><title>NIS2 oblige les entreprises à chiffrer. CSAR leur interdit de le faire vraiment.</title><link>https://macsouverain.com/nis2-csar-contradiction-ue-chiffrement-surveillance/</link><guid isPermaLink="true">https://macsouverain.com/nis2-csar-contradiction-ue-chiffrement-surveillance/</guid><description>NIS2 impose le chiffrement aux entreprises. CSAR veut le percer. La même institution. Deux textes incompatibles. Ce que ça veut dire pour toi.</description><pubDate>Sat, 18 Apr 2026 13:46:22 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ juillet 2026.&lt;/strong&gt; Le calendrier a bougé : le 9 juillet, le Parlement européen a laissé passer la reconduction de Chat Control 1.0, faute des 361 voix nécessaires pour bloquer alors que la majorité votait contre, avec l’E2E explicitement exclu de ce texte. Le CSAR 2.0, celui qui contredit NIS2 et qui est décrit ici, repart en trilogue en septembre : le « 4 mai » évoqué plus bas est périmé. &lt;a href=&quot;https://macsouverain.com/radar-chat-control-1-adopte-par-defaut/&quot;&gt;Détails dans le radar&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Bruxelles a une idée brillante : t’obliger à chiffrer tes données. Elle a aussi une autre idée, moins brillante mais plus totalitaire, pouvoir les lire quand elle veut.&lt;/p&gt;
&lt;p&gt;Ce ne sont pas deux politiques venues de deux institutions différentes. C’est la même Commission européenne, à quelques mois d’écart, qui signe les deux textes (si, si, c’est possible, je t’assure : bienvenue en absurdie).&lt;/p&gt;
&lt;p&gt;NIS2 te contraint à sécuriser sous peine de sanctions. CSAR 2.0 te contraint à laisser une porte ouverte pour que l’on puisse t’espionner à bon compte.&lt;/p&gt;
&lt;p&gt;Et, comme tout bon méli-mélo de textes pondus par nos chers technocrates européens, sous la pression de nos chers politiques, la main droite ne semble pas savoir ce que fait la main gauche.&lt;/p&gt;
&lt;p&gt;Voici ce que ça veut dire concrètement pour ta protection numérique, et pourquoi cette incohérence n’est pas un accident.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;nis2--lue-découvre-enfin-la-cybersécurité&quot;&gt;NIS2 : l’UE découvre (enfin) la cybersécurité&lt;/h2&gt;
&lt;p&gt;La directive NIS2 est entrée en vigueur en janvier 2023. Elle s’appelait NIS1 avant, elle concernait environ 500 entités en France. NIS2 élargit le périmètre à &lt;strong&gt;15 000-18 000 entités françaises&lt;/strong&gt; selon l’ANSSI.&lt;/p&gt;
&lt;p&gt;Ce ne sont plus seulement les opérateurs d’infrastructures critiques, c’est toute entreprise atteignant 50 salariés et 10 millions d’euros de chiffre d’affaires, ou de bilan, dans les secteurs couverts. La santé, l’énergie, les transports, le numérique, les finances. Le secteur hospitalier figure en Annexe I, hautement critique.&lt;/p&gt;
&lt;p&gt;L’article 21 est le cœur du dispositif. Il liste dix catégories de mesures obligatoires, dont le &lt;strong&gt;chiffrement des données en transit et au repos&lt;/strong&gt;, l’authentification &lt;strong&gt;multifacteur&lt;/strong&gt; (MFA), et la mise en place de &lt;strong&gt;communications sécurisées&lt;/strong&gt;. En langage humain : &lt;strong&gt;si tu gères des données dans un secteur concerné&lt;/strong&gt;, chiffrer n’est plus un conseil, &lt;strong&gt;c’est une obligation légale.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;La nouveauté structurelle de NIS2, c’est l’&lt;strong&gt;article 20&lt;/strong&gt;. La responsabilité ne pèse plus seulement sur la société, elle pèse sur la &lt;strong&gt;personne physique qui dirige&lt;/strong&gt;. Pas de DSI bouc émissaire, pas de « notre prestataire s’en chargeait ». &lt;strong&gt;Les organes de direction sont personnellement responsables de la mise en conformité&lt;/strong&gt; (Doc, si t’es là, ton cabinet va pas désemplir, je connais des dirigeants qui vont droit vers la prise de tranxène).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La France, elle, est en retard&lt;/strong&gt; (Ben comme d’hab, non ?). &lt;strong&gt;La deadline&lt;/strong&gt; de transposition fixée par l’UE &lt;strong&gt;était le 17 octobre 2024&lt;/strong&gt;. On approche de mai 2026 (essaie de faire ça avec une de tes échéances, et on en reparle) et le texte n’est toujours pas voté à l’Assemblée nationale. Ce retard n’exonère pas : &lt;strong&gt;les obligations NIS2 arrivent&lt;/strong&gt;, la question est quand, et pas si.&lt;/p&gt;
&lt;p&gt;Et &lt;strong&gt;dans le projet de loi français&lt;/strong&gt;, un article sort du lot. &lt;strong&gt;L’&lt;a href=&quot;https://www.assemblee-nationale.fr/dyn/17/dossiers/DLR5L17N50731&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;article 16 bis&lt;/a&gt; du projet de loi interdit explicitement d’imposer des accès forcés dans les outils de chiffrement&lt;/strong&gt;. Aucun fournisseur de solutions de chiffrement ne peut être contraint de laisser un accès imposé à leurs outils.&lt;/p&gt;
&lt;p&gt;C’est là que les choses deviennent intéressantes.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;csar--lue-veut-lire-ce-quelle-vient-de-te-demander-de-chiffrer&quot;&gt;CSAR : l’UE veut lire ce qu’elle vient de te demander de chiffrer&lt;/h2&gt;
&lt;p&gt;Le CSAR, officiellement Child Sexual Abuse Regulation, est l’autre texte. Si tu veux le détail complet du mécanisme et du dossier politique, &lt;a href=&quot;https://macsouverain.com/chat-control-csar-surveillance-messageries-chiffrees/&quot;&gt;l’article sur le Chat Control 2.0&lt;/a&gt; l’explique intégralement.&lt;/p&gt;
&lt;p&gt;Tu verras que si l’objectif est louable et que nous le partageons tous, les modalités de son application relèvent plus de pratiques totalitaires d’un autre temps, que de la saine démocratie.&lt;/p&gt;
&lt;p&gt;La version courte :&lt;/p&gt;
&lt;p&gt;Le CSAR obligerait les messageries à scanner le contenu de tes messages sur ton appareil, &lt;em&gt;avant&lt;/em&gt; qu’ils soient chiffrés. Le terme technique est « client-side scanning ».&lt;/p&gt;
&lt;p&gt;En pratique : ton message est lu sur ton appareil, avant d’être chiffré et envoyé. En France, accéder au contenu d’une correspondance sans autorisation est un délit aggravé quand c’est un agent public qui s’en charge. Apparemment, quand tu es l’Europe, tu peux, et ça ne te chiffonne pas.&lt;/p&gt;
&lt;p&gt;Le chiffrement de bout en bout reste « techniquement intact » pendant le transport, mais il a été contourné avant de s’appliquer. &lt;strong&gt;Scanner avant de chiffrer, c’est chiffrer pour la galerie.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;L’état du dossier au moment de la publication : le Conseil de l’UE a adopté sa position le 26 novembre 2025. Les trilogues, ces négociations opaques entre Parlement, Conseil et Commission où le texte final se fabrique en coulisses, ont commencé. Prochain trilogue : &lt;strong&gt;4 mai 2026&lt;/strong&gt;. Adoption formelle visée : &lt;strong&gt;juillet 2026&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Les termes ont évolué depuis la première version : « client-side scanning » s’appelle désormais « mesures d’atténuation des risques » dans les documents officiels. L’emballage est plus présentable. L’effet sur ta machine est identique.&lt;/p&gt;
&lt;p&gt;La même Commission européenne qui a produit NIS2 pousse CSAR. Ce n’est pas une métaphore.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/chat-control-csar-surveillance-messageries-chiffrees/&quot;&gt;Chat Control 2.0 : l’UE veut lire tes messages avant que tu les envoies&lt;/a&gt; : mécanisme complet, Signal, Proton, et ce que tu peux faire.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;la-contradiction-fondamentale&quot;&gt;La contradiction fondamentale&lt;/h2&gt;
&lt;p&gt;Posons les deux textes côte à côte.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;NIS2, article 21&lt;/strong&gt; : chiffrement des données en transit et au repos, MFA, communications sécurisées. Obligation légale, responsabilité personnelle du dirigeant, sanctions en cas de non-conformité.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;CSAR&lt;/strong&gt; : scanning des messages &lt;em&gt;avant&lt;/em&gt; chiffrement sur chaque appareil, sans mandat judiciaire, sans notification à l’utilisateur, pour toutes les communications, pas seulement les communications suspectes.&lt;/p&gt;
&lt;p&gt;Le scan lit vraiment tout, et une IA décide de ton sort. Les faux positifs vont être grandioses. Gageons que la perquisition à six heures du mat, avec plates excuses à la clé, ou non, va l’être tout autant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pourquoi ces deux textes sont physiquement incompatibles : pour scanner un contenu « avant chiffrement », il faut qu’il soit accessible, à un moment donné, en clair, par un processus tiers.&lt;/strong&gt; Ce processus crée un &lt;strong&gt;point d’accès obligatoire&lt;/strong&gt; : assumé et légalisé, dans le cas de CSAR. Cette disposition est totalement incompatible avec les objectifs de NIS2.&lt;/p&gt;
&lt;p&gt;C’est précisément ce que le droit français, dans le projet de loi de &lt;strong&gt;transposition de NIS2&lt;/strong&gt;, via son article 16 bis, &lt;strong&gt;interdit d’imposer aux fournisseurs de chiffrement&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La même Commission a rédigé les deux textes.&lt;/strong&gt; Le commissaire à la sécurité numérique supervise NIS2. Le commissariat à l’intérieur pousse CSAR. Ce ne sont pas deux ministères ennemis. En France, même schéma : l’ANSSI publie des référentiels de sécurité, la DGSI remonte ses besoins à son ministre, là encore, les intérêts divergent.&lt;/p&gt;
&lt;p&gt;Le &lt;a href=&quot;https://eur-lex.europa.eu/legal-content/EN/TXT/PDF/?uri=CELEX:52025DC0740&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;COM(2025)740 final (27 novembre 2025)&lt;/a&gt;, rapport d’évaluation de la Commission elle-même, admet que &lt;strong&gt;le dispositif ne permet pas d’établir de lien démontrable entre les signalements générés et des condamnations réelles&lt;/strong&gt;, ni de quantifier le nombre d’enfants effectivement identifiés grâce à lui.&lt;/p&gt;
&lt;p&gt;Ce n’est pas une critique externe. C’est l’institution porteuse du texte qui, dans son propre bilan, reconnaît l’impossibilité méthodologique de valider l’outil qu’elle entend imposer à 450 millions d’Européens.&lt;/p&gt;
&lt;p&gt;On construit l’infrastructure pour un espionnage de masse.&lt;/p&gt;
&lt;p&gt;Son prétexte ne tient pas, à l’aune de la technique implémentée et des résultats non prouvés.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-dit-sur-ta-protection&quot;&gt;Ce que ça dit sur ta protection&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;NIS2 reste un bon texte&lt;/strong&gt;. L’obligation de chiffrer, de prendre la cybersécurité au sérieux, de responsabiliser les dirigeants, ce sont de vraies avancées. Si tu es dans une entité concernée, NIS2 va te forcer à faire ce que tu aurais dû faire il y a dix ans. Ce n’est pas le problème.&lt;/p&gt;
&lt;p&gt;Le problème, c’est ce que cette incohérence révèle sur la solidité de ta protection.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La protection numérique individuelle ne peut pas reposer sur la cohérence réglementaire des institutions.&lt;/strong&gt; Elles se contredisent structurellement. NIS2 t’oblige à chiffrer aujourd’hui. CSAR veut rendre ce chiffrement contournable demain. La loi qui te protège et la loi qui t’espionne peuvent coexister dans le même corpus juridique, avec la même légitimité formelle.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce qui te protège vraiment, c’est la conception technique&lt;/strong&gt;, pas la conformité légale.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Signal ne peut pas implémenter le client-side scanning&lt;/strong&gt; sans casser son modèle architectural. C’est la raison pour laquelle Meredith Whittaker a dit préférer quitter le marché européen plutôt que de le faire. Ce n’est pas une posture : &lt;strong&gt;c’est une impossibilité technique&lt;/strong&gt; déguisée en position politique. &lt;strong&gt;Proton fonctionne sur le même principe&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Un outil dont la conception technique rend le scan impossible est protégé autrement qu’un outil qui « respecte la loi en vigueur ». La loi peut changer. L’architecture, elle, demeure. C’est ta garantie.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour les entreprises concernées par NIS2&lt;/strong&gt;, une nuance s’impose : &lt;strong&gt;cette conformité reste obligatoire et nécessaire&lt;/strong&gt;. Chiffrer tes données en transit et au repos, mettre en place la MFA, sécuriser tes communications internes, ce sont des obligations réelles avec des sanctions réelles si non tenues.&lt;/p&gt;
&lt;p&gt;Les implémenter avec des outils dont la conception est solide, dont le code est audité, dont la juridiction est favorable, c’est empiler deux couches de protection plutôt qu’une seule. &lt;strong&gt;NIS2 et la prudence architecturale ne sont pas en opposition&lt;/strong&gt;. Ils devraient se compléter.&lt;/p&gt;
&lt;p&gt;Ce qui ne tient pas, c’est de croire que « conformité NIS2 = protection complète » si CSAR passe. La conformité légale devient un filet insuffisant, le jour où une autre loi crée une brèche dans ce que la première exigeait de construire.&lt;/p&gt;
&lt;p&gt;L’article 16 bis du projet de loi français, celui qui interdit le scan dans les outils de chiffrement, est une ligne de défense réelle. Le fait qu’il coexiste dans le même projet de loi que les obligations de NIS2 est encourageant. Le fait qu’il soit en friction politique avec CSAR, porté par la même Commission, donne une idée du terrain sur lequel cette tension va se jouer dans les prochains mois.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Deux textes, une même institution, deux directions opposées. NIS2 t’oblige à chiffrer, responsabilise tes dirigeants et, pour la France, interdit explicitement le scanning dans les outils de chiffrement. CSAR veut scanner avant le chiffrement, c’est-à-dire contourner le chiffrement par conception, sans mandat judiciaire, pour toutes tes communications.&lt;/p&gt;
&lt;p&gt;Ce n’est pas une contradiction surmontable par un amendement. C’est une incohérence structurelle entre deux priorités institutionnelles incompatibles : sécuriser et surveiller.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les points d’attention :&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; Si tu es concerné par NIS2, avance sur la conformité sans attendre le vote français. Les obligations arrivent, retard de transposition ou pas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2.&lt;/strong&gt; Choisis des outils dont la conception technique rend l’accès forcé impossible, pas seulement des outils qui « respectent les réglementations en vigueur ». Les réglementations bougent. L’architecture, moins.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3.&lt;/strong&gt; Suis les trilogues CSAR : 4 mai 2026 est le prochain point de bascule. La pression publique a fonctionné sur Chat Control 1.0.&lt;/p&gt;
&lt;p&gt;Pour aller plus loin sur le chiffrement de bout en bout, et pourquoi ça reste le seul rempart solide, l’article sur ce sujet arrive prochainement.&lt;/p&gt;
&lt;p&gt;L’article sur le CSAR reste la référence pour le mécanisme détaillé, les positions de Signal et Proton, et les actions concrètes que tu peux prendre maintenant.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/chat-control-csar-surveillance-messageries-chiffrees/&quot;&gt;Chat Control 2.0 : l’UE veut lire tes messages avant que tu les envoies&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Si la question de la souveraineté numérique te concerne au-delà du seul cadre réglementaire, le concept de base est posé dans l’article fondateur.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/quest-ce-que-la-souverainete-digitale-en-pratique/&quot;&gt;La souveraineté digitale, c’est quoi concrètement ?&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La page &lt;a href=&quot;https://cyber.gouv.fr/la-directive-nis-2&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;ANSSI dédiée à NIS2&lt;/a&gt; recense les secteurs concernés et les obligations en détail.&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>privacy</category><category>securite</category><category>chiffrement</category><category>reglementation</category><category>informatif</category><enclosure url="https://macsouverain.com/content/images/2026/04/art31-nis2-csar-feature.png" length="0" type="image/png"/></item><item><title>Chat Control 2.0 : l&apos;UE veut lire tes messages avant que tu les envoies</title><link>https://macsouverain.com/chat-control-csar-surveillance-messageries-chiffrees/</link><guid isPermaLink="true">https://macsouverain.com/chat-control-csar-surveillance-messageries-chiffrees/</guid><description>Le règlement CSAR obligerait les messageries à scanner tes messages avant chiffrement. Signal menace de quitter l&apos;Europe. Ce que tu peux faire.</description><pubDate>Sat, 18 Apr 2026 13:46:19 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ juillet 2026.&lt;/strong&gt; Le calendrier de cet article est dépassé : le trilogue du 4 mai a eu lieu, et le 9 juillet le Parlement européen a laissé passer la reconduction de Chat Control 1.0 (scanning volontaire), non par un vote pour mais faute des 361 voix requises pour bloquer, alors que la majorité votait contre. Le chiffrement de bout en bout est explicitement exclu de ce texte. Le vrai combat, le CSAR (2.0) décrit ci-dessous, repart en trilogue en septembre. &lt;a href=&quot;https://macsouverain.com/radar-chat-control-1-adopte-par-defaut/&quot;&gt;Détails dans le radar&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Tu envoies un message à un ami sur Signal. Chiffré de bout en bout, personne ne peut le lire entre toi et lui. C’est le principe, c’est la promesse, c’est ce qui fait que des centaines de millions de personnes utilisent des messageries chiffrées.&lt;/p&gt;
&lt;p&gt;L’Union européenne trouve que c’est un problème.&lt;/p&gt;
&lt;p&gt;Sous couvert de lutter contre la pédopornographie, la Commission européenne pousse un règlement qui obligerait chaque messagerie à scanner le contenu de tes messages &lt;em&gt;avant&lt;/em&gt; qu’ils soient chiffrés. Signal menace de quitter l’Europe. Proton dit préférer être bloqué. Apple ne dit rien. Et c’est peut-être le plus inquiétant.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/radar-chat-control-2-espionnage-masse/&quot;&gt;Radar Chat Control 2.0 : l’UE veut scanner tous tes messages&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-problème--un-mouchard-sur-ton-propre-appareil&quot;&gt;Le problème : un mouchard sur ton propre appareil&lt;/h2&gt;
&lt;p&gt;Imagine un facteur qui lirait systématiquement chaque lettre que tu postes, la comparerait à une liste noire, puis la glisserait dans une enveloppe scellée. L’enveloppe est bien fermée, personne ne peut l’ouvrir en chemin. Mais le facteur a déjà tout lu.&lt;/p&gt;
&lt;p&gt;C’est exactement ce que le CSAR (Child Sexual Abuse Regulation) imposerait aux messageries chiffrées. Le terme technique est « client-side scanning ». En langage humain : ton appareil scanne le contenu de tes messages, photos et fichiers &lt;em&gt;avant&lt;/em&gt; de les chiffrer et de les envoyer. Le résultat du scan est comparé à une base de données de contenus illicites. Si une correspondance est détectée, signalement automatique aux autorités.&lt;/p&gt;
&lt;p&gt;Le chiffrement de bout en bout reste « techniquement » intact. Le message est bien chiffré pendant le transport. Sauf qu’il est lu avant.&lt;/p&gt;
&lt;p&gt;Un chiffrement qu’on contourne avant qu’il s’applique, c’est un chiffrement de façade.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-mécanisme--comment-ça-fonctionne-concrètement&quot;&gt;Le mécanisme : comment ça fonctionne concrètement&lt;/h2&gt;
&lt;p&gt;Le scanning côté client repose sur trois étapes, toutes exécutées sur ton appareil.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Interception pré-chiffrement&lt;/strong&gt; : au moment où tu tapes un message ou attaches une photo, le contenu est capturé en clair, avant que le protocole de chiffrement E2E ne s’applique. C’est la clé du mécanisme : le chiffrement n’est jamais « cassé », il est contourné.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Comparaison par hash perceptuel&lt;/strong&gt; : le contenu est converti en empreinte numérique et comparé à une base de données d’empreintes de contenus connus. Le problème des faux positifs est documenté : des photos de famille, des images médicales, des mèmes ont déjà déclenché des signalements erronés dans les systèmes existants de Google et Meta.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Signalement automatisé&lt;/strong&gt; : si correspondance, transmission aux autorités sans intervention humaine et sans notification à l’utilisateur. Tu ne sais pas que tu as été signalé. Tu ne peux pas contester avant que le processus soit enclenché.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Le tout fonctionne en silence, en arrière-plan, sur chaque message envoyé par chaque utilisateur. Le plus beau : sans aucun mandat judiciaire. La porte ouverte à tous les abus administratifs.&lt;/p&gt;
&lt;p&gt;C’est de l’espionnage de masse par conception, sous couvert de démocratie bien proprette.&lt;/p&gt;
&lt;p&gt;Et c’est là que l’analogie du facteur atteint ses limites. Le facteur, tu peux le voir. S’il se fait attraper, c’est délit aggravé direct. Case prison probable.&lt;/p&gt;
&lt;p&gt;Le scanner intégré à ton propre appareil, lui, il est tranquilou. Si tu ne lis pas mes articles, tu n’es même pas au courant qu’il est juste là, à travailler sous ton nez.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-change-concrètement&quot;&gt;Ce que ça change concrètement&lt;/h2&gt;
&lt;h3 id=&quot;deux-textes-deux-destins&quot;&gt;Deux textes, deux destins&lt;/h3&gt;
&lt;p&gt;Il faut démêler deux choses qui circulent souvent confondues.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chat Control 1.0&lt;/strong&gt;, dans sa version la plus agressive, n’a pas été prolongé, c’est vrai. Mais la réalité est plus nuancée. Le 11 mars 2026, le Parlement européen a voté à 458 voix pour l’extension de la dérogation ePrivacy jusqu’au 3 août 2027. L’ancienne dérogation expirait le 3 avril 2026. La résolution protège explicitement le chiffrement de bout en bout : les mesures ne peuvent pas s’appliquer aux communications E2EE. Ce n’est pas « Chat Control 1.0 est mort ». C’est une victoire partielle : le scanning E2EE obligatoire est écarté, une extension limitée est votée, et le temps laissé au texte permanent CSAR de se négocier. Prochains trilogues CSAR : 4 mai 2026 et 29 juin 2026.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chat Control 2.0, officiellement baptisé CSAR&lt;/strong&gt;, c’est une autre histoire. Et c’est celle-là qui est en jeu.&lt;/p&gt;
&lt;p&gt;Le Conseil de l’UE a adopté sa position le 26 novembre 2025, vote serré, Pologne et Pays-Bas contre. Depuis décembre 2025, le texte est en trilogue : la phase de négociation entre Parlement, Conseil et Commission où le texte final se fabrique. Ces négociations sont opaques par design. Les positions des trois parties ne sont pas publiques, les compromis se font en coulisses.&lt;/p&gt;
&lt;p&gt;Prochain trilogue : &lt;strong&gt;4 mai 2026&lt;/strong&gt;. Adoption formelle visée : &lt;strong&gt;juillet 2026&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Les termes ont changé depuis la première version. « Client-side scanning » est devenu « mesures d’atténuation des risques » et « activités volontaires de détection ». L’emballage est plus présentable. L’effet pratique est identique selon l’&lt;a href=&quot;https://edri.org&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;EDRi&lt;/a&gt;, l’&lt;a href=&quot;https://www.eff.org&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;EFF&lt;/a&gt; et &lt;a href=&quot;https://noyb.eu&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;noyb&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&quot;signal-proton-apple--trois-réponses-très-différentes&quot;&gt;Signal, Proton, Apple : trois réponses très différentes&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://signal.org&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Signal&lt;/a&gt;&lt;/strong&gt; a été direct. Meredith Whittaker, directrice exécutive, déclarait en octobre 2025 que Signal prendrait « malheureusement la décision de quitter le marché européen » plutôt que de compromettre son chiffrement. Signal est une association à but non lucratif. Pas d’actionnaires, pas de revenus publicitaires, pas d’obligations de marché. Quand ils disent ça, c’est crédible.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://proton.me&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Proton&lt;/a&gt;&lt;/strong&gt;, juridiction suisse, même posture : « we’d rather be blocked ». La Suisse n’est pas dans l’UE, Proton bénéficie d’une distance juridique réelle vis-à-vis du droit européen. Le CSAR ne s’appliquerait à Proton que si Proton opère dans l’UE via ses utilisateurs européens, mais la marge de manœuvre juridique est plus large qu’un simple « on se plie ou on ferme ».&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Apple&lt;/strong&gt; n’a rien dit publiquement sur le CSAR.&lt;/p&gt;
&lt;p&gt;Ce silence est significatif. En décembre 2022, Apple avait abandonné son propre projet de client-side scanning pour les photos iCloud, après un backlash massif de la communauté des chercheurs en sécurité. Le message semblait clair : pas de scanning côté client.&lt;/p&gt;
&lt;p&gt;Sauf qu’Apple n’est pas Signal. Apple est une entreprise cotée en bourse, avec des Apple Store physiques dans toute l’Europe, des filiales locales, un chiffre d’affaires européen qui se compte en dizaines de milliards. Signal peut dire « on ferme ». Apple, plus difficilement.&lt;/p&gt;
&lt;p&gt;Pour un utilisateur Mac, c’est l’angle le plus inconfortable. Tu utilises iMessage au quotidien, tu fais confiance au chiffrement E2E d’Apple, et l’entreprise qui le fournit n’a pas pris position publique sur la menace la plus directe qui pèse sur ce chiffrement.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-pattern-mondial--même-prétexte-même-infrastructure&quot;&gt;Le pattern mondial : même prétexte, même infrastructure&lt;/h2&gt;
&lt;p&gt;L’Europe n’agit pas dans le vide.&lt;/p&gt;
&lt;p&gt;Aux États-Unis, l’EARN IT Act suit exactement la même logique : même prétexte (protection des enfants contre le CSAM), même effet (destruction du chiffrement de bout en bout), même stratégie rhétorique. Qui pourrait être contre la protection des enfants ? Personne. C’est précisément pour ça que c’est le levier choisi.&lt;/p&gt;
&lt;p&gt;Ce n’est pas une coïncidence. C’est un pattern. Des deux côtés de l’Atlantique, des législateurs utilisent la cause la plus moralement inattaquable pour créer l’infrastructure technique d’une surveillance généralisée. L’infrastructure, une fois construite, ne disparaît plus.&lt;/p&gt;
&lt;h3 id=&quot;quand-un-juge-suffit&quot;&gt;Quand un juge suffit&lt;/h3&gt;
&lt;p&gt;En mars 2026, un tribunal du Nouveau-Mexique a condamné Meta à 375 millions de dollars pour pratiques déloyales envers les mineurs. Dans ce procès, le procureur général avait présenté la décision de passer Messenger en E2E par défaut comme un « choix de conception » ayant rendu plus difficile la transmission des signalements aux forces de l’ordre. Le juge a suivi, créant ainsi une jurisprudence.&lt;/p&gt;
&lt;p&gt;L’argument du « design choice » est redoutable : si cet angle juridique fait école, toute décision d’améliorer la sécurité des utilisateurs peut devenir une preuve à charge dans un futur procès. Pourquoi ajouter du chiffrement ? Un avocat en fera « un outil délibéré de protection des criminels ». Cette logique est juridiquement crédible, et elle vient d’être testée avec succès.&lt;/p&gt;
&lt;p&gt;Ce jugement ne concerne que Meta, aux États-Unis. Mais Apple est également exposée juridiquement sur le sol américain. Si ce précédent fait école, la pression sur iMessage sera d’une nature différente de celle sur Signal. Signal peut dire « on ferme » sur une zone géographique. Apple, non.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;quand-la-commission-avoue-que-ça-ne-sert-à-rien&quot;&gt;Quand la Commission avoue que ça ne sert à rien&lt;/h2&gt;
&lt;p&gt;Le rapport d’implémentation COM(2025)740, publié par la Commission européenne elle-même, contient un aveu remarquable : &lt;strong&gt;il n’est actuellement pas possible d’établir un lien clair entre les signalements soumis par les prestataires et les condamnations prononcées, ni de fournir un aperçu fiable du nombre d’enfants secourus&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Ce n’est pas un argument de militant libertaire. C’est la Commission, dans son propre document d’évaluation, qui reconnaît que l’outil qu’elle veut imposer à 450 millions d’Européens n’a pas de résultats démontrables.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;On crée une infrastructure de scanning généralisé&lt;/strong&gt; des communications privées &lt;strong&gt;sans pouvoir démontrer qu’elle protège&lt;/strong&gt; qui que ce soit.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le seul résultat garanti, c’est la surveillance elle-même&lt;/strong&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-limites--idées-reçues-et-fausses-évidences&quot;&gt;Les limites : idées reçues et fausses évidences&lt;/h2&gt;
&lt;h3 id=&quot;-cest-pour-protéger-les-enfants-donc-cest-légitime&quot;&gt;« C’est pour protéger les enfants, donc c’est légitime »&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;L’objectif est légitime&lt;/strong&gt;. Le moyen ne l’est pas. &lt;strong&gt;Lutter contre la pédocriminalité, tout le monde est d’accord&lt;/strong&gt;. Mais &lt;strong&gt;créer un système qui scanne chaque message de chaque citoyen&lt;/strong&gt; pour attraper une infime minorité de criminels, &lt;strong&gt;c’est de l’espionnage de masse&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Cela renvoie directement aux États totalitaires. Ceux que l’Europe et la France ne manquent pas de brocarder, à grands coups de défense des droits de l’homme et de libertés publiques.&lt;/p&gt;
&lt;p&gt;Et les spécialistes de la protection de l’enfance, y compris au sein de la société civile européenne, pointent des alternatives ciblées plus efficaces : renforcement des moyens des forces de l’ordre, coopération internationale, détection comportementale côté serveur sur les plateformes non chiffrées. Le scanning de masse n’est pas le seul outil. C’est le plus intrusif.&lt;/p&gt;
&lt;h3 id=&quot;-le-chiffrement-est-protégé-dans-le-texte&quot;&gt;« Le chiffrement est protégé dans le texte »&lt;/h3&gt;
&lt;p&gt;Le texte du CSAR contient effectivement une clause de protection du chiffrement. Mais cette clause coexiste avec l’obligation de scanner les contenus avant chiffrement. C’est comme garantir l’inviolabilité du courrier tout en exigeant que le facteur le lise avant de le cacheter.&lt;br&gt;
Du vrai foutage de gueule.&lt;/p&gt;
&lt;h3 id=&quot;-ça-ne-concerne-que-les-criminels&quot;&gt;« Ça ne concerne que les criminels »&lt;/h3&gt;
&lt;p&gt;Non. Le scanning est systématique, appliqué à toutes les communications, pas aux communications suspectes. Il n’y a pas de mandat judiciaire. Il n’y a pas de ciblage. Si tu utilises une messagerie chiffrée en Europe, tes messages seraient scannés. Tous.&lt;/p&gt;
&lt;p&gt;Les faux positifs existent. Des systèmes similaires déployés par Google et Meta ont signalé des parents envoyant des photos de leurs enfants à leur pédiatre. Innocent, scanné, signalé.&lt;/p&gt;
&lt;h3 id=&quot;-une-fois-votée-la-loi-est-irréversible&quot;&gt;« Une fois votée, la loi est irréversible »&lt;/h3&gt;
&lt;p&gt;Pas nécessairement. La version agressive de Chat Control 1.0 (scanning E2EE obligatoire) a été écartée grâce à la mobilisation citoyenne et au vote du Parlement européen. La pression publique change les votes. Le trilogue du 4 mai 2026 est le prochain point de bascule, et le texte n’est pas encore gravé dans le marbre.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-précédent-politique&quot;&gt;Le précédent politique&lt;/h2&gt;
&lt;p&gt;Le vrai danger du CSAR dépasse la question technique du scanning.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Si l’Union européenne, la juridiction qui a inventé le RGPD&lt;/strong&gt; et qui se présente comme le champion mondial de la protection des données personnelles, &lt;strong&gt;normalise le scanning obligatoire&lt;/strong&gt; des communications privées chiffrées, &lt;strong&gt;le signal envoyé au reste du monde est dévastateur&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Chaque gouvernement qui rêve de surveiller les communications de ses citoyens aura un modèle, validé par l’UE, clé en main.&lt;/p&gt;
&lt;p&gt;J’ai passé les deux dernières années à construire une infrastructure numérique souveraine, chiffrée, en grande partie auto-hébergée. Signal pour le courant. Matrix pour les messages internes , Proton pour les emails, DNS chiffrés, navigateurs durcis. Par principe, certes, mais aussi pour le Business.&lt;/p&gt;
&lt;p&gt;Alors, ce qui me sidère dans ce texte, c’est qu’il est porté par la même institution qui a créé le RGPD. Celle qui se pare de toutes les vertus attachées aux droits de l’homme et aux libertés.&lt;/p&gt;
&lt;p&gt;L’espionnage de masse et son infrastructure ne viennent jamais avec une date d’expiration. Une fois en place, ils ne font que s’étendre.&lt;/p&gt;
&lt;p&gt;Les bases de données de comparaison, aujourd’hui limitées au CSAM, pourraient demain inclure du contenu terroriste, du contenu extrémiste, du contenu de désinformation. Sauf que pour être caractérisé ainsi aujourd’hui, un contenu doit répondre à des critères précis, légaux, qu’un juge doit confirmer.&lt;/p&gt;
&lt;p&gt;Sans contrôle de justice, avec un brin d’élan, on pourrait facilement glisser sur des sujets comme les avis politiques divergents, le journalisme d’investigation qui dérange (Rhaaa! Mediapart et le Canard, poils à gratter des élus…) le secteur syndical, les ONG qui font trop de buzz là où ça fait mal, le secret médical, bref, tout ce qu’un dirigeant totalitaire pourrait rêver pour égayer ses journées.&lt;/p&gt;
&lt;p&gt;Tout ça par le simple biais administratif, sans mandat, et sans juge. Franco doit s’en vouloir à mort d’avoir loupé ça.&lt;/p&gt;
&lt;p&gt;Les catégories sont élastiques par nature. L’infrastructure retenue crée le cadre de l’extension.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-tu-peux-faire&quot;&gt;Ce que tu peux faire&lt;/h2&gt;
&lt;p&gt;Tu ne peux pas empêcher un trilogue de se tenir. Mais tu peux rendre la surveillance plus difficile à appliquer sur tes propres appareils, et tu peux peser sur le résultat politique.&lt;/p&gt;
&lt;h3 id=&quot;protège-tes-communications&quot;&gt;Protège tes communications&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Signal&lt;/strong&gt; pour tes conversations. C’est la seule messagerie, E2EE de bout en bout, dont l’opérateur a publiquement déclaré qu’il préférait fermer le service en Europe, plutôt que de compromettre son chiffrement.&lt;/p&gt;
&lt;p&gt;Open source, sans publicité, sans collecte de données. Financé par donations, dont 50 millions de dollars de Brian Acton, cofondateur de WhatsApp, à la création de la Signal Foundation en 2018. Pas d’actionnaires, pas de modèle publicitaire : aucun intérêt économique à monétiser tes messages.&lt;/p&gt;
&lt;p&gt;J’utilise Matrix/Elements parce que je self-host en mode privacy maximum, mais Signal au quotidien, pour des messages chiffrés sans complications, est le choix de référence. Si tu devais utiliser un seul outil de cette liste, ce serait ma reco.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://proton.me/mail&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Proton Mail&lt;/a&gt;&lt;/strong&gt; pour tes emails. Chiffrement de bout en bout, juridiction suisse, même posture que Signal face au CSAR. Tes emails professionnels, bancaires, administratifs n’ont rien à faire sur Gmail et personne ne devrait pouvoir les lire.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/apple-mail-vs-gmail-vs-proton-mail/&quot;&gt;Apple Mail vs Gmail vs Proton Mail : le comparatif honnête&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/migrer-gmail-proton-mail-mac/&quot;&gt;Migrer de Gmail vers Proton Mail&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&quot;réduis-ta-surface-dexposition&quot;&gt;Réduis ta surface d’exposition&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;VPN&lt;/strong&gt; comme couche supplémentaire. &lt;strong&gt;Si Signal ou Proton venaient à être géo-bloqués&lt;/strong&gt; en Europe, &lt;strong&gt;un VPN avec une IP hors UE te donnerait accès au service&lt;/strong&gt;. Mullvad est celui que je recommanderais : pas de compte, pas d’email, paiement en cash ou crypto, juridiction suédoise. Le VPN ne remplace pas le chiffrement de la messagerie, il le complète en masquant ton accès.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;DNS souverain.&lt;/strong&gt; Change les résolveurs DNS de tous tes appareils. Si les FAI européens sont contraints de bloquer des domaines, un résolveur hors juridiction UE court-circuite ce blocage. &lt;a href=&quot;https://www.quad9.net&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Quad9&lt;/a&gt; (9.9.9.9), géré par une association suisse à but non lucratif, ne journalise pas tes requêtes.&lt;/p&gt;
&lt;p&gt;Pour chiffrer les requêtes DNS nativement sur Mac et iPhone, installe le profil de configuration DoH de Quad9 depuis leur page documentation (docs.quad9.net, section Apple). Dix minutes bien investies.&lt;/p&gt;
&lt;h3 id=&quot;si-signal-ou-proton-quittent-leurope&quot;&gt;Si Signal ou Proton quittent l’Europe ?&lt;/h3&gt;
&lt;p&gt;C’est la question pratique. Si la loi passe et que Signal ou Proton mettent leur menace à exécution, comment continuer à les utiliser ?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Signal&lt;/strong&gt; distribue son APK Android directement sur &lt;a href=&quot;https://signal.org&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;signal.org&lt;/a&gt;. Sur iOS, le DMA (Digital Markets Act), en vigueur depuis mars 2024, ouvre la porte au sideloading. Signal pourrait distribuer son application via un canal alternatif, hors App Store. C’est techniquement faisable.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Proton&lt;/strong&gt; est E2EE natif : tes emails et fichiers sont chiffrés par conception, Proton n’y a pas accès. Confidentialité maximale par défaut. Si un blocage géographique intervenait, un VPN avec une IP hors UE suffit à le contourner. Le VPN est lui aussi chiffré de bout en bout : deux couches indépendantes.&lt;/p&gt;
&lt;p&gt;Nuance importante : « quitter le marché » serait d’abord une menace de négociation, un signal politique. Des recours judiciaires passeraient en premier. Signal et Proton le savent. Les législateurs aussi. C’est un jeu de pression, pas un ultimatum immédiat.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/pourquoi-tu-as-besoin-dun-vpn/&quot;&gt;Pourquoi tu as besoin d’un VPN&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&quot;pèse-sur-le-résultat&quot;&gt;Pèse sur le résultat&lt;/h3&gt;
&lt;p&gt;Le trilogue du 4 mai 2026 est le prochain point de bascule. La pression publique fonctionne : le vote sur Chat Control 1.0 le prouve. La version agressive a été écartée par la mobilisation citoyenne.&lt;/p&gt;
&lt;p&gt;L’&lt;a href=&quot;https://edri.org&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;EDRi&lt;/a&gt; (European Digital Rights) et &lt;a href=&quot;https://www.patrick-breyer.de/en/posts/chat-control/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Patrick Breyer&lt;/a&gt;, ancien eurodéputé Pirate et l’une des voix les plus constantes contre ce texte, maintiennent des outils de contact direct avec les eurodéputés. Utilise-les. Écris à tes représentants. Ce n’est pas du militantisme de salon, c’est de la démocratie appliquée.&lt;/p&gt;
&lt;p&gt;Le CSAR n’est pas encore voté. Il n’est pas encore mort non plus.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;L’Union européenne prépare un règlement qui transformerait chaque smartphone en mouchard silencieux, scannant chaque message avant qu’il soit chiffré. L’objectif affiché est la protection des enfants. L’effet réel est une infrastructure de surveillance de masse dont même la Commission ne peut pas prouver l’efficacité.&lt;/p&gt;
&lt;p&gt;Signal et Proton ont tracé une ligne : plutôt quitter l’Europe que compromettre leur chiffrement. Apple n’a rien dit. Pour un utilisateur Mac qui fait confiance à iMessage au quotidien, ce silence devrait poser question.&lt;/p&gt;
&lt;p&gt;Installe Signal. Utilise Proton Mail. Change tes DNS. Contacte tes eurodéputés avant le trilogue du 4 mai. Ce sont des actions concrètes, faisables aujourd’hui, qui réduisent ton exposition quoi qu’il arrive.&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>privacy</category><category>securite</category><category>chiffrement</category><category>informatif</category><enclosure url="https://macsouverain.com/content/images/2026/04/art30-chat-control-feature.png" length="0" type="image/png"/></item><item><title>Migrer de Gmail vers Proton Mail sur Mac</title><link>https://macsouverain.com/migrer-gmail-proton-mail-mac/</link><guid isPermaLink="true">https://macsouverain.com/migrer-gmail-proton-mail-mac/</guid><description>Quitter Gmail pour Proton Mail sur Mac sans perdre un email. Import, redirection, contacts, app native ou Bridge, tout le processus étape par étape.</description><pubDate>Thu, 09 Apr 2026 12:15:14 GMT</pubDate><content:encoded>&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ juillet 2026.&lt;/strong&gt; La faille Hide My Email désanonymise les alias Apple (divulgation publique le 1er juillet, toujours pas corrigée). Un argument de plus pour les alias souverains : &lt;a href=&quot;https://macsouverain.com/apple-mail-vs-gmail-vs-proton-mail/&quot;&gt;voir la mise à jour du comparatif email&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ mai 2026.&lt;/strong&gt; Une raison de plus de migrer : Proton Mail propose désormais le chiffrement post-quantum pour les nouveaux emails, gratuit inclus. Tes communications restent illisibles même pour un futur ordinateur quantique qui aurait stocké les versions chiffrées d’aujourd’hui. &lt;a href=&quot;https://macsouverain.com/radar-proton-mail-post-quantum-mai-2026/&quot;&gt;Détails dans le radar&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Gmail, c’est comme cet appartement en colocation où le propriétaire lit ton courrier. Pas méchamment, juste systématiquement. Depuis 2004. Pour te proposer de la publicité.&lt;/p&gt;
&lt;p&gt;Passer à Proton Mail, c’est récupérer les clés. Tes emails entre utilisateurs Proton sont chiffrés de bout en bout, clés générées sur tes appareils, Proton n’y a techniquement pas accès. Pour les emails entrants depuis l’extérieur (depuis Gmail, par exemple), Proton les chiffre à réception avec ta clé publique, et toi seul peux les déchiffrer. Dans les deux cas, Proton ne peut pas lire tes emails, même contraint légalement.&lt;/p&gt;
&lt;p&gt;La migration elle-même est plus simple qu’elle n’en a l’air. Compte 30 minutes pour un compte léger, 1 à 2 heures si tu as des années d’archives Gmail. À la fin, tu auras tous tes anciens emails dans Proton, tes contacts importés, et Gmail redirigera automatiquement les nouveaux messages vers ta boîte Proton pendant la transition.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/apple-mail-vs-gmail-vs-proton-mail/&quot;&gt;Apple Mail vs Gmail vs Proton Mail : le comparatif honnête&lt;/a&gt; pour comprendre pourquoi Proton Mail est architecturalement différent.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;avant-de-commencer&quot;&gt;Avant de commencer&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Ce qu’il te faut :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Un Mac sous macOS 12 Monterey ou plus récent&lt;/li&gt;
&lt;li&gt;Un compte Gmail actif avec accès IMAP activé (activé par défaut sur la plupart des comptes)&lt;/li&gt;
&lt;li&gt;Un compte Proton Mail (le plan gratuit suffit pour tester ; si tu as plus de 1 Go d’emails, un plan payant sera nécessaire, voir Étape 1)&lt;/li&gt;
&lt;li&gt;Entre 30 minutes et 2 heures selon le volume de ta boîte&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça va changer :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tes emails transitent désormais par les serveurs de Proton (Suisse), chiffrés côté serveur&lt;/li&gt;
&lt;li&gt;Tu accèdes à ta boîte depuis l’app Proton Mail sur Mac (payante, essai 14 jours gratuit) ou depuis le web sur mail.proton.me, ou depuis Apple Mail avec Proton Bridge (plan payant requis pour Bridge)&lt;/li&gt;
&lt;li&gt;Ta nouvelle adresse est en &lt;code&gt;@proton.me&lt;/code&gt; (ou &lt;code&gt;@protonmail.com&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça ne changera pas tout de suite :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tes emails existants sur Gmail restent là jusqu’à ce que tu les importes&lt;/li&gt;
&lt;li&gt;Tes abonnements newsletters et comptes enregistrés gardent ton ancienne adresse Gmail jusqu’à ce que tu les mettes à jour manuellement&lt;/li&gt;
&lt;li&gt;Tu peux garder Gmail actif en parallèle pendant toute la transition&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;L’opération est entièrement réversible.&lt;/strong&gt; Tu ne supprimes rien chez Google à ce stade.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-1--créer-ton-compte-proton-mail&quot;&gt;Étape 1 : Créer ton compte Proton Mail&lt;/h2&gt;
&lt;p&gt;Rends-toi sur &lt;a href=&quot;https://proton.me/mail&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;proton.me/mail&lt;/a&gt; et crée un compte.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Plan gratuit :&lt;/strong&gt; 1 adresse &lt;code&gt;@proton.me&lt;/code&gt;, 500 Mo de stockage de base (extensible à 1 Go en complétant la checklist de démarrage Proton), accès web et app mobile. Easy Switch est disponible sur le plan gratuit, mais le stockage disponible fait office de plafond d’import : avec 1 Go, tu peux importer environ 1 Go d’anciens emails.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Plan Mail Plus :&lt;/strong&gt; 15 Go de stockage, 10 adresses, support de domaine personnalisé, l’accès à &lt;strong&gt;Proton Bridge&lt;/strong&gt; si tu veux utiliser Apple Mail, et &lt;strong&gt;SimpleLogin&lt;/strong&gt; inclus (un service d’alias email, on en reparle à l’étape 6). Tarif : 3,99 $/mois (facturation annuelle).&lt;/p&gt;
&lt;p&gt;Si ta boîte Gmail dépasse 1 Go d’archives, il faudra passer à un plan supérieur ou faire le tri avant de migrer.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;💡 Tu peux commencer sur le plan gratuit, importer les 12 derniers mois, et passer à un plan supérieur pour le reste si nécessaire.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Choisis ton adresse soigneusement.&lt;/strong&gt; &lt;code&gt;prenom.nom@proton.me&lt;/code&gt; pour un usage pro, quelque chose de plus court si c’est pour le quotidien. Tu ne pourras pas la changer après.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-2--importer-tes-emails-depuis-gmail-via-easy-switch&quot;&gt;Étape 2 : Importer tes emails depuis Gmail via Easy Switch&lt;/h2&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/17-02-easy-switch-v5.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Easy Switch Proton — connexion Gmail&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Proton propose un outil d’import intégré qui se connecte directement à ton compte Gmail via OAuth, sans que tu aies à entrer ton mot de passe Gmail dans Proton. Google génère une autorisation temporaire, Proton s’en sert pour lire ta boîte, et c’est tout.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dans Proton Mail web :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Va dans &lt;strong&gt;Paramètres&lt;/strong&gt; (icône engrenage en haut à droite) &gt; &lt;strong&gt;Tous les paramètres&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Clique sur &lt;strong&gt;Importer via Easy Switch&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Sélectionne &lt;strong&gt;Gmail&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Clique sur &lt;strong&gt;Se connecter à Google&lt;/strong&gt;, une fenêtre OAuth Google s’ouvre&lt;/li&gt;
&lt;li&gt;Connecte-toi avec ton compte Gmail et autorise l’accès à ta messagerie&lt;/li&gt;
&lt;/ol&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/17-03-oauth-flow-v7.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Fenêtre OAuth Google — autorisation Proton&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;Une fois connecté, Easy Switch affiche tes dossiers Gmail (Boîte de réception, Envoyés, Archives, etc.) et te laisse choisir ce que tu veux importer. Par défaut, il sélectionne tout : Starred, All Mail, Important, contacts et calendriers.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chemin :&lt;/strong&gt; Proton Mail web &gt; Paramètres &gt; Tous les paramètres &gt; Importer via Easy Switch &gt; Gmail &gt; Se connecter à Google&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que tu dois voir :&lt;/strong&gt; la liste de tes dossiers Gmail avec les compteurs de messages, et une estimation du temps d’import.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;💡 Si tu as des années d’archives, l’import peut prendre plusieurs heures et se fait en arrière-plan. Tu peux fermer l’onglet et revenir plus tard.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Recommandation :&lt;/strong&gt; importer d’abord les 12 derniers mois pour commencer à utiliser Proton rapidement, puis revenir pour le reste.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-3--importer-tes-contacts&quot;&gt;Étape 3 : Importer tes contacts&lt;/h2&gt;
&lt;p&gt;Les emails sans les contacts, c’est moitié moins utile. Google Contacts s’exporte facilement.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Depuis Google Contacts :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Va sur &lt;a href=&quot;https://contacts.google.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;contacts.google.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Clique sur &lt;strong&gt;Exporter&lt;/strong&gt; dans le menu latéral gauche&lt;/li&gt;
&lt;li&gt;Sélectionne &lt;strong&gt;Tous les contacts&lt;/strong&gt; et le format &lt;strong&gt;vCard (.vcf)&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Télécharge le fichier &lt;code&gt;.vcf&lt;/code&gt; sur ton Mac&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Chemin :&lt;/strong&gt; contacts.google.com &gt; Exporter &gt; Tous les contacts &gt; Format vCard&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/17-04-google-contacts-export-v4.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Google Contacts — export vCard&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;Dans Proton Mail web :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Va dans l’onglet &lt;strong&gt;Contacts&lt;/strong&gt; (icône en haut à gauche)&lt;/li&gt;
&lt;li&gt;Clique sur &lt;strong&gt;Importer&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Sélectionne le fichier &lt;code&gt;.vcf&lt;/code&gt; téléchargé&lt;/li&gt;
&lt;li&gt;Confirme l’import&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Chemin :&lt;/strong&gt; Proton Mail web &gt; Contacts &gt; Importer &gt; sélectionner le fichier .vcf&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que tu dois voir :&lt;/strong&gt; un récapitulatif du nombre de contacts importés, avec éventuellement des doublons détectés à fusionner.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-4--configurer-proton-mail-sur-mac&quot;&gt;Étape 4 : Configurer Proton Mail sur Mac&lt;/h2&gt;
&lt;p&gt;Deux options selon ton abonnement.&lt;/p&gt;
&lt;h3 id=&quot;option-a--app-proton-mail-desktop-plan-payant-essai-14-jours&quot;&gt;Option A : App Proton Mail desktop (plan payant, essai 14 jours)&lt;/h3&gt;
&lt;p&gt;Télécharge l’app Proton Mail depuis &lt;a href=&quot;https://proton.me/mail/download&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;proton.me/mail/download&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;C’est une app Electron (comme VSCode), pas une app native AppKit. Ce n’est pas aussi fluide qu’Apple Mail, mais elle gère les emails chiffrés de bout en bout sans configuration supplémentaire.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Attention :&lt;/strong&gt; l’app desktop est réservée aux plans payants. Les comptes gratuits ont droit à un essai de 14 jours, après quoi l’accès est limité à la version web sur &lt;a href=&quot;https://mail.proton.me&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;mail.proton.me&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Lance l’app, connecte-toi avec ton compte Proton, et tu accèdes à ta boîte directement.&lt;/p&gt;
&lt;h3 id=&quot;option-b--apple-mail-via-proton-bridge-plan-payant&quot;&gt;Option B : Apple Mail via Proton Bridge (plan payant)&lt;/h3&gt;
&lt;p&gt;Si tu veux continuer à utiliser Apple Mail avec tes emails Proton chiffrés, il te faut &lt;strong&gt;Proton Bridge&lt;/strong&gt;, un outil qui fait la traduction entre Apple Mail et les serveurs Proton en déchiffrant localement sur ton Mac.&lt;/p&gt;
&lt;p&gt;Proton Bridge est réservé aux plans payants.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/proton-bridge-apple-mail-mac/&quot;&gt;Proton Bridge + Apple Mail sur Mac&lt;/a&gt;, le guide complet avec toutes les étapes de configuration.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-5--activer-la-redirection-gmail-vers-proton-optionnel&quot;&gt;Étape 5 : Activer la redirection Gmail vers Proton (optionnel)&lt;/h2&gt;
&lt;p&gt;Cette étape est facultative mais fortement recommandée pendant la période de transition. Elle permet de ne rien manquer pendant que tu mets à jour tes comptes.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dans Gmail :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Ouvre &lt;strong&gt;Paramètres&lt;/strong&gt; (icône engrenage en haut à droite) &gt; &lt;strong&gt;Voir tous les paramètres&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Va dans l’onglet &lt;strong&gt;Transfert et POP/IMAP&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Clique sur &lt;strong&gt;Ajouter une adresse de transfert&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Entre ton adresse Proton Mail&lt;/li&gt;
&lt;li&gt;Gmail envoie un email de vérification à ton adresse Proton, récupère le code de confirmation&lt;/li&gt;
&lt;li&gt;Retourne dans Gmail, entre le code, et active la redirection&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Chemin :&lt;/strong&gt; Gmail &gt; Paramètres &gt; Voir tous les paramètres &gt; Transfert et POP/IMAP &gt; Ajouter une adresse de transfert&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/17-06-gmail-forwarding-v4.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;Paramètres Gmail — Transfert et POP/IMAP&quot;&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;Ce que tu dois voir :&lt;/strong&gt; ton adresse Proton apparaît dans la liste des adresses de transfert avec le statut “Activé”.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;💡 Garde cette redirection active pendant 3 à 6 mois. Elle te protège contre les oublis pendant que tu mets à jour tes comptes importants.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étape-6--mettre-à-jour-tes-comptes-importants&quot;&gt;Étape 6 : Mettre à jour tes comptes importants&lt;/h2&gt;
&lt;p&gt;C’est la partie la moins automatisable, et franchement la plus longue. Priorise dans cet ordre :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Comptes critiques en premier&lt;/strong&gt; : banques, impôts, assurances, médecin, employeur, admin&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Comptes courants&lt;/strong&gt; : e-commerce (Amazon, etc.), services en ligne, abonnements&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Réseaux sociaux&lt;/strong&gt; : LinkedIn, Instagram, etc.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Newsletters&lt;/strong&gt; : en dernier, ou lors du désabonnement&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Une astuce : cherche dans ta boîte Gmail les emails récents contenant “ne pas répondre”, “no-reply” ou “transaction” pour repérer les services actifs.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Mieux que de donner ta vraie adresse partout : utilise SimpleLogin.&lt;/strong&gt; C’est un service d’alias email racheté par Proton et inclus dans tous les plans payants.&lt;/p&gt;
&lt;p&gt;Au lieu de mettre &lt;code&gt;prenom.nom@proton.me&lt;/code&gt; sur chaque site, tu crées un alias unique par service (genre &lt;code&gt;amazon.2k6x@simplelogin.co&lt;/code&gt;). Les emails arrivent dans ta boîte Proton, mais si un service se fait pirater ou revend ton adresse, tu désactives l’alias et c’est réglé. Zéro spam, zéro fuite de ta vraie adresse. Tu gères tout ça depuis &lt;a href=&quot;https://app.simplelogin.io&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;app.simplelogin.io&lt;/a&gt; ou directement depuis l’extension navigateur SimpleLogin.&lt;/p&gt;
&lt;p&gt;Pour chaque service, connecte-toi, va dans les paramètres compte, et mets à jour l’adresse email — idéalement avec un alias SimpleLogin plutôt que ton adresse Proton directe. Vérifie bien l’email de confirmation sur ta boîte Proton.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;si-ça-ne-marche-pas&quot;&gt;Si ça ne marche pas&lt;/h2&gt;
&lt;h3 id=&quot;problème--limport-sarrête-en-cours-de-route-ou-semble-stagner&quot;&gt;Problème : l’import s’arrête en cours de route ou semble stagner&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable :&lt;/strong&gt; Gmail impose une limite de bande passante quotidienne sur les exports IMAP. Si ta boîte est volumineuse, Gmail coupe le flux au bout d’un certain volume.&lt;br&gt;
&lt;strong&gt;Solution :&lt;/strong&gt; ne rien faire. Easy Switch reprend automatiquement le lendemain quand Gmail réinitialise la limite. Pour les très grandes boîtes, l’import peut s’étaler sur plusieurs jours.&lt;/p&gt;
&lt;h3 id=&quot;problème--easy-switch-reste-bloqué-ou-affiche-une-erreur-dautorisation&quot;&gt;Problème : Easy Switch reste bloqué ou affiche une erreur d’autorisation&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable :&lt;/strong&gt; accès IMAP désactivé sur le compte Gmail, ou compte Google Workspace avec restrictions administrateur.&lt;br&gt;
&lt;strong&gt;Solution :&lt;/strong&gt; dans Gmail &gt; Paramètres &gt; Voir tous les paramètres &gt; Transfert et POP/IMAP &gt; Activer IMAP. Si tu es sur un compte professionnel Workspace, l’admin Google a peut-être désactivé l’accès IMAP tiers, contacte-le.&lt;/p&gt;
&lt;h3 id=&quot;problème--limport-est-très-lent-ou-semble-bloqué&quot;&gt;Problème : l’import est très lent ou semble bloqué&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable :&lt;/strong&gt; volume d’emails important, serveurs Proton sous charge.&lt;br&gt;
&lt;strong&gt;Solution :&lt;/strong&gt; laisse tourner en arrière-plan. L’import peut prendre plusieurs heures pour des boîtes volumineuses. Proton envoie un email de confirmation à la fin.&lt;/p&gt;
&lt;h3 id=&quot;problème--lemail-de-vérification-pour-la-redirection-gmail-narrive-pas-sur-proton&quot;&gt;Problème : l’email de vérification pour la redirection Gmail n’arrive pas sur Proton&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable :&lt;/strong&gt; délai de propagation, ou l’email a atterri dans le dossier Spam Proton.&lt;br&gt;
&lt;strong&gt;Solution :&lt;/strong&gt; vérifie le dossier Spam dans Proton. Si toujours absent après 10 minutes, relance la vérification depuis les paramètres Gmail.&lt;/p&gt;
&lt;h3 id=&quot;problème--proton-bridge-ne-se-connecte-pas-à-apple-mail&quot;&gt;Problème : Proton Bridge ne se connecte pas à Apple Mail&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable :&lt;/strong&gt; mot de passe spécifique à l’application Bridge non copié correctement dans Apple Mail.&lt;br&gt;
&lt;strong&gt;Solution :&lt;/strong&gt; dans Bridge, régénère le mot de passe de l’application et reporte-le dans Apple Mail &gt; Comptes &gt; [compte Proton] &gt; Mot de passe. Voir le guide dédié.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;Ce que cet article fait : migrer une boîte Gmail vers Proton Mail sur Mac sans perdre d’emails, en conservant une redirection temporaire pendant la transition. L’import se fait via l’outil Easy Switch de Proton (connexion OAuth, aucun mot de passe Gmail à donner à Proton).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Créer un compte sur proton.me/mail (gratuit pour commencer)&lt;/li&gt;
&lt;li&gt;Proton Mail web &gt; Paramètres &gt; Importer via Easy Switch &gt; Gmail &gt; Se connecter à Google&lt;/li&gt;
&lt;li&gt;contacts.google.com &gt; Exporter &gt; Tous les contacts &gt; vCard (.vcf)&lt;/li&gt;
&lt;li&gt;Proton Mail web &gt; Contacts &gt; Importer &gt; sélectionner le fichier .vcf&lt;/li&gt;
&lt;li&gt;App Proton Mail desktop sur proton.me/mail/download (payant, essai 14 jours gratuit) ou version web sur mail.proton.me (gratuit) ou configurer Proton Bridge + Apple Mail (payant)&lt;/li&gt;
&lt;li&gt;Gmail &gt; Paramètres &gt; Transfert et POP/IMAP &gt; Ajouter une adresse de transfert = ton adresse Proton&lt;/li&gt;
&lt;li&gt;Mettre à jour les comptes importants par ordre de criticité (banques, admin, services, réseaux)&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire/&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>privacy</category><category>mac</category><category>tutoriel</category><category>proton-mail</category><category>gmail</category><category>migration</category><category>email</category><category>tutoriels</category><enclosure url="https://macsouverain.com/content/images/2026/04/feature-17-v3.png" length="0" type="image/png"/></item><item><title>Lockdown Mode, pourquoi l&apos;activer</title><link>https://macsouverain.com/lockdown-mode-face-a-coruna-toolkit-espionnage-gouvernemental/</link><guid isPermaLink="true">https://macsouverain.com/lockdown-mode-face-a-coruna-toolkit-espionnage-gouvernemental/</guid><description>Un toolkit iOS conçu pour des agences gouvernementales a fuité. Lockdown Mode l&apos;a arrêté net. Voici comment ça fonctionne, et pourquoi ça change quelque chose.</description><pubDate>Tue, 07 Apr 2026 09:05:30 GMT</pubDate><content:encoded>&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Fin mars 2026, on apprend l’existence de Coruna, un toolkit de surveillance iOS développé par un sous-traitant militaire américain pour des agences gouvernementales. Problème : il a été exploité pendant quatre ans avant d’être identifié. Volé en interne, revendu à un courtier russe, il a fini entre les mains de groupes d’espionnage russes, puis de cybercriminels asiatiques spécialisés dans la fraude crypto.&lt;/p&gt;
&lt;p&gt;L’outil exploite des dizaines de vulnérabilités iOS distinctes réparties en cinq chaînes d’attaque complètes. Il vise les iPhones sous iOS 13 à iOS 17.2.1, soit quatre ans de versions et plusieurs centaines de millions d’appareils potentiellement exposés.&lt;/p&gt;
&lt;p&gt;Et face à lui, Lockdown Mode a tenu. Le code de Coruna vérifie activement si Lockdown Mode est activé sur l’appareil cible, et s’il l’est, il ne fait rien. Pas de tentative. Pas de contournement. Abandon complet.&lt;/p&gt;
&lt;p&gt;C’est une information concrète, vérifiable, qui dit quelque chose d’important sur la philosophie de sécurité derrière cette fonctionnalité.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-problème&quot;&gt;Le problème&lt;/h2&gt;
&lt;h3 id=&quot;quand-un-outil-détat-devient-un-outil-criminel&quot;&gt;Quand un outil d’État devient un outil criminel&lt;/h3&gt;
&lt;p&gt;L’histoire de Coruna suit une trajectoire que les chercheurs en sécurité ont appris à reconnaître depuis les Shadow Brokers et la fuite des outils NSA en 2017 : un outil conçu pour des usages étatiques contrôlés finit par proliférer bien au-delà de son cadre d’origine.&lt;/p&gt;
&lt;p&gt;Coruna a été développé par Trenchant, la division espionnage et surveillance de L3Harris, un grand groupe de défense américain. L’outil était prévu pour des agences gouvernementales, dans un cadre légal et opérationnel strictement défini.&lt;/p&gt;
&lt;p&gt;Ce qui n’était pas prévu, c’est Peter Williams. Ancien directeur général chez Trenchant, Williams a subtilisé au moins huit zero-days du système interne de L3Harris entre 2022 et 2025, et les a revendus à Operation Zero, un courtier russe en zero-days, pour environ 1,3 million de dollars en cryptomonnaies et biens de luxe. En début d’année 2026, il a été condamné à 87 mois de prison fédérale.&lt;/p&gt;
&lt;p&gt;La suite est mécanique : les outils volés passent de Trenchant à Operation Zero, d’Operation Zero à des groupes d’espionnage russes, et de là, inévitablement, à des acteurs qui n’ont aucune contrainte opérationnelle.&lt;/p&gt;
&lt;p&gt;Concrètement : le même framework qui était censé cibler des adversaires étrangers précis s’est retrouvé en 2025 dans des attaques watering hole contre des utilisateurs ukrainiens (groupe UNC6353, identifié par Google), puis fin 2025 sur un réseau de faux sites crypto et financiers ciblant n’importe quel iPhone vulnérable.&lt;/p&gt;
&lt;h3 id=&quot;le-problème-que-coruna-illustre&quot;&gt;Le problème que Coruna illustre&lt;/h3&gt;
&lt;p&gt;Coruna n’est pas un outil écrit à la va-vite par une équipe de hackers opportunistes. C’est cinq ans de recherche et développement, des techniques d’obfuscation JavaScript sur quatre couches, une exploitation chaînée de 23 vulnérabilités distinctes.&lt;/p&gt;
&lt;p&gt;Face à ça, la vraie question n’est pas de savoir si ton iPhone peut être compromis. Il peut l’être, si tu utilises une version non patchée sans précaution particulière. La vraie question, c’est comment te protéger efficacement.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-mécanisme&quot;&gt;Le mécanisme&lt;/h2&gt;
&lt;h3 id=&quot;coruna--comment-ça-fonctionne&quot;&gt;Coruna : comment ça fonctionne&lt;/h3&gt;
&lt;p&gt;Coruna est ce que les chercheurs appellent un exploit kit watering hole. Tu n’as pas besoin de cliquer sur un lien piégé ou d’ouvrir une pièce jointe. Il suffit de visiter un site web qui héberge le code malveillant, et ton iPhone fait le reste tout seul.&lt;/p&gt;
&lt;p&gt;Le kit enchaîne cinq techniques distinctes :&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. RCE WebKit&lt;/strong&gt; : une faille d’exécution de code à distance dans le moteur de rendu web d’Apple. C’est la porte d’entrée. Le JavaScript du site déclenche une vulnérabilité dans le moteur JIT (Just-In-Time compilation) de WebKit pour exécuter du code arbitraire.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Élévation de privilèges noyau&lt;/strong&gt; : depuis le contexte navigateur, Coruna exploite une vulnérabilité kernel pour obtenir les droits root sur le système.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Injection dans des processus système&lt;/strong&gt; : le code malveillant s’injecte dans des processus légitimes d’iOS, &lt;code&gt;powerd&lt;/code&gt; et &lt;code&gt;locationd&lt;/code&gt;, pour devenir invisible aux outils de détection classiques.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Déploiement de modules&lt;/strong&gt; : depuis cette position, le kit cible plus d’une centaine d’extensions et applications de cryptomonnaie pour exfiltrer clés privées et phrases de récupération.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. Communication C2 persistante&lt;/strong&gt; : les communications avec le serveur de commande et contrôle passent via &lt;code&gt;imagent&lt;/code&gt;, le démon Apple Messages, pour se fondre dans le trafic réseau normal.&lt;/p&gt;
&lt;p&gt;C’est du travail de précision.&lt;/p&gt;
&lt;h3 id=&quot;la-réponse--lockdown-mode&quot;&gt;La réponse : Lockdown Mode&lt;/h3&gt;
&lt;p&gt;Lockdown Mode a été lancé par Apple en 2022, dans iOS 16. La promesse était explicite : une protection extrême pour les utilisateurs exposés à des menaces de niveau étatique, journalistes, défenseurs des droits humains, opposants politiques, avocats travaillant sur des affaires sensibles.&lt;/p&gt;
&lt;p&gt;Le principe est simple mais radical : réduire la surface d’attaque au maximum, quitte à casser des fonctionnalités.&lt;/p&gt;
&lt;p&gt;Concrètement, Lockdown Mode désactive ou restreint :&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Côté Web (Safari et WebKit) :&lt;/strong&gt; le compilateur JIT JavaScript est coupé. WebAssembly est désactivé. Plusieurs technologies web avancées sont bloquées. Les performances de navigation chutent de façon significative dans les benchmarks, parfois jusqu’à 95%. Ce n’est pas un bug. C’est le point.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Côté messagerie :&lt;/strong&gt; la plupart des types de pièces jointes sont bloqués. Les previews de liens sont désactivés. Les appels entrants de personnes non présentes dans les contacts sont bloqués par défaut.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Côté réseau :&lt;/strong&gt; la connexion automatique aux réseaux Wi-Fi non sécurisés est désactivée. Les réseaux 2G, historiquement exploités pour des attaques IMSI, sont bloqués.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Côté appareils connectés :&lt;/strong&gt; les accessoires USB nécessitent une approbation explicite, même si l’iPhone est verrouillé.&lt;/p&gt;
&lt;p&gt;L’idée centrale est celle-là : si tu élimines les parseurs complexes, si tu coupes les chemins d’exécution de code dynamique, si tu supprimes les surfaces qui ne sont strictement pas nécessaires, alors la plupart des exploits n’ont plus rien sur quoi s’appuyer.&lt;/p&gt;
&lt;p&gt;Coruna confirme cette logique. Le kit vérifie la présence de Lockdown Mode via deux sondes spécifiques sur des API désactivées en mode Lockdown : &lt;code&gt;IndexedDB&lt;/code&gt; et les opérations &lt;code&gt;MathML&lt;/code&gt;. Si ces API ne répondent pas, Coruna conclut qu’il est face à un appareil en Lockdown Mode et abandonne l’attaque. Pas de tentative de bypass. Pas de plan B. Il repart les mains vides.&lt;/p&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/29-01-lockdown-mode-settings.png&quot; loading=&quot;lazy&quot; alt=&quot;Mode Isolement activé dans les réglages macOS&quot;&gt;
&lt;h3 id=&quot;quatre-ans-de-zéro-compromission-documentée&quot;&gt;Quatre ans de zéro compromission documentée&lt;/h3&gt;
&lt;p&gt;Apple a déclaré fin mars 2026 : “Nous n’avons connaissance d’aucune attaque de spyware mercenaire réussie contre un appareil Apple sur lequel Lockdown Mode était activé.”&lt;/p&gt;
&lt;p&gt;C’est Apple qui parle, donc prendre avec une certaine prudence. Mais l’affirmation est corroborée indépendamment.&lt;/p&gt;
&lt;p&gt;Donncha Ó Cearbhaill, directeur du Security Lab d’Amnesty International, a confirmé n’avoir “vu aucune preuve d’un iPhone compromis par un spyware mercenaire avec Lockdown Mode actif au moment de l’attaque.”&lt;/p&gt;
&lt;p&gt;Le Citizen Lab de l’Université de Toronto, qui documente les attaques de spyware depuis des années, a lui-même confirmé au moins deux cas où Lockdown Mode a activement bloqué des attaques, une tentative liée à Pegasus de NSO Group, et une autre liée à Predator d’Intellexa.&lt;/p&gt;
&lt;p&gt;Quatre ans. Zéro compromission documentée. Face à des outils de niveau gouvernemental.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-qui-lockdown-mode-est-pertinent&quot;&gt;Pour qui Lockdown Mode est pertinent&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Journalistes d’investigation&lt;/strong&gt; travaillant sur des sujets sensibles (corruption, crime organisé, gouvernements autoritaires).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Défenseurs des droits humains&lt;/strong&gt; opérant dans des contextes où des gouvernements ont documenté l’usage de spyware contre des activistes (NSO/Pegasus a ciblé des journalistes marocains, des dissidents saoudiens, des opposants mexicains).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Avocats&lt;/strong&gt; travaillant sur des affaires confidentielles (États, corruption, blanchiment, etc.).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dirigeants d’entreprises&lt;/strong&gt; détenant des actifs numériques ou des données sensibles (cryptos, brevets, fichiers clients).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Militants politiques&lt;/strong&gt; dans des pays où le gouvernement a un historique d’usage de ce type d’outils contre l’opposition.&lt;/p&gt;
&lt;p&gt;Lockdown Mode impose quelques compromis, c’est vrai. Apple l’a conçu pour des profils à risque, mais les particuliers détenteurs de wallets cryptos ont tout intérêt à l’activer aussi, vu l’explosion des stealers ciblant macOS.&lt;/p&gt;
&lt;h3 id=&quot;une-honnêteté-nécessaire--les-frictions-au-quotidien&quot;&gt;Une honnêteté nécessaire : les frictions au quotidien&lt;/h3&gt;
&lt;p&gt;Lockdown Mode n’est pas indolore. Au-delà des extensions Safari désactivées, il y a des petits trucs qui finissent par agacer :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;FaceTime&lt;/strong&gt; : les appels entrants des personnes hors contacts sont bloqués par défaut, et même certains contacts enregistrés ne passent pas. SharePlay et les Live Photos sont désactivés&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Affichage cassé sur certains sites&lt;/strong&gt; : avec WebAssembly et JIT JavaScript coupés, des sites web modernes (apps cloud, éditeurs en ligne, certains dashboards) s’affichent mal ou ne fonctionnent plus&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ralentissements de navigation&lt;/strong&gt; : certains sites complexes mettent plusieurs secondes à se charger là où c’était instantané&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Profils de configuration bloqués&lt;/strong&gt; : impossible d’installer un profil MDM si tu en as besoin pour ton boulot&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;J’ai testé Lockdown Mode en permanence pendant un moment, et j’ai fini par le couper. Pas parce que ce n’est pas efficace, ça l’est. Mais parce que les frictions s’accumulent et ça devient pénible au quotidien.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le bon compromis pour la majorité :&lt;/strong&gt; activation ponctuelle. Si tu es dirigeant de PME en déplacement dans une zone à risque (salon professionnel, voyage à l’étranger, hôtel), ou si tu te connectes sur un Wi-Fi public louche, active Lockdown Mode juste pendant la période exposée. Tu désactives une fois rentré chez toi.&lt;/p&gt;
&lt;p&gt;Ça donne le meilleur des deux mondes : protection maximale quand tu en as vraiment besoin, confort le reste du temps.&lt;/p&gt;
&lt;h3 id=&quot;ce-que-lhistoire-de-coruna-dit-sur-la-surface-dattaque&quot;&gt;Ce que l’histoire de Coruna dit sur la surface d’attaque&lt;/h3&gt;
&lt;p&gt;Il y a une leçon plus large dans la philosophie de Lockdown Mode que Coruna illustre : la complexité est une surface d’attaque.&lt;/p&gt;
&lt;p&gt;Le compilateur JIT de WebKit est une merveille d’ingénierie. Il rend la navigation rapide. Il est aussi l’une des surfaces les plus exploitées dans l’histoire des attaques iOS, parce qu’il exécute du code dynamique, par définition difficile à sécuriser exhaustivement.&lt;/p&gt;
&lt;p&gt;Lockdown Mode ne cherche pas à rendre le JIT plus sûr. Il le coupe. C’est brutal, et ça coûte quelques performances. C’est aussi efficace.&lt;/p&gt;
&lt;p&gt;La même logique s’applique à WebAssembly, aux previews de pièces jointes, aux technologies web avancées. Chaque parseur complexe est une zone où un bug peut devenir une porte d’entrée.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Pour comprendre ce que l’architecture Apple Silicon apporte comme base à cette philosophie de sécurité, voir &lt;a href=&quot;https://macsouverain.com/apple-silicon-et-securite-ce-que-secure-enclave-change-vraiment&quot;&gt;Apple Silicon et sécurité : ce que Secure Enclave change vraiment&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-limites&quot;&gt;Les limites&lt;/h2&gt;
&lt;h3 id=&quot;ce-que-lockdown-mode-ne-fait-pas&quot;&gt;Ce que Lockdown Mode ne fait pas&lt;/h3&gt;
&lt;p&gt;Lockdown Mode n’est pas un bouclier universel, et Apple est le premier à le dire.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Il ne protège pas contre les erreurs humaines.&lt;/strong&gt; Si tu ouvres une pièce jointe malveillante depuis une application hors navigateur, Lockdown Mode n’intervient pas sur ce vecteur d’attaque.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Il ne protège pas contre les vulnérabilités non web.&lt;/strong&gt; Les attaques passant par Bluetooth, des failles dans des composants système non couverts par Lockdown Mode, ou des vecteurs physiques restent hors périmètre.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;“Pas de compromission documentée” n’est pas “impossible à compromettre”.&lt;/strong&gt; La nuance est importante. On ne sait pas ce qu’on ne sait pas. Un acteur étatique ayant un bypass de Lockdown Mode fonctionnel n’a aucun intérêt à l’utiliser sur des cibles qui ne justifient pas d’exposer cette capacité.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Il n’est pas rétroactif.&lt;/strong&gt; Si ton iPhone était déjà compromis avant l’activation de Lockdown Mode, il ne désinfecte rien.&lt;/p&gt;
&lt;h3 id=&quot;coruna-et-les-versions-ios-patchées&quot;&gt;Coruna et les versions iOS patchées&lt;/h3&gt;
&lt;p&gt;Les vulnérabilités exploitées par Coruna visent iOS 13 à iOS 17.2.1, soit des versions sorties jusqu’en décembre 2023. Apple a patché la plupart de ces failles dans les versions ultérieures d’iOS 17 et dans iOS 18.&lt;/p&gt;
&lt;p&gt;Si tu utilises iOS 18.x à jour, Coruna ne te concerne pas directement, même sans Lockdown Mode. La mise à jour régulière d’iOS est la mesure de base, avant toute autre chose.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Pour un panorama complet des paramètres de sécurité et privacy à configurer sur macOS, voir &lt;a href=&quot;https://macsouverain.com/privacy-macos-les-parametres-a-changer-immediatement&quot;&gt;Privacy macOS : les paramètres à changer immédiatement&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Coruna est la preuve que personne n’est à l’abri. Un outil conçu pour des cibles d’État a fini sur des sites de phishing crypto visant des particuliers. La prolifération des armes numériques suit toujours le même chemin : du ciblé vers le massif.&lt;/p&gt;
&lt;p&gt;Et c’est tout un écosystème qui est menacé. Il faut parfois des années à Apple pour identifier et colmater une faille. Coruna en exploitait 23 simultanément, réparties sur quatre ans de versions iOS. Le temps que les patchs arrivent, le mal est fait.&lt;/p&gt;
&lt;p&gt;Mieux vaut prévenir que guérir. Lockdown Mode ne corrige pas les failles, il supprime les surfaces sur lesquelles elles s’appuient.&lt;/p&gt;
&lt;p&gt;Active Lockdown Mode. Mets iOS à jour. Les deux ensemble, c’est la meilleure défense disponible aujourd’hui.&lt;/p&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>securite</category><category>ios</category><category>iphone</category><category>apple</category><category>informatif</category><enclosure url="https://macsouverain.com/content/images/2026/04/feature.png" length="0" type="image/png"/></item><item><title>Le cloud c&apos;est l&apos;ordinateur de quelqu&apos;un d&apos;autre, et alors</title><link>https://macsouverain.com/cloud-ordinateur-quelquun-dautre/</link><guid isPermaLink="true">https://macsouverain.com/cloud-ordinateur-quelquun-dautre/</guid><description>iCloud, Google Drive, Dropbox : pratiques, pas souverains. Ce que ça veut dire concrètement, et comment reprendre la main sur tes données.</description><pubDate>Sat, 04 Apr 2026 13:01:48 GMT</pubDate><content:encoded>&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Tu as des fichiers sur iCloud, ou Google Drive, ou Dropbox. Ça synchronise partout, ça marche, tu n’y penses plus.&lt;/p&gt;
&lt;p&gt;Puis tu entends cette phrase : “Le cloud, c’est l’ordinateur de quelqu’un d’autre.” Et tu te demandes vaguement si tu devrais t’en inquiéter.&lt;/p&gt;
&lt;p&gt;La réponse honnête : ça dépend. De ce que tu y stockes, de qui est ce “quelqu’un d’autre”, et de ce que tu as accepté sans forcément t’en rendre compte. Cet article déroule le mécanisme, sans dramatiser mais sans minimiser, pour que tu puisses faire un choix éclairé, plutôt que de risquer de n’en faire aucun.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-problème&quot;&gt;Le problème&lt;/h2&gt;
&lt;h3 id=&quot;ce-que-cloud-veut-dire-vraiment&quot;&gt;Ce que “cloud” veut dire vraiment&lt;/h3&gt;
&lt;p&gt;“Cloud” est un mot marketing. Ce qu’il désigne, c’est simple : tes fichiers ne sont pas sur ton disque dur. Ils sont sur un serveur, dans un datacenter, qui appartient à une entreprise. Quand tu ouvres un document sur iCloud depuis ton Mac, ton Mac télécharge une copie depuis les serveurs d’Apple, ou depuis une infrastructure cloud de sociétés américaines en Europe si tu as de la chance.&lt;/p&gt;
&lt;p&gt;La phrase “l’ordinateur de quelqu’un d’autre” vient du monde du logiciel libre, utilisée comme pique contre la centralisation. Elle est un peu simpliste, mais elle a le mérite de mettre le doigt sur quelque chose de réel : tu utilises une ressource informatique que tu ne possèdes pas, que tu ne contrôles pas, et dont les conditions d’utilisation peuvent changer sans ton accord.&lt;/p&gt;
&lt;p&gt;Ce n’est pas une raison d’arrêter. C’est une raison de comprendre.&lt;/p&gt;
&lt;h3 id=&quot;trois-choses-que-tu-cèdes-sans-y-penser&quot;&gt;Trois choses que tu cèdes sans y penser&lt;/h3&gt;
&lt;p&gt;Quand tu mets tes fichiers sur un service cloud tiers, tu cèdes potentiellement trois choses.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;L’accès.&lt;/strong&gt; L’entreprise peut lire tes fichiers si elle veut, ou si on le lui demande. Sur iCloud sans Protection Avancée des Données activée, Apple détient les clés de chiffrement. Elle peut donc accéder à tes photos, tes documents, tes sauvegardes iPhone, et les transmettre à un gouvernement sur demande judiciaire. Apple publie un rapport de transparence : dans leur rapport de transparence, Apple indique avoir fourni des données pour la grande majorité des demandes judiciaires américaines.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La continuité.&lt;/strong&gt; L’entreprise peut te couper l’accès à tout moment. Violation de CGU (réelle ou algorithmiquement supposée), faillite, fusion-acquisition, décision unilatérale. Tes fichiers sont chez eux, pas chez toi. Le jour où ils ferment la porte, tu ramasses ce qu’ils veulent bien te laisser prendre.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La juridiction.&lt;/strong&gt; Les lois du pays où sont hébergés tes fichiers s’appliquent, qu’elles te plaisent ou non. iCloud, Google Drive, Dropbox, OneDrive : tous sous juridiction américaine, soumis au CLOUD Act de 2018. Cette loi permet au gouvernement américain d’exiger l’accès à des données stockées n’importe où dans le monde si l’entreprise est américaine, sans passer par les procédures d’entraide judiciaire internationale habituelles. Même tes fichiers dans un datacenter français.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;le-mécanisme&quot;&gt;Le mécanisme&lt;/h2&gt;
&lt;h3 id=&quot;comment-le-chiffrement-change-ou-ne-change-pas-la-donne&quot;&gt;Comment le chiffrement change (ou ne change pas) la donne&lt;/h3&gt;
&lt;p&gt;La réponse standard des fournisseurs cloud quand tu soulèves ce problème : “Tes données sont chiffrées.” C’est vrai. Ce qui compte, c’est qui détient les clés.&lt;/p&gt;
&lt;p&gt;Il y a deux modèles fondamentalement différents.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chiffrement serveur (le plus courant).&lt;/strong&gt; Tes fichiers sont chiffrés sur les serveurs de l’entreprise, avec des clés que l’entreprise gère. C’est mieux que rien, ça protège contre les pirates qui voudraient s’introduire dans les datacenters, mais ça ne protège pas contre l’entreprise elle-même, ni contre une demande judiciaire. iCloud sans Protection Avancée des Données fonctionne ainsi pour la majorité des données.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chiffrement de bout en bout — E2EE.&lt;/strong&gt; Les clés de chiffrement sont générées sur ton appareil, pas sur les serveurs. L’entreprise stocke un fichier qu’elle ne peut pas lire, même si elle le voulait, même sous injonction judiciaire. C’est ce que fait &lt;a href=&quot;https://proton.me/fr/drive&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Proton Drive&lt;/a&gt; par architecture. C’est ce que fait iCloud pour certaines catégories de données quand tu actives la Protection Avancée des Données.&lt;/p&gt;
&lt;p&gt;La nuance pratique : E2EE a un coût. Si tu perds ton mot de passe ET ta clé de récupération, tes données sont inaccessibles définitivement. L’entreprise ne peut pas te les rendre, parce qu’elle n’a jamais eu les clés.&lt;/p&gt;
&lt;h3 id=&quot;ce-que-juridiction-européenne-change-vraiment&quot;&gt;Ce que “juridiction européenne” change vraiment&lt;/h3&gt;
&lt;p&gt;On entend souvent “mes données sont en Europe, donc je suis protégé par le RGPD.” C’est partiellement vrai, et partiellement faux.&lt;/p&gt;
&lt;p&gt;Le RGPD encadre comment tes données sont collectées et utilisées dans l’Union européenne. Il impose des règles strictes aux entreprises opérant sur le territoire européen. Ce n’est pas rien.&lt;/p&gt;
&lt;p&gt;Mais ça ne protège pas de tout. Si l’entreprise est américaine, le CLOUD Act prime sur le RGPD dans les faits. En 2023, la Commission européenne a adopté le Data Privacy Framework (DPF), un nouvel accord de transfert UE-US censé remplacer le Privacy Shield invalidé par Schrems II. Il est déjà contesté devant les tribunaux européens et son avenir reste incertain. En attendant, si les données sont sur des serveurs européens d’une filiale américaine, les autorités américaines peuvent théoriquement y accéder quand même.&lt;/p&gt;
&lt;p&gt;La juridiction compte. Mais “serveurs en Europe” n’est pas la même chose que “entreprise sous droit européen avec siège hors Five Eyes”. &lt;a href=&quot;https://www.infomaniak.com/fr/cloud-souverain&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Infomaniak&lt;/a&gt;, par exemple, est une entreprise suisse, avec ses serveurs en Suisse, sous droit helvétique. Ce n’est pas un bouclier absolu, mais c’est une juridiction significativement plus protectrice que les États-Unis, et hors CLOUD Act.&lt;/p&gt;
&lt;h3 id=&quot;les-trois-niveaux-de-confiance-en-pratique&quot;&gt;Les trois niveaux de confiance en pratique&lt;/h3&gt;
&lt;p&gt;Pour y voir clair, voici comment lire un service cloud selon ce critère :&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Niveau 1 — Tu fais confiance à l’entreprise ET à sa juridiction.&lt;/strong&gt; Tu utilises iCloud avec la Protection Avancée des Données activée : E2EE pour la plupart des données, sauf iCloud Mail, Contacts et Calendrier qui restent exclus (contraintes d’interopérabilité IMAP/CalDAV/CardDAV). Tu restes chez Apple, sous droit américain. Bon pour le quotidien, insuffisant pour des données sensibles.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Niveau 2 — Tu fais confiance au chiffrement, pas à l’entreprise.&lt;/strong&gt; Tu utilises un service E2EE comme Proton Drive ou &lt;a href=&quot;https://cryptomator.org/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Cryptomator&lt;/a&gt; par-dessus n’importe quel cloud : même si l’entreprise reçoit une injonction, elle remet des fichiers illisibles. Le maillon faible ici, c’est le code lui-même. Si le chiffrement est mal implémenté, ou si une faille se cache dans l’application, la promesse E2EE ne tient plus. C’est pourquoi deux choses comptent : que le code soit &lt;strong&gt;open source&lt;/strong&gt; (n’importe qui peut vérifier ce qui tourne), et qu’il ait été &lt;strong&gt;audité par un tiers indépendant&lt;/strong&gt; (Proton Drive a été audité par Securitum, code source publié sur GitHub).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Niveau 3 — Tu contrôles l’infrastructure.&lt;/strong&gt; Tu auto-héberges ton propre stockage (Nextcloud sur VPS ou NAS hébergé, ou self-host chez toi sur serveur maison). Zéro entreprise tierce dans la boucle. Le maillon faible, c’est ta propre sécurité : un Nextcloud mal configuré ou un NAS exposé sur internet, c’est pire qu’iCloud.&lt;/p&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/schema-acces-donnees-06-v3.png&quot; loading=&quot;lazy&quot; alt=&quot;Infographie cloud GAFAM vs privacy vs souverain E2EE&quot;&gt;
&lt;hr&gt;
&lt;h2 id=&quot;ce-que-ça-change-concrètement&quot;&gt;Ce que ça change concrètement&lt;/h2&gt;
&lt;h3 id=&quot;pour-le-particulier-qui-veut-faire-mieux-sans-tout-réinventer&quot;&gt;Pour le particulier qui veut faire mieux sans tout réinventer&lt;/h3&gt;
&lt;p&gt;Si tu utilises iCloud aujourd’hui, la première chose à faire ne coûte rien : &lt;strong&gt;activer la Protection Avancée des Données&lt;/strong&gt; (Réglages → ton nom → iCloud → Protection avancée des données). Ça bascule la majorité de tes données iCloud en E2EE (exception : iCloud Mail, Contacts et Calendrier, qui restent hors E2EE pour des raisons d’interopérabilité). Tu gardes l’écosystème Apple, tu récupères le chiffrement de bout en bout sur le reste. Le seul vrai inconvénient : si tu perds l’accès à ton compte sans clé de récupération, Apple ne peut pas t’aider. Tu notes ta clé quelque part de sûr.&lt;/p&gt;
&lt;p&gt;Si tu veux aller plus loin sans quitter le cloud, &lt;a href=&quot;https://proton.me/fr/drive&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Proton Drive&lt;/a&gt; est l’alternative E2EE la plus accessible : app Mac native, app iOS, interface web, E2EE par défaut, code audité. Juridiction suisse. Ce n’est pas la solution la moins chère, mais c’est le meilleur compromis confort/souveraineté disponible sans compétence technique particulière.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire bientôt : Proton Drive vs iCloud vs Infomaniak, où stocker tes fichiers ?&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&quot;pour-lindépendant-avec-des-données-clients&quot;&gt;Pour l’indépendant avec des données clients&lt;/h3&gt;
&lt;p&gt;La question devient business, pas juste personnelle. Des données clients dans un cloud américain sous juridiction CLOUD Act, c’est une exposition légale et contractuelle. Ce n’est pas hypothétique, c’est la nature du droit applicable.&lt;/p&gt;
&lt;p&gt;La question devient aussi juridique. Depuis l’arrêt Schrems II (2020), stocker des données personnelles de clients européens sur un cloud américain sans mesures de protection supplémentaires pose un vrai problème de conformité RGPD. Les sanctions restent rares, mais le risque légal existe, et un client pourrait le soulever.&lt;/p&gt;
&lt;p&gt;En Europe, le RGPD s’impose à toute entreprise qui traite des données personnelles. Ce n’est pas une clause contractuelle optionnelle, c’est la loi. “iCloud, c’est pratique” n’est pas une réponse recevable face à un client ou une autorité de contrôle.&lt;/p&gt;
&lt;p&gt;Options pragmatiques : Proton Drive (E2EE) ou Infomaniak kDrive, tous deux sous juridiction suisse et conformes RGPD pour les données de sociétés européennes. Ou Nextcloud auto-hébergé si tu as la compétence technique. L’article comparatif #13 détaille les différences en profondeur.&lt;/p&gt;
&lt;h3 id=&quot;ce-que-ça-ne-protège-pas&quot;&gt;Ce que ça ne protège pas&lt;/h3&gt;
&lt;p&gt;La souveraineté cloud ne protège pas de tout. Un fichier chiffré de bout en bout dans Proton Drive, c’est illisible pour Proton, mais si tu l’ouvres sur un Mac compromis, le fichier déchiffré est là, en clair, à la merci de ce qui tourne sur ta machine. La sécurité du cloud ne compense pas une sécurité endpoint défaillante.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/securite-email-client-mail/&quot;&gt;Pourquoi ton client mail est une passoire — et comment colmater ça&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Et un Nextcloud auto-hébergé mal configuré expose plus que Dropbox. Le contrôle total, c’est aussi la responsabilité totale.&lt;/p&gt;
&lt;p&gt;Le vrai coût de la souveraineté, c’est aussi le prix. Proton Drive et Infomaniak kDrive ne sont pas gratuits. iCloud 50 Go à 0,99€/mois, c’est imbattable en tarif. Tu paies la souveraineté, comme tu paies Proton Mail E2EE plutôt que Gmail. C’est un choix conscient, pas une évidence.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;idées-reçues&quot;&gt;Idées reçues&lt;/h2&gt;
&lt;h3 id=&quot;mais-les-nuages-dapple-sont-en-europe&quot;&gt;Mais les nuages d’Apple sont en Europe&lt;/h3&gt;
&lt;p&gt;Apple a des datacenters en Europe. Ça ne change pas que la maison mère est à Cupertino, que les clés maîtres de chiffrement (hors Protection Avancée) sont gérées par Apple Inc., et que le CLOUD Act s’applique aux entreprises américaines quelle que soit la localisation physique des serveurs.&lt;/p&gt;
&lt;p&gt;“Serveurs en Europe” est un argument marketing utile pour la conformité RGPD locale. Pas un argument de souveraineté contre une injonction fédérale américaine.&lt;/p&gt;
&lt;h3 id=&quot;les-fournisseurs-souverains-sont-moins-pratiques&quot;&gt;Les fournisseurs souverains sont moins pratiques&lt;/h3&gt;
&lt;p&gt;C’était vrai en 2018. Proton Drive en 2026 a une app Mac native, la synchronisation automatique des dossiers, le partage de fichiers, et une bonne interface web. Infomaniak kDrive a une intégration macOS propre. Ce n’est pas aussi transparent qu’iCloud Finder, mais l’écart s’est considérablement réduit.&lt;/p&gt;
&lt;h3 id=&quot;je-nai-rien-à-cacher&quot;&gt;Je n’ai rien à cacher&lt;/h3&gt;
&lt;p&gt;L’argument est faux, pas parce que tu aurais des choses inavouables, mais parce qu’il repose sur une hypothèse incorrecte : que le problème c’est ce que tu fais, pas ce que d’autres peuvent faire avec tes données.&lt;/p&gt;
&lt;p&gt;Tes documents comptables dans un cloud lisible par des tiers, ce n’est pas un problème si tu n’as rien fait de mal. C’est un problème si tes données sont utilisées pour te cibler commercialement, si elles fuient lors d’une brèche, exposant ainsi des données clients, ou encore si elles sont transmises à un gouvernement dans un cadre que tu n’as pas anticipé.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;en-résumé&quot;&gt;En résumé&lt;/h2&gt;
&lt;p&gt;Le cloud, c’est effectivement l’ordinateur de quelqu’un d’autre. La question n’est pas “est-ce qu’il faut l’utiliser” mais “est-ce qu’on comprend ce qu’on accepte en l’utilisant”.&lt;/p&gt;
&lt;p&gt;Trois paramètres à regarder pour n’importe quel service cloud : qui détient les clés de chiffrement (toi ou l’entreprise), quelle est la juridiction applicable (pas juste la localisation des serveurs), et que se passe-t-il si l’entreprise disparaît ou te coupe l’accès.&lt;/p&gt;
&lt;p&gt;Sur l’usage concret : si tu utilises iCloud, commence par activer la Protection Avancée des Données. Si tu as des données professionnelles, regarde Proton Drive ou Infomaniak kDrive. Si tu veux le contrôle total, l’auto-hébergement Nextcloud est la prochaine étape, mais ça demande un peu plus de technique et de la maintenance.&lt;/p&gt;
&lt;p&gt;Le comparatif détaillé des options, avec les prix, les cas d’usage et les limites réelles de chacun, c’est dans l’article #13.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire bientôt : Proton Drive vs iCloud vs Infomaniak, où stocker tes fichiers ?&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>cloud</category><category>privacy</category><category>stockage</category><category>souverainete</category><category>informatif</category><enclosure url="https://macsouverain.com/content/images/2026/04/feature-cloud-nb.png" length="0" type="image/png"/></item><item><title>Gestionnaire de mdp sur Mac : Apple, Bitwarden, KeePassXC ou 1Password</title><link>https://macsouverain.com/gestionnaire-mots-de-passe-mac-comparatif/</link><guid isPermaLink="true">https://macsouverain.com/gestionnaire-mots-de-passe-mac-comparatif/</guid><description>Apple, Bitwarden, KeePassXC, 1Password : quatre approches radicalement différentes. Lequel correspond à ton profil et ton budget ?</description><pubDate>Wed, 01 Apr 2026 07:58:35 GMT</pubDate><content:encoded>&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Quatre options, quatre philosophies radicalement différentes.&lt;/p&gt;
&lt;p&gt;L’app Mots de passe (Apple) est gratuite, intégrée, et déjà là. KeePassXC est un coffre local, sans serveur, sans abonnement, sans entreprise au bout de la chaîne. Bitwarden est open source avec une version gratuite et auto-hébergeable. 1Password est payant, cross-platform, mais cloud propriétaire sous juridiction 5 Eyes.&lt;/p&gt;
&lt;p&gt;Le bon choix dépend d’une seule chose : ton profil d’usage et ce que tu es prêt à confier à qui.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/privacy-macos-les-parametres-a-changer-immediatement/&quot;&gt;Les réglages privacy macOS à changer en 15 minutes&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;les-critères-qui-comptent&quot;&gt;Les critères qui comptent&lt;/h2&gt;
&lt;p&gt;On garde les critères utiles, pas ceux qui font joli dans un tableau :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Architecture de sécurité&lt;/strong&gt; : qui peut techniquement accéder à tes données ?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Privacy et juridiction&lt;/strong&gt; : sous quelle loi tes données sont-elles soumises ?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Portabilité&lt;/strong&gt; : ça marche sur Android, Windows, Linux ?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fonctions avancées&lt;/strong&gt; : Travel Mode, partage équipe, 2FA intégré&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hébergement&lt;/strong&gt; : cloud tiers, ou chez toi&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Prix&lt;/strong&gt; : gratuit, abonnement, ou achat unique&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Audits indépendants&lt;/strong&gt; : est-ce que les affirmations ont été vérifiées ?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ce qu’on n’évalue pas : les thèmes, le nombre de widgets, et les fonctionnalités que personne n’utilise.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;app-mots-de-passe-apple&quot;&gt;App Mots de passe (Apple)&lt;/h2&gt;
&lt;h3 id=&quot;philosophie&quot;&gt;Philosophie&lt;/h3&gt;
&lt;p&gt;Apple a construit son gestionnaire autour de la sécurité et de la facilité d’emploi : tout se passe sur les appareils que tu détiens, chiffré avec tes propres clés. Synchro iCloud, passkeys pour le 2FA, déverrouillage par Touch ID ou Face ID, tout est fait pour te faciliter la vie.&lt;/p&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/03/step-01-passwords-app.png&quot; loading=&quot;lazy&quot; alt=&quot;App Mots de passe macOS — vue principale avec sidebar, liste de comptes et détail sécurité&quot;&gt;
&lt;h3 id=&quot;les-forces&quot;&gt;Les forces&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Gratuit et intégré.&lt;/strong&gt; L’app Mots de passe est disponible sur macOS Sequoia (15.x) et Tahoe (26.x), iOS 18 et iPadOS 18. Elle gère mots de passe, identifiants, codes 2FA (TOTP), passkeys, mots de passe Wi-Fi, et notes sécurisées. Rien à installer, rien à configurer, rien à payer.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chiffrement de bout en bout.&lt;/strong&gt; Avec la &lt;strong&gt;Protection avancée des données iCloud&lt;/strong&gt; activée, les données de l’app Mots de passe sont chiffrées avec des clés générées localement. Apple ne peut pas les lire, même contraint légalement. Sans cette option, certaines métadonnées restent accessibles à Apple.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/apple-silicon-et-securite-ce-que-secure-enclave-change-vraiment/&quot;&gt;Apple Silicon et Secure Enclave : ce que ça change vraiment&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Passkeys.&lt;/strong&gt; L’intégration native des passkeys est probablement le point le plus solide en 2026. Les passkeys remplacent les mots de passe par une paire de clés cryptographiques : rien n’est jamais transmis au serveur. Sur Mac et iPhone, ça fonctionne sans friction avec Face ID ou Touch ID.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Partage familial.&lt;/strong&gt; L’app permet de créer des coffres partagés pour la famille iCloud : identifiants personnels d’un côté, accès communs (Netflix, Wi-Fi) dans le coffre partagé.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Détection des mots de passe compromis.&lt;/strong&gt; Vérification automatique via un système propriétaire Apple utilisant le protocole k-anonymity : aucun mot de passe n’est envoyé tel quel. Apple ne communique pas les bases de fuites utilisées, mais le mécanisme vérifie tes identifiants contre des listes de compromissions connues sans exposer tes données.&lt;/p&gt;
&lt;h3 id=&quot;les-limites-honnêtes&quot;&gt;Les limites honnêtes&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Apple uniquement, presque.&lt;/strong&gt; Mac, iPhone, iPad, Apple Watch. Sur Windows, il existe une extension iCloud Passwords pour Chrome et Edge, mais c’est une béquille. Sur Android ? Rien. Si ton setup dépasse l’écosystème Apple, l’app Mots de passe devient un frein réel.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Juridiction américaine.&lt;/strong&gt; Apple est soumis au CLOUD Act, aux National Security Letters, et à la surveillance américaine. La Protection avancée des données iCloud renforce la protection technique, mais ne change pas la juridiction.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Audits publics limités.&lt;/strong&gt; Apple publie des white papers mais pas d’audit public indépendant sur l’app Mots de passe, contrairement à 1Password ou Bitwarden.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour qui :&lt;/strong&gt; utilisateurs 100% Apple, particuliers comme professionnels, familles.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Prix :&lt;/strong&gt; gratuit.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;keepassxc&quot;&gt;&lt;a href=&quot;https://keepassxc.org&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;KeePassXC&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id=&quot;philosophie-1&quot;&gt;Philosophie&lt;/h3&gt;
&lt;p&gt;KeePassXC est dans une catégorie à part. Ce n’est pas un service cloud, pas un abonnement, pas une entreprise avec des serveurs. C’est un logiciel desktop qui chiffre un fichier sur ton disque. Pour comprendre KeePassXC, il faut comprendre sa logique : tes mots de passe sont dans un fichier (&lt;code&gt;.kdbx&lt;/code&gt;), chiffré, que tu stockes où tu veux. Ce fichier, c’est ton coffre-fort. KeePassXC est la clé qui l’ouvre.&lt;/p&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/03/step-04-keepassxc-database.png&quot; loading=&quot;lazy&quot; alt=&quot;KeePassXC — vue principale avec groupes, liste d&amp;#x27;entrées et détail mot de passe&quot;&gt;
&lt;h3 id=&quot;comment-ça-marche-concrètement&quot;&gt;Comment ça marche concrètement&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Sur Mac&lt;/strong&gt;, tu installes KeePassXC (un &lt;code&gt;.dmg&lt;/code&gt;, comme n’importe quelle app). Tu crées une base de données, un fichier &lt;code&gt;.kdbx&lt;/code&gt; protégé par ton mot de passe maître. Ce fichier contient tous tes identifiants, chiffrés. Tu le stockes dans un dossier synchronisé (Nextcloud, NAS, ou même iCloud si tu veux), et KeePassXC l’ouvre à la demande. Une extension navigateur (KeePassXC-Browser) remplit automatiquement tes identifiants sur les sites web. Touch ID fonctionne pour le déverrouillage rapide.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sur iPhone&lt;/strong&gt;, tu installes &lt;strong&gt;&lt;a href=&quot;https://keepassium.com&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;KeePassium&lt;/a&gt;&lt;/strong&gt;, une app open source (GPLv3), développée au Luxembourg, zéro collecte de données. Tu la pointes vers ton fichier &lt;code&gt;.kdbx&lt;/code&gt; sur Nextcloud via WebDAV (l’adresse de ton Nextcloud + tes identifiants, 10 minutes de configuration). KeePassium le télécharge, le cache localement, et le synchronise à chaque ouverture. Touch ID et Face ID fonctionnent pour le déverrouillage. Tu actives le remplissage automatique dans les réglages iOS, et c’est fini.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La synchronisation est bidirectionnelle.&lt;/strong&gt; Tu ajoutes un mot de passe sur iPhone ? KeePassium écrit dans le fichier sur Nextcloud. Tu ouvres KeePassXC sur Mac ? Il détecte le changement et recharge la base. Même chose dans l’autre sens. Le fichier sur Nextcloud sert de point de synchronisation, toujours chiffré, que ce soit au repos ou en transit.&lt;/p&gt;
&lt;h3 id=&quot;les-forces-1&quot;&gt;Les forces&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Zéro serveur tiers, zéro entreprise, zéro juridiction.&lt;/strong&gt; Le fichier &lt;code&gt;.kdbx&lt;/code&gt; est chez toi : sur ton Mac, ton Nextcloud, ton NAS. Personne ne peut y accéder sans ton mot de passe maître, parce qu’il n’y a aucun intermédiaire dans la boucle. C’est toi qui décides où tes mots de passe vivent.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Open source et certifié.&lt;/strong&gt; KeePassXC est sous licence GPL, le code est public. L’application a fait l’objet d’un audit indépendant en 2023 (Zaur Molotnikov, rapport public), avec des conclusions positives sur la protection cryptographique. Mieux encore : KeePassXC 2.7.9 a obtenu le &lt;strong&gt;visa de sécurité CSPN de l’ANSSI&lt;/strong&gt;, reconnu en France et en Allemagne (certification sur v2.7.9 / Windows 10 ; l’architecture cryptographique est commune à toutes les plateformes). C’est une certification officielle, pas un audit commandité par l’éditeur.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;100% gratuit, sans limite.&lt;/strong&gt; KeePassXC n’est pas freemium : il n’y a pas de version payante, pas d’abonnement, pas de fonctionnalité derrière un paywall. Le projet vit de contributions bénévoles et de dons. Tu installes, tu utilises, c’est fini.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sur iOS, c’est KeePassium&lt;/strong&gt; qui prend le relais. La version de base est gratuite ; la version premium (multi-base, déverrouillage automatique) est optionnelle.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Fonctions complètes.&lt;/strong&gt; KeePassXC gère les mots de passe, les passkeys (depuis la version 2.7.7), les codes 2FA (TOTP), l’intégration SSH (agent SSH pour tes clés), le remplissage automatique via extension navigateur, le support des clés de sécurité physiques (YubiKey), et la vérification de mots de passe compromis via &lt;strong&gt;Have I Been Pwned&lt;/strong&gt; (intégrée dans l’app, requête k-anonymity sans exposer tes données).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cross-platform desktop.&lt;/strong&gt; Mac, Windows, Linux. L’interface est cohérente sur les trois plateformes.&lt;/p&gt;
&lt;h3 id=&quot;les-limites-honnêtes-1&quot;&gt;Les limites honnêtes&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Pas d’extension Safari.&lt;/strong&gt; L’autofill et les passkeys de KeePassXC fonctionnent via une extension navigateur, disponible pour Firefox, Chrome et Edge. Safari n’est pas supporté. Sur Safari, il faut copier-coller depuis l’app (Cmd+B pour l’identifiant, Cmd+C pour le mot de passe, presse-papier effacé automatiquement). C’est la principale limite pour un utilisateur Mac.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Interface austère.&lt;/strong&gt; KeePassXC est fonctionnel, pas beau. L’interface a été modernisée ces dernières années mais reste moins intuitive que 1Password ou Bitwarden. Ce n’est pas rédhibitoire, mais il y a une courbe d’apprentissage.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pas d’app iOS native.&lt;/strong&gt; Sur iPhone, tu passes par KeePassium, une app tierce, certes souveraine (open source, Luxembourg), mais c’est un logiciel supplémentaire à connaître. L’expérience est très bonne une fois configurée, mais ce n’est pas aussi transparent que Bitwarden ou 1Password où tout est intégré.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Travel Mode naturel.&lt;/strong&gt; KeePassXC n’a pas de bouton “Travel Mode”, mais l’architecture fichier fait mieux : tu as plusieurs fichiers &lt;code&gt;.kdbx&lt;/code&gt;, tu choisis lesquels sont sur quel appareil. Avant un voyage, tu ne synchronises pas le fichier sensible sur ton iPhone, c’est tout. Et si tu utilises un fichier-clé en plus du mot de passe maître, tu peux révoquer un appareil instantanément : supprime le fichier-clé de l’appareil, et même si quelqu’un a la base &lt;code&gt;.kdbx&lt;/code&gt;, il ne peut rien en faire. C’est la granularité que les solutions cloud ne peuvent pas offrir.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour qui :&lt;/strong&gt; utilisateurs avec un profil un peu plus technique, qui ne veulent aucun serveur tiers dans la boucle, intégration avec flux SSH ou YubiKey.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Prix :&lt;/strong&gt; gratuit.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;bitwarden&quot;&gt;&lt;a href=&quot;https://bitwarden.com&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;Bitwarden&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id=&quot;philosophie-2&quot;&gt;Philosophie&lt;/h3&gt;
&lt;p&gt;Bitwarden est la réponse open source au problème des gestionnaires de mots de passe cloud. Le code est public, auditable par n’importe qui, le modèle économique est honnête, et tu peux héberger toi-même si tu ne veux pas dépendre de leurs serveurs.&lt;/p&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/03/step-05-bitwarden-vault.png&quot; loading=&quot;lazy&quot; alt=&quot;Bitwarden desktop — vue principale avec sidebar, liste d&amp;#x27;entrées et détail credentials&quot;&gt;
&lt;h3 id=&quot;les-forces-2&quot;&gt;Les forces&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Open source.&lt;/strong&gt; Le code est sur GitHub, sous licence GPL. Audité annuellement par des tiers indépendants (Cure53 en 2018, Fracture Labs en 2024, ETH Zurich en 2025 pour la cryptographie), rapports publics sur bitwarden.com/compliance. C’est la transparence maximale pour un outil de sécurité.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Version gratuite fonctionnelle.&lt;/strong&gt; Contrairement à 1Password (100% payant), Bitwarden a une version gratuite réelle : stockage illimité de mots de passe, synchronisation cross-platform, partage avec une autre personne. La version Premium (19,80 $/an) ajoute les codes 2FA (TOTP), les rapports de sécurité (détection de fuites via &lt;strong&gt;Have I Been Pwned&lt;/strong&gt;, mots de passe faibles ou réutilisés), et les pièces jointes chiffrées. À noter : KeePassXC offre la plupart de ces fonctions Premium (2FA, vérification HIBP) gratuitement, mais sans la synchronisation cloud intégrée.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Passkeys et 2FA.&lt;/strong&gt; Comme Apple et KeePassXC, Bitwarden gère les passkeys nativement. Les codes 2FA (TOTP) sont réservés au plan Premium (19,80 $/an).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Clés de sécurité physiques et stockage.&lt;/strong&gt; Depuis la hausse de janvier 2026, le Premium a été étoffé pour justifier le tarif. Tu peux maintenant associer jusqu’à 10 clés physiques (YubiKey, Nitrokey) à ton compte, contre 2 auparavant. Le stockage de pièces jointes chiffrées passe à 5 Go. Un bloqueur de phishing est également annoncé, pas encore déployé à l’heure où cet article est publié. Pour la comparaison : KeePassXC supporte lui aussi les YubiKey nativement, sans abonnement, mais sans le cloud derrière.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cross-platform complet.&lt;/strong&gt; Mac, iPhone, iPad, Windows, Android, Linux, extensions pour tous les navigateurs. Plus large que 1Password sur le support Linux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Auto-hébergement.&lt;/strong&gt; Tu peux faire tourner ton propre serveur Bitwarden sur ton NAS ou ton VPS. En pratique, la plupart des gens en auto-hébergement utilisent &lt;strong&gt;Vaultwarden&lt;/strong&gt; : c’est une réécriture communautaire du serveur Bitwarden en Rust (un langage axé sécurité et performance, Apple migre d’ailleurs des composants macOS vers Rust). Vaultwarden est ultra-léger, tourne sur un Raspberry Pi, et reste 100% compatible avec les apps Bitwarden officielles. Tes mots de passe restent sur ton infrastructure, sous ta juridiction, avec ton niveau de sécurité. Pour l’audience de MacSouverain, c’est l’option la plus souveraine d’un gestionnaire cloud.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Juridiction américaine gérable.&lt;/strong&gt; Bitwarden est basé aux États-Unis, ce qui est défavorable en soi. Mais avec l’auto-hébergement, la question de la juridiction de l’entreprise devient secondaire puisque tes données ne sont pas sur leurs serveurs.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/quest-ce-que-la-souverainete-digitale-en-pratique/&quot;&gt;Qu’est-ce que la souveraineté digitale en pratique&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&quot;les-limites-honnêtes-2&quot;&gt;Les limites honnêtes&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Interface moins léchée que 1Password.&lt;/strong&gt; Bitwarden est fonctionnellement complet, mais l’expérience utilisateur est moins polie. Ce n’est pas rédhibitoire, mais ça se ressent au quotidien.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Auto-hébergement : le frein, c’est l’installation.&lt;/strong&gt; Héberger Vaultwarden sur un VPS ou un NAS demande une configuration initiale (Docker, reverse proxy). Une fois en place, la maintenance est minimale : une mise à jour de temps en temps, un backup de la base, et ça tourne tout seul. On y reviendra dans nos futurs guides pour monter une infrastructure souveraine complète.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2FA intégré (TOTP) en version payante seulement.&lt;/strong&gt; La version gratuite ne gère pas les codes 2FA directement dans Bitwarden. Il faut passer au Premium (19,80 $/an) ou utiliser une app 2FA séparée.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pas de Travel Mode.&lt;/strong&gt; Bitwarden n’a pas d’équivalent au Travel Mode de 1Password.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour qui :&lt;/strong&gt; utilisateurs qui veulent open source et/ou auto-hébergement, budgets serrés.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Prix :&lt;/strong&gt; gratuit (basique) ou 19,80 $/an pour le Premium (hausse janvier 2026, de 10 $/an, avec stockage 5 Go et support 10 clés physiques en contrepartie).&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;1password&quot;&gt;&lt;a href=&quot;https://1password.com&quot; rel=&quot;noopener noreferrer&quot; target=&quot;_blank&quot;&gt;1Password&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id=&quot;philosophie-3&quot;&gt;Philosophie&lt;/h3&gt;
&lt;p&gt;1Password résout un problème précis : avoir un gestionnaire fiable, auditable, cross-platform, avec des fonctions avancées pour les usages professionnels. Son architecture repose sur deux facteurs : ton mot de passe maître et une &lt;strong&gt;Clé secrète&lt;/strong&gt;, une clé de 128 bits générée localement et jamais envoyée à leurs serveurs. Même si leurs serveurs étaient compromis, tes données sont inexploitables sans cette clé.&lt;/p&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/1pw-overview.png&quot; loading=&quot;lazy&quot; alt=&quot;Interface 1Password — vaults Personal, Development et Work dans la sidebar&quot;&gt;
&lt;h3 id=&quot;les-forces-3&quot;&gt;Les forces&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Clé secrète : une différence structurelle.&lt;/strong&gt; L’app Mots de passe dépend principalement de ton mot de passe iCloud pour la récupération. 1Password ajoute une couche cryptographique qui ne peut pas être brute-forcée depuis leurs serveurs. Ce n’est pas du marketing, c’est de l’ingénierie.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cross-platform complet.&lt;/strong&gt; Mac, iPhone, iPad, Windows, Android, Linux, extensions pour Chrome, Firefox, Safari, Edge. Si une personne de ton entourage a un Android ou un PC Windows, 1Password fonctionne partout sans friction.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Travel Mode.&lt;/strong&gt; Tu pars dans un pays à contrôle aux frontières et tu ne veux pas qu’une inspection accède à certains coffres ? Tu les marques comme “non voyage”, ils disparaissent de l’application jusqu’à réactivation depuis un appareil de confiance. Ça ne protège pas contre un mot de passe extorqué, mais ça protège contre une fouille physique.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Watchtower.&lt;/strong&gt; Surveillance en continu via la base &lt;strong&gt;Have I Been Pwned&lt;/strong&gt; (14 milliards de comptes compromis) : mots de passe présents dans des fuites, mots de passe faibles ou réutilisés, sites sans 2FA activé, certificats SSL expirés, dates d’expiration proches. C’est l’audit de sécurité le plus complet des quatre. En comparaison, l’app Mots de passe Apple détecte les fuites, les mots de passe faibles et réutilisés, fonctionnel mais basique. Bitwarden propose des rapports similaires (Vault Health Reports) mais à générer manuellement et avec le dark web monitoring réservé au plan payant. KeePassXC se limite à la vérification de force et aux doublons, pas de détection de fuites intégrée.&lt;/p&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/04/watchtower-framed.png&quot; loading=&quot;lazy&quot; alt=&quot;1Password Watchtower — dashboard sécurité avec score, mots de passe compromis, réutilisés et faibles&quot;&gt;
&lt;p&gt;&lt;strong&gt;Audits indépendants.&lt;/strong&gt; Audité régulièrement par Cure53 entre 2020 et 2022 (rapports publics). Depuis 2025, les rapports de pentest annuels sont accessibles via le Trust Center de 1Password (accès sur demande). Ce n’est pas open source, mais c’est un niveau de transparence acceptable pour un outil de sécurité payant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Plans équipe.&lt;/strong&gt; Gestion d’accès partagés, politiques de sécurité, rapports d’activité. Pour un indépendant qui gère des accès clients ou une petite équipe, c’est une vraie différence.&lt;/p&gt;
&lt;h3 id=&quot;les-limites-honnêtes-3&quot;&gt;Les limites honnêtes&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Propriétaire et payant.&lt;/strong&gt; 1Password n’est pas open source. Tu fais confiance à leurs audits, pas à du code vérifiable. Le plan individuel coûte 2,74 €/mois facturés annuellement (tarif promotionnel première année pour les nouveaux clients). Pas cher pour un outil de sécurité, mais non nul.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Canada, membre des 5 Eyes.&lt;/strong&gt; AgileBits est basée à Toronto. Le Canada est membre des 5 Eyes, l’alliance de surveillance partagée entre États-Unis, Royaume-Uni, Canada, Australie et Nouvelle-Zélande. L’architecture à connaissance zéro limite le risque, mais la juridiction reste défavorable comparée à la Suisse ou à une solution auto-hébergée.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pas de version gratuite.&lt;/strong&gt; Essai 14 jours, puis payant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pour qui :&lt;/strong&gt; utilisateurs cross-platform, professionnels, voyageurs fréquents, petites équipes.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Prix :&lt;/strong&gt; 2,74 €/mois individuel, 4,31 €/mois famille 5 utilisateurs (facturés annuellement, tarif promotionnel première année pour les nouveaux clients).&lt;/p&gt;
&lt;hr&gt;
&lt;hr&gt;
&lt;h2 id=&quot;la-recommandation-de-mack&quot;&gt;La recommandation de Mack&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Tu es 100% dans l’écosystème Apple.&lt;/strong&gt; L’app Mots de passe fait le travail, que tu sois particulier ou pro. Gratuit, chiffré, passkeys, partage famille, et surtout : Touch ID et Face ID déverrouillent tes comptes sans friction. Active la Protection avancée des données iCloud et ne cherche pas plus loin.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tu veux que tes mots de passe soient en mode souveraineté maximale.&lt;/strong&gt; KeePassXC. Fichier local chiffré, synchronisation sur ton Nextcloud, aucune entreprise dans la boucle. Sur iPhone, KeePassium (open source, Luxembourg) fait le relais avec Touch ID et Face ID. C’est la souveraineté maximale sur ce sujet, et le Travel Mode le plus élégant : tu contrôles physiquement ce qui est sur chaque appareil. Certifié ANSSI.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tu veux open source avec l’option auto-hébergement, ou tu as un budget serré.&lt;/strong&gt; Bitwarden. Gratuit pour l’essentiel, Premium à 19,80 $/an pour le reste, et Vaultwarden sur ton NAS si tu veux garder le contrôle total. Open source, audité, souverain si tu l’héberges toi-même. Touch ID et Face ID supportés partout.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tu as des appareils hors Apple et tu as besoin de Travel Mode ou de gestion d’équipe.&lt;/strong&gt; 1Password fait le job techniquement, et il le fait bien. L’architecture zero-knowledge avec clé secrète est solide, Watchtower est le meilleur audit de sécurité du marché, et le Travel Mode est unique. Mais c’est un cloud propriétaire sous juridiction canadienne (Five Eyes).&lt;br&gt;
La souveraineté, c’est aussi la juridiction : tes données sont hébergées par une entreprise soumise aux lois de surveillance des Five Eyes. C’est la raison pour laquelle MacSouverain ne peut pas le recommander comme solution privacy, malgré ses qualités techniques indéniables.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire : &lt;a href=&quot;https://macsouverain.com/securite-email-client-mail/&quot;&gt;Pourquoi ton client mail est une passoire&lt;/a&gt; et comment intégrer un gestionnaire de mots de passe dans une posture de sécurité complète.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>privacy</category><category>mac</category><category>comparatif</category><category>gestionnaire-mots-de-passe</category><category>1password</category><category>bitwarden</category><category>keepassxc</category><category>trousseau</category><category>comparatifs</category><enclosure url="https://macsouverain.com/content/images/2026/04/feature-mdp-nb.png" length="0" type="image/png"/></item><item><title>Pourquoi ton client mail est une passoire, et comment colmater ça</title><link>https://macsouverain.com/securite-email-client-mail/</link><guid isPermaLink="true">https://macsouverain.com/securite-email-client-mail/</guid><description>Pixels espions, exploits HTML, zero-days Outlook. La surface d&apos;attaque d&apos;une boîte mail est bien plus large que &quot;Gmail te lit&quot;. Guide complet pour y remédier.</description><pubDate>Wed, 25 Mar 2026 14:05:23 GMT</pubDate><content:encoded>&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ juillet 2026.&lt;/strong&gt; La faille Hide My Email désanonymise les alias Apple (divulgation publique le 1er juillet, toujours pas corrigée). Un argument de plus pour les alias souverains : &lt;a href=&quot;https://macsouverain.com/apple-mail-vs-gmail-vs-proton-mail/&quot;&gt;voir la mise à jour du comparatif email&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;MAJ mai 2026.&lt;/strong&gt; Nouveau cran sur l’évolution mainstream du chiffrement email : Proton Mail propose désormais une option de chiffrement post-quantum, sur OpenPGP standardisé, gratuit inclus. Premier mail à le faire sur un standard ouvert. &lt;a href=&quot;https://macsouverain.com/radar-proton-mail-post-quantum-mai-2026/&quot;&gt;Détails dans le radar&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Le débat sur la sécurité email tourne en boucle autour d’un seul axe : “Gmail lit tes emails pour faire de la pub.” C’est vrai, c’est problématique, et c’est couvert un peu partout, y compris dans le &lt;a href=&quot;https://macsouverain.com/apple-mail-vs-gmail-vs-proton-mail/&quot;&gt;comparatif Apple Mail vs Gmail vs Proton Mail&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Mais même si tu migres chez Proton, pour avoir des mails chiffrés demain matin, ta boîte mail reste un vecteur d’attaque important. Un email n’est pas un fichier texte inerte. C’est un document HTML interprété par un moteur de rendu de plusieurs millions de lignes de code (WebKit pour Apple Mail), qui charge des ressources distantes, exécute du CSS, et embarque des pièces jointes que tu ouvriras dans d’autres logiciels tout aussi complexes.&lt;/p&gt;
&lt;p&gt;Ce tutoriel couvre les six vecteurs d’attaque réels et te donne les réglages exacts pour chacun. Il te faut un Mac avec Apple Mail, 15 minutes, et éventuellement un compte Proton Mail si tu veux la protection maximale. À la fin, ta surface d’attaque email sera réduite de façon drastique.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;avant-de-commencer&quot;&gt;Avant de commencer&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Ce qu’il te faut :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Un Mac sous macOS Tahoe (26.x), Sequoia (15.x) ou Sonoma (14.x)&lt;/li&gt;
&lt;li&gt;Apple Mail configuré (avec ou sans Proton Bridge)&lt;/li&gt;
&lt;li&gt;15 minutes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça va changer :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Les pixels espions ne te traquent plus&lt;/li&gt;
&lt;li&gt;Le HTML/CSS des emails ne peut plus te fingerprinter&lt;/li&gt;
&lt;li&gt;Les pièces jointes ne s’ouvrent plus automatiquement&lt;/li&gt;
&lt;li&gt;Tu sais vérifier si un email est authentique (SPF/DKIM/DMARC)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ce que ça ne changera PAS :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Qui lit tes emails côté serveur (ça, c’est le choix du fournisseur, voir le &lt;a href=&quot;https://macsouverain.com/apple-mail-vs-gmail-vs-proton-mail/&quot;&gt;comparatif email&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Le phishing bien ciblé qui exploite la confiance humaine&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;étapes&quot;&gt;Étapes&lt;/h2&gt;
&lt;h3 id=&quot;étape-1--bloquer-les-pixels-espions&quot;&gt;Étape 1 : Bloquer les pixels espions&lt;/h3&gt;
&lt;p&gt;Un pixel de tracking, c’est une image de 1x1 pixel, transparente, hébergée sur un serveur distant, intégrée dans le corps HTML de l’email. Quand ton client mail charge l’email, il charge l’image, ce qui envoie une requête HTTP au serveur. Cette requête révèle ton IP, ton client mail, l’horodatage et un identifiant unique lié à ton adresse email.&lt;/p&gt;
&lt;p&gt;En une image invisible, l’expéditeur sait que tu as ouvert son email, depuis quelle ville, sur quel OS, à quelle heure, combien de fois. Tout le monde l’utilise : newsletters, sales B2B (Mailchimp, HubSpot, Outreach), services e-commerce. C’est légal, quasi invisible, et très répandu.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Jusqu’au 14 avril 2026, du moins.&lt;/strong&gt; La CNIL a adopté ce jour-là sa recommandation sur les pixels de suivi dans les emails. On y revient un peu plus bas, dans un chapitre dédié. Tu peux déjà garder en tête que ta case “Bloquer tout le contenu distant” est désormais alignée avec la doctrine du régulateur.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chemin :&lt;/strong&gt; Mail &gt; Réglages &gt; Confidentialité&lt;/p&gt;
&lt;p&gt;Deux niveaux de protection, du plus souple au plus strict :&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Niveau 1, “Protéger l’activité Mail” :&lt;/strong&gt; Apple charge les images distantes à ta place via ses propres serveurs (proxy). L’expéditeur voit l’IP d’Apple, pas la tienne. Les pixels espions sont neutralisés, mais les images se chargent quand même. C’est le minimum.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Niveau 2, “Bloquer tout le contenu distant” :&lt;/strong&gt; aucune ressource distante ne se charge, point. Pas d’images hébergées sur un serveur, pas de pixels, pas de CSS externe. L’email s’affiche en texte et images embarquées dans le message (CID) uniquement, sans aucun appel réseau. Un bouton “Charger le contenu distant” apparaît en haut de chaque email si tu veux charger au cas par cas.&lt;/p&gt;
&lt;p&gt;Le niveau 2 rend le niveau 1 redondant (si rien ne se charge, rien à proxifier). Mais active les deux : si tu cliques “Charger le contenu distant” sur un email, c’est le niveau 1 qui prend le relais et proxifie les images via Apple au lieu de les charger directement. Ceinture et bretelles.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que tu dois voir :&lt;/strong&gt; les deux options cochées.&lt;/p&gt;
&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;
&lt;img src=&quot;https://macsouverain.com/content/images/2026/07/step-01-mail-confidentialite.png&quot; class=&quot;kg-image&quot; loading=&quot;lazy&quot; alt=&quot;step-01-mail-confidentialite&quot;&gt;
&lt;/figure&gt;
&lt;blockquote&gt;
&lt;p&gt;Sur Proton Mail : actif par défaut, rien à faire. Sur Proton Mail + Bridge + Apple Mail : la protection opère côté serveur Proton avant même d’arriver dans Apple Mail. Active quand même le réglage Apple Mail ci-dessus, la redondance est une bonne pratique.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h3 id=&quot;étape-2--réduire-la-surface-htmlcss&quot;&gt;Étape 2 : Réduire la surface HTML/CSS&lt;/h3&gt;
&lt;p&gt;Un email HTML, c’est une page web. Et une page web, ça s’exécute dans un moteur de rendu. Ce moteur a des caractéristiques mesurables qui permettent de t’identifier sans cookie et sans JavaScript, uniquement via CSS et HTML.&lt;/p&gt;
&lt;p&gt;Des media queries peuvent charger différentes ressources selon ton mode sombre, ta taille d’écran, ta résolution. Des techniques avancées permettent d’extraire du contenu via CSS seul. Des homoglyphes Unicode rendent des URLs de phishing visuellement identiques à l’original.&lt;/p&gt;
&lt;p&gt;Apple Mail ne propose plus de bascule globale “texte brut” sur macOS Ventura+. La protection passe par deux approches :&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Option 1, bloquer le contenu distant (déjà fait à l’étape 1) :&lt;/strong&gt; avec “Bloquer tout le contenu distant” activé, le rendu CSS devient inerte. Aucune ressource externe ne se charge.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Option 2, basculer en texte brut sur un email précis :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Ouvre l’email en question&lt;/li&gt;
&lt;li&gt;Menu &lt;strong&gt;Présentation &gt; Message &gt; Texte brut alternatif&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;L’email repasse en texte pur, aucun CSS ne s’exécute&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Ce que tu dois voir :&lt;/strong&gt; emails affichés sans mise en forme riche quand le contenu distant est bloqué. Option texte brut disponible au cas par cas.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Avec Proton Mail&lt;/strong&gt; (web ou app desktop), tu peux activer le texte brut par défaut pour tous les emails (Paramètres &gt; Apparence &gt; Composer en texte brut). Le blocage des images distantes et le blocage de l’ouverture automatique des pièces jointes sont actifs par défaut. Ce que tu configures manuellement sur Apple Mail est déjà réglé d’office sur Proton.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h3 id=&quot;étape-3--pièces-jointes-les-réflexes-qui-comptent&quot;&gt;Étape 3 : Pièces jointes, les réflexes qui comptent&lt;/h3&gt;
&lt;p&gt;Les pièces jointes sont le vecteur de malware le plus documenté de la dernière décennie. Macros Office VBA, PDF avec JavaScript embarqué (Adobe Reader l’exécute par défaut), fichiers TNEF (winmail.dat) d’Outlook.&lt;/p&gt;
&lt;p&gt;Sur les anciennes versions de macOS, Apple Mail proposait une option “Ouvrir les pièces jointes sécurisées automatiquement” dans Mail &gt; Réglages &gt; Général. Apple l’a supprimée à partir de macOS Sequoia : les pièces jointes ne s’ouvrent plus automatiquement. Le fait qu’Apple ait retiré le choix à l’utilisateur en dit long sur le niveau de risque que ça représentait.&lt;/p&gt;
&lt;p&gt;Le réglage est réglé. Ce qui reste, c’est &lt;strong&gt;tes réflexes&lt;/strong&gt; :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Avant d’ouvrir une pièce jointe : appuie sur &lt;strong&gt;Espace&lt;/strong&gt; (Quick Look) directement depuis l’email. Le fichier s’affiche en lecture seule sans s’exécuter.&lt;/li&gt;
&lt;li&gt;Pour les PDF : utilise &lt;strong&gt;Aperçu&lt;/strong&gt; (Preview) plutôt qu’Adobe Reader, surface d’attaque bien plus réduite.&lt;/li&gt;
&lt;li&gt;Pour les .docx / .xlsx venant de sources inconnues : Quick Look d’abord, pas Office. Jamais activer les macros dans un document reçu par email, même d’une source connue (un compte compromis envoie des macros crédibles).&lt;/li&gt;
&lt;li&gt;Un fichier &lt;code&gt;.app&lt;/code&gt;, &lt;code&gt;.dmg&lt;/code&gt;, &lt;code&gt;.pkg&lt;/code&gt; ou &lt;code&gt;.command&lt;/code&gt; reçu par email ? &lt;strong&gt;Suppression immédiate.&lt;/strong&gt; Aucun expéditeur légitime n’envoie un exécutable par mail.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&quot;étape-4--mettre-à-jour-le-client-mail-sans-délai&quot;&gt;Étape 4 : Mettre à jour le client mail sans délai&lt;/h3&gt;
&lt;p&gt;Les zero-days sur les clients mail existent. CVE-2023-23397 sur Outlook (CVSS 9.8) : un email malveillant déclenchait une authentification NTLM vers un serveur attaquant, sans aucune interaction de l’utilisateur. Juste recevoir l’email suffisait. Exploité activement par APT28 avant le patch.&lt;/p&gt;
&lt;p&gt;Apple Mail a un historique plus modeste qu’Outlook, mais pas inexistant. CVE-2020-9922 : Apple Mail pouvait envoyer des emails en clair même avec S/MIME activé dans certaines conditions.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chemin :&lt;/strong&gt; Réglages Système &gt; Général &gt; Mise à jour de logiciels &gt; Mises à jour automatiques&lt;/p&gt;
&lt;p&gt;Tout activer, y compris &lt;strong&gt;“Installer les mises à jour de sécurité et fichiers système”&lt;/strong&gt;. Ne jamais repousser une mise à jour macOS qui inclut un patch Mail.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ce que tu dois voir :&lt;/strong&gt; toutes les options de mise à jour automatique cochées.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Si tu utilises Proton Bridge : ouvre Bridge &gt; icône barre de menus &gt; Vérifier les mises à jour. Bridge a son propre cycle de mise à jour indépendant de macOS.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h3 id=&quot;étape-5--apprendre-à-vérifier-un-email-suspect-spfdkimdmarc&quot;&gt;Étape 5 : Apprendre à vérifier un email suspect (SPF/DKIM/DMARC)&lt;/h3&gt;
&lt;p&gt;L’email a été conçu dans les années 70 sans aucun mécanisme d’authentification. N’importe qui peut envoyer un email avec le champ &lt;code&gt;From:&lt;/code&gt; qu’il veut. Trois mécanismes de contrôle ont été ajoutés :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;SPF&lt;/strong&gt;, Sender Policy Framework, vérifie que le serveur d’envoi est autorisé pour ce domaine&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DKIM&lt;/strong&gt;, DomainKeys Identified Mail, signe cryptographiquement l’email pour vérifier qu’il n’a pas été modifié en transit&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DMARC&lt;/strong&gt;, Domain-based Message Authentication, Reporting &amp;#x26; Conformance, lie SPF et DKIM et définit quoi faire en cas d’échec&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Sur Apple Mail :&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Ouvre l’email suspect&lt;/li&gt;
&lt;li&gt;Menu &lt;strong&gt;Affichage &gt; Message &gt; En-têtes longs&lt;/strong&gt; (ou &lt;code&gt;Cmd+Shift+H&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Cherche la ligne &lt;code&gt;Authentication-Results:&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Lis les trois valeurs : &lt;code&gt;spf=pass&lt;/code&gt; / &lt;code&gt;dkim=pass&lt;/code&gt; / &lt;code&gt;dmarc=pass&lt;/code&gt;. Un &lt;code&gt;fail&lt;/code&gt; ou &lt;code&gt;none&lt;/code&gt; sur DMARC est un signal d’alerte&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Ce que tu dois voir :&lt;/strong&gt; les en-têtes complets avec les résultats d’authentification.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;spf=pass dkim=pass dmarc=pass&lt;/code&gt; : email authentifié, expéditeur légitime. Tout va bien.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;dmarc=fail&lt;/code&gt; : l’expéditeur ne correspond pas au domaine déclaré. Phishing probable. Alerte élevée.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;dkim=fail&lt;/code&gt; : l’email a été modifié en transit ou vient d’un serveur non autorisé. Alerte élevée.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;spf=fail&lt;/code&gt; seul : moins concluant, les configs SPF sont parfois imparfaites. Alerte moyenne.&lt;/p&gt;
&lt;p&gt;Tous à &lt;code&gt;none&lt;/code&gt; : le domaine n’a configuré aucune authentification. Méfiance maximale.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Alternative simple : copie les en-têtes complets et colle-les sur &lt;a href=&quot;https://mxtoolbox.com/EmailHeaders.aspx&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;mxtoolbox.com/EmailHeaders.aspx&lt;/a&gt;, le résultat est lisible en 10 secondes.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Important : Apple Mail ne peut pas rejeter automatiquement un email qui échoue.&lt;/strong&gt; Il affiche les résultats d’authentification dans les en-têtes, mais le tri se fait côté serveur, par ton fournisseur email. C’est là que le choix du fournisseur fait la différence :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;iCloud Mail&lt;/strong&gt; : applique DMARC, mais Apple est peu transparent sur le niveau d’application stricte. Pas de filtres avancés côté serveur.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gmail&lt;/strong&gt; : applique DMARC, mais peut livrer en spam au lieu de rejeter. Filtres puissants, mais Google lit tout au passage.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Proton Mail&lt;/strong&gt; : applique la politique DMARC du domaine expéditeur côté serveur. Un &lt;code&gt;dmarc=fail&lt;/code&gt; avec politique &lt;code&gt;reject&lt;/code&gt;, l’email n’arrive jamais dans ta boîte. En plus, Proton propose des &lt;strong&gt;filtres Sieve&lt;/strong&gt; : un langage de règles côté serveur qui te permet de trier, déplacer, rejeter ou étiqueter automatiquement tes emails selon l’expéditeur, le sujet, les en-têtes, etc. C’est bien plus puissant que les règles d’Apple Mail.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire bientôt : &lt;a href=&quot;https://macsouverain.com/proton-bridge-apple-mail-mac/&quot;&gt;Configurer Proton Bridge avec Apple Mail sur Mac&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Réflexe à retenir :&lt;/strong&gt; demande urgente + &lt;code&gt;dmarc=fail&lt;/code&gt; = appel téléphonique avant toute action, sans exception.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;étape-6--configurer-la-combinaison-optimale-proton-mail--bridge--apple-mail&quot;&gt;Étape 6 : Configurer la combinaison optimale (Proton Mail + Bridge + Apple Mail)&lt;/h3&gt;
&lt;p&gt;Si tu veux la protection maximale sur Mac, la combinaison Proton Mail + Bridge + Apple Mail empile trois couches indépendantes :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Proton Mail&lt;/strong&gt; : ne peut pas lire tes emails (chiffrement E2EE, clés sur ton appareil), filtre les pixels espions et ressources distantes côté serveur avant même de te les transmettre&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Proton Bridge&lt;/strong&gt; : déchiffre localement sur ton Mac, ne transmet rien sur le réseau&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Apple Mail&lt;/strong&gt; : n’exécute pas de JavaScript, bloque le contenu distant (si configuré comme ci-dessus)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Aucune de ces trois couches n’exécute de code actif contenu dans un email. C’est structurellement meilleur que n’importe quel webmail.&lt;/p&gt;
&lt;p&gt;Bridge est disponible à partir du plan &lt;strong&gt;Proton Mail Plus&lt;/strong&gt; (à partir de 3,99 euros/mois en abonnement annuel). Le plan gratuit Proton Mail ne donne pas accès à Bridge.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://proton.me/mail&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Essayer Proton Mail&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;À lire bientôt : &lt;a href=&quot;https://macsouverain.com/proton-bridge-apple-mail-mac/&quot;&gt;Configurer Proton Bridge avec Apple Mail sur Mac&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pixels-de-suivi--ce-que-change-la-recommandation-cnil-du-14-avril-2026&quot;&gt;Pixels de suivi : ce que change la recommandation CNIL du 14 avril 2026&lt;/h2&gt;
&lt;p&gt;Le 14 avril 2026, la CNIL a adopté sa &lt;a href=&quot;https://www.cnil.fr/fr/recommandation-pixel-suivi-courriels&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;recommandation sur les pixels de suivi dans les emails&lt;/a&gt;, version finale après la consultation publique de juin 2025. Ce n’est ni une loi, ni un règlement, simplement une recommandation. Mais c’est la doctrine sur laquelle la CNIL s’appuie pour te contrôler, et pour contrôler ceux qui t’écrivent. Et quand le régulateur publie sa grille de lecture, les audits qui arrivent derrière s’en servent.&lt;/p&gt;
&lt;h3 id=&quot;un-pixel-espion-en-trois-lignes&quot;&gt;Un pixel espion, en trois lignes&lt;/h3&gt;
&lt;p&gt;Un pixel espion, c’est une image d’un pixel sur un pixel, transparente, hébergée sur un serveur à l’autre bout d’internet. L’expéditeur la glisse dans le corps HTML de son email, au milieu du texte, invisible à l’œil. Quand ton client mail affiche le message, il télécharge cette image. Ce simple téléchargement envoie une requête HTTP au serveur, qui enregistre au passage ton IP, ton client mail, l’heure, et un identifiant unique collé à ton adresse email.&lt;/p&gt;
&lt;p&gt;Résultat : l’expéditeur sait que tu as ouvert, quand, depuis quelle ville approximative, sur quel OS, combien de fois. Tu n’as rien fait de particulier, tu as juste lu. Multiplié par toutes les newsletters, tous les emails B2B, toutes les notifications commerciales que tu reçois, ça dessine un profil détaillé de ton attention.&lt;/p&gt;
&lt;h3 id=&quot;ce-que-la-cnil-encadre-désormais&quot;&gt;Ce que la CNIL encadre désormais&lt;/h3&gt;
&lt;p&gt;La base juridique, c’est l’article 82 de la Loi Informatique et Libertés, celui qui régit les cookies et traceurs. Et les lignes directrices du Comité européen de la protection des données, 2/2023, qui rangent explicitement les pixels d’emails dans la catégorie des traceurs. La recommandation du 14 avril 2026 applique cette grille au cas précis des pixels dans les emails.&lt;/p&gt;
&lt;p&gt;Principe retenu par la CNIL : un pixel de suivi est un traceur. Il lit et écrit de l’information sur ton terminal (ton client mail, ton téléphone, ton Mac). Donc par défaut, il relève du consentement préalable, au même titre qu’un cookie publicitaire.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Une seule exemption au consentement&lt;/strong&gt; : la mesure de délivrabilité individuelle liée à un service que tu as demandé. En clair, pour les emails transactionnels, confirmation d’achat, alerte de sécurité, reset de mot de passe, activation de compte, l’expéditeur peut vérifier si l’email t’est bien parvenu, sans te demander ton accord. C’est vu comme un composant technique du service que tu as sollicité.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tout le reste exige un consentement explicite.&lt;/strong&gt; Personnalisation du contenu selon ton comportement, mesure d’audience marketing, ciblage publicitaire, segmentation commerciale, analytics fines. Si ton expéditeur utilise le pixel pour autre chose que vérifier que l’email est arrivé, il doit te demander. Explicitement, au niveau du consentement RGPD standard, pas un bandeau enterré en bas d’une page.&lt;/p&gt;
&lt;h3 id=&quot;le-délai-et-ce-qui-arrive-après&quot;&gt;Le délai, et ce qui arrive après&lt;/h3&gt;
&lt;p&gt;La CNIL laisse trois mois pour se mettre en conformité. Concrètement : mi-juillet 2026. Après, les audits commencent. La recommandation n’est pas contraignante au sens strict, mais elle est &lt;strong&gt;opposable en contrôle&lt;/strong&gt;. Un acteur audité ne peut plus plaider l’ignorance de la doctrine : elle est publique, datée, détaillée.&lt;/p&gt;
&lt;p&gt;Et la CNIL a annoncé des contrôles. Les premiers viseront probablement les gros émetteurs B2C, newsletters commerciales, e-commerce, médias avec tracking massif. Mais la grille vaut pour tous : freelances, PME, associations. Si tu envoies une newsletter avec un pixel Mailchimp qui mesure tes ouvertures à des fins marketing, sans consentement collecté, tu es hors clous.&lt;/p&gt;
&lt;h3 id=&quot;ce-que-ça-change-pour-toi-qui-lis-tes-emails-sur-mac&quot;&gt;Ce que ça change pour toi qui lis tes emails sur Mac&lt;/h3&gt;
&lt;p&gt;Ici, rien à faire de plus. Les réglages de l’étape 1, “Protéger l’activité Mail” et “Bloquer tout le contenu distant” dans Apple Mail, étaient déjà la meilleure défense possible avant la recommandation. Ils le restent. La différence : ce qui était présenté comme “bonne pratique privacy” par les geeks est maintenant &lt;strong&gt;la position du régulateur&lt;/strong&gt;. Tu n’es plus parano, tu es aligné avec la CNIL.&lt;/p&gt;
&lt;p&gt;Proton Mail de son côté filtre les pixels espions par défaut, côté serveur, avant même que l’email arrive dans ta boîte. Cette option n’est pas un gadget : c’est exactement ce que la recommandation CNIL impose comme standard minimum en matière de respect du lecteur. Là aussi, l’outil était en avance sur la norme, la norme a rattrapé l’outil.&lt;/p&gt;
&lt;p&gt;Le seul vrai changement, côté utilisateur : tu peux considérer que &lt;strong&gt;tout email commercial qui te piste sans t’avoir demandé ton consentement est désormais en infraction&lt;/strong&gt;. Ça ne te rend pas grand-chose directement, mais ça donne un levier aux associations de défense, à la CNIL elle-même, et aux concurrents européens des géants du marketing automation. Le rapport de force a bougé.&lt;/p&gt;
&lt;h3 id=&quot;et-si-tu-es-du-côté-émetteur&quot;&gt;Et si tu es du côté émetteur&lt;/h3&gt;
&lt;p&gt;Si tu envoies des emails dans un cadre pro, association, PME, freelance, indépendant avec une newsletter, la recommandation te concerne directement. Trois réflexes :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Tes emails transactionnels&lt;/strong&gt; (confirmation, alerte, reset) peuvent garder un pixel de délivrabilité sans consentement, à condition qu’il serve vraiment à ça et rien d’autre.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tes emails marketing, newsletters, campagnes&lt;/strong&gt; doivent passer par un consentement explicite au traçage, distinct du simple opt-in à la newsletter. Lire ta lettre et accepter d’être mesuré, ce sont deux actes différents.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tes outils d’emailing&lt;/strong&gt; (Mailchimp, Brevo, Sendinblue, Substack) doivent te permettre de désactiver le pixel par défaut ou de le conditionner au consentement. Si ton outil ne le propose pas, tu vas devoir en changer avant mi-juillet.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ce n’est pas la fin du mailing. C’est la fin du mailing aveugle, la fin de “j’ouvre, donc on me mesure”. Pour un site comme MacSouverain qui recommande depuis le début les outils qui respectent le lecteur, c’est une victoire silencieuse.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;si-ça-ne-marche-pas&quot;&gt;Si ça ne marche pas&lt;/h2&gt;
&lt;h3 id=&quot;problème--les-emails-sont-illisibles-après-avoir-bloqué-le-contenu-distant&quot;&gt;Problème : les emails sont illisibles après avoir bloqué le contenu distant&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable :&lt;/strong&gt; l’email ne contient pas de version texte, uniquement du HTML avec images.&lt;br&gt;
&lt;strong&gt;Solution :&lt;/strong&gt; clique “Charger le contenu distant” en haut de l’email pour ce message spécifique. Le réglage global reste actif pour tous les autres.&lt;/p&gt;
&lt;h3 id=&quot;problème--les-en-têtes-longs-napparaissent-pas-dans-le-menu&quot;&gt;Problème : les en-têtes longs n’apparaissent pas dans le menu&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable :&lt;/strong&gt; variante macOS. Sur certaines versions de Sequoia/Tahoe, le chemin peut différer.&lt;br&gt;
&lt;strong&gt;Solution :&lt;/strong&gt; essaie Affichage &gt; En-têtes de message &gt; Personnalisé, puis coche les champs souhaités.&lt;/p&gt;
&lt;h3 id=&quot;problème--un-collègue-menvoie-des-winmaildat&quot;&gt;Problème : un collègue m’envoie des winmail.dat&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cause probable :&lt;/strong&gt; il utilise Outlook en mode TNEF.&lt;br&gt;
&lt;strong&gt;Solution :&lt;/strong&gt; demande-lui d’envoyer en HTML ou texte brut. Si c’est récurrent, ne pas ouvrir avec des outils tiers non maintenus. Quick Look peut souvent afficher le contenu.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;pour-les-pressés&quot;&gt;Pour les pressés&lt;/h2&gt;
&lt;p&gt;Cet article sécurise ton client mail contre les six principaux vecteurs d’attaque : pixels espions, fingerprinting CSS, pièces jointes piégées, zero-days client, spoofing email, et code actif dans les emails. &lt;strong&gt;Nouveauté 14 avril 2026&lt;/strong&gt; : la recommandation CNIL sur les pixels de suivi rend le blocage des pixels opposable en contrôle à partir de mi-juillet 2026. Tes réglages Apple Mail et Proton Mail ci-dessous étaient déjà conformes, ils le restent.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concrètement, les réglages :&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Confidentialité Mail&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Mail &gt; Réglages &gt; Confidentialité &gt; Protéger l’activité Mail = &lt;strong&gt;Activé&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;… &gt; Bloquer tout le contenu distant = &lt;strong&gt;Activé&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Pièces jointes &amp;#x26; mises à jour&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Mail &gt; Réglages &gt; Général &gt; Ouvrir les pièces jointes sécurisées automatiquement = &lt;strong&gt;Désactivé&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Réglages Système &gt; Général &gt; Mise à jour de logiciels &gt; Mises à jour automatiques = &lt;strong&gt;Tout activé&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Vérifier un email suspect&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Affichage &gt; Message &gt; En-têtes longs (Cmd+Shift+H) → chercher &lt;code&gt;Authentication-Results&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Protection maximale&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Proton Mail + Bridge + Apple Mail (3 couches indépendantes, zéro exécution de code actif)&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Des termes techniques ? &lt;a href=&quot;https://macsouverain.com/glossaire/&quot;&gt;Consulte le glossaire.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;</content:encoded><dc:creator>Mac Souverain</dc:creator><category>securite</category><category>email</category><category>privacy</category><category>tracking</category><category>proton</category><category>tutoriels</category><enclosure url="https://macsouverain.com/content/images/2026/04/feature-secu-nb.png" length="0" type="image/png"/></item></channel></rss>