1 line
446 KiB
JSON
1 line
446 KiB
JSON
[{"article":{"uuid":"6339a493-0c2e-459b-94fa-bcf4f9761e47","slug":"etc-bashrc","title":"/etc/bashrc","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-19 06:55:29","created_at":"2023-02-19 06:55:29","updated_at":"2023-02-19 06:55:29","plain":"est un fichier de configuration pour la shell Bash qui est généralement utilisé par les systèmes d'exploitation basés sur UNIX ou Linux. Il peut contenir des commandes et des paramètres de configuration pour la shell Bash qui doivent être exécutés pour tous les utilisateurs de la machine. Il peut contenir des définitions de variables d'environnement, des alias de commandes, des options de configuration pour Bash, et d'autres commandes qui doivent être exécutées pour tous les utilisateurs de la machine au démarrage de la session. Il est généralement utilisé pour configurer des paramètres tels que la mise en forme de la ligne de commande, les couleurs, les options de historique de commandes, les options de tabulation automatique, et d'autres paramètres de configuration pour tous les utilisateurs. A noter que cela dépend des paramétrages de l'administrateur système de chaque distribution. Voir .bash_profile pour obtenir des exemples."},"score":6.75,"snippet":"est un fichier de configuration pour la shell Bash qui est généralement utilisé par les systèmes d'exploitation basés sur UNIX ou Linux. Il peut contenir des commandes et des paramètres de configuration pour la shell Bas…","tier":1},{"article":{"uuid":"bea327e2-9d1c-4ff6-a5a5-26748c80018b","slug":"anatomie-d-un-script-d-auto-deploiement-bash-fetch-scripts-sh","title":"Script Bash d'auto-déploiement : `fetch_scripts.sh`","category":"informatique","author":"cedric@abonnel.fr","cover":"cover.svg","published":true,"published_at":"2026-05-04 07:04","created_at":"2026-05-12 10:55:39","updated_at":"2026-05-12 11:10:51","plain":"Comment un simple script Bash peut télécharger, mettre à jour et synchroniser une bibliothèque de scripts distants — et pourquoi il faut le lire avec un œil critique.\r\n\r\nfetchscripts.sh\r\n📝 Note — Cet article est une autocritique. Le script analysé ici est de ma propre fabrication, déployé sur mes propres machines. L'exercice consiste à le relire avec la distance d'un reviewer extérieur, pour identifier ce qui tient la route et ce qui mériterait d'être repris.\r\n\r\nLe contexte\r\n\r\nL'idée derrière ce script est élégante : centraliser une collection de scripts utilitaires dans un dépôt Git public (ici, une instance Forgejo auto-hébergée), puis fournir un unique point d'entrée que l'on télécharge sur n'importe quelle machine. Ce point d'entrée se met à jour tout seul, propose à l'opérateur de choisir quels sous-ensembles de scripts récupérer, et maintient une synchronisation locale du dépôt distant.\r\n\r\nC'est typiquement le genre d'outil qui se déploie en une ligne :\r\n\r\n\r\n\r\nDécortiquons ce qu'il fait, étape par étape, puis voyons où il faudrait taper.\r\n--\r\n\r\nÉtape 1 — L'auto-mise à jour\r\n\r\n\r\n\r\nCe qui se passe : le script télécharge sa propre version distante dans , la compare octet-à-octet avec lui-même (), et si elle diffère, il s'écrase, se rend exécutable, et se relance via (qui remplace le processus courant — pas d'empilement de shells).\r\n\r\nPourquoi c'est malin : ça garantit qu'à chaque exécution, l'opérateur travaille avec la version canonique du dépôt. Pas besoin de mécanisme de versioning, pas de vérification de hash, pas de paquet à publier.\r\n\r\nPourquoi c'est risqué : on y reviendra dans la critique, mais en résumé — l'auto-mise à jour silencieuse depuis une URL en HTTPS sans signature est une porte d'entrée pour la chaîne d'approvisionnement.\r\n--\r\n\r\nÉtape 2 — Récupération du catalogue de dossiers\r\n\r\n\r\n\r\nLe dépôt distant contient un fichier qui liste les catégories de scripts disponibles (par exemple : , , , …). Ce fichier est la source de vérité : ajouter une catégorie côté serveur la rend immédiatement disponible côté client.\r\n\r\n (alias ) lit le fichier ligne à ligne dans un tableau Bash. Plus propre qu'une boucle .\r\n\r\nUn dossier est marqué comme obligatoire — il sera toujours téléchargé, sans demander à l'utilisateur.\r\n--\r\n\r\nÉtape 3 — Mémoire de la sélection précédente\r\n\r\n\r\n\r\nÀ chaque exécution, le script relit la sélection de la fois précédente. C'est ce qui permet à l'interface graphique (étape suivante) de pré-cocher les bons dossiers : on n'a pas à refaire son choix à chaque mise à jour.\r\n--\r\n\r\nÉtape 4 — L'interface \r\n\r\n\r\n\r\n est l'outil de dialogue ncurses standard sur Debian/Ubuntu — il affiche cette boîte bleue familière avec des cases à cocher, navigable au clavier. Idéal en SSH.\r\n\r\nLa gymnastique est un classique : écrit son interface sur stdout et sa réponse sur stderr. Il faut donc échanger les deux pour capturer la sélection dans tout en laissant l'interface s'afficher.\r\n\r\nL'expression est une astuce courante pour tester l'appartenance à un tableau Bash — on entoure d'espaces pour éviter les correspondances partielles ( qui matcherait ).\r\n--\r\n\r\nÉtape 5 — Synchronisation : ajouts et suppressions\r\n\r\n\r\n\r\nLogique de diff : tout ce qui était sélectionné avant et ne l'est plus est supprimé du disque. Ça maintient le répertoire local propre — pas de scripts orphelins qui traînent.\r\n\r\n renvoie la sélection sous forme de chaîne entre guillemets (), d'où le pour les retirer avant de constituer le tableau.\r\n--\r\n\r\nÉtape 6 — Téléchargement des fichiers de chaque dossier\r\n\r\n\r\n\r\nMême logique récursive d'un niveau plus bas : chaque dossier contient son propre listant ses fichiers. On télécharge ceux qui y figurent, on supprime ceux qui n'y figurent plus, et on rend tout exécutable.\r\n\r\nC'est une forme de artisanal, basé sur des manifestes plats. Ça fonctionne sans avoir à installer sur la machine cible — seuls et sont requis.\r\n--\r\n\r\nCritique : ce qui marche, ce qui inquiète\r\n\r\nLes bons côtés\r\n\r\nLa logique d'idempotence est solide. Le script peut tourner cent fois de suite, il convergera toujours vers le même état : les dossiers sélectionnés contiendront exactement les fichiers du manifeste, ni plus, ni moins. C'est le bon réflexe DevOps.\r\n\r\nL'auto-bootstrap est ergonomique. Une seule URL à retenir, tout le reste se télécharge tout seul. Pour une bibliothèque personnelle de scripts d'admin, c'est imbattable en simplicité.\r\n\r\nPas de dépendances exotiques. , , : tout est disponible nativement sur Debian. Le script tourne aussi bien sur un conteneur LXC fraîchement provisionné que sur une machine établie.\r\n\r\nLe manifeste séparé ( et ) découple la liste des fichiers de leur contenu. C'est plus simple qu'un parsing HTML de l'index Git, et ça reste sous contrôle éditorial.\r\n\r\nLes angles morts\r\n\r\n1. Aucune vérification d'intégrité\r\n\r\nC'est le point critique. Le script télécharge du code exécutable en HTTPS, sans vérifier :\r\nni signature GPG,\r\nni hash SHA256,\r\nni même que le serveur a bien répondu correctement.\r\n\r\n en mode silencieux n'échoue pas visiblement : si la requête renvoie une page d'erreur 404 ou une page de connexion captive Wi-Fi en HTML, elle sera écrite dans le fichier de destination. La vérification suivante () considérera ce HTML comme « différent », fera le , et au prochain le shell essaiera d'exécuter du HTML. Au mieux ça crashe, au pire ça exécute des balises interprétables.\r\n\r\nPire encore pour l'auto-update : si quelqu'un compromet l'instance Forgejo (ou interpose un proxy malveillant capable de servir un certificat valide pour ), le prochain télécharge et exécute du code arbitraire avec les privilèges de l'utilisateur courant — souvent root pour ce genre d'outils d'admin.\r\n\r\nCorrectif minimal : publier un fichier signé GPG dans le dépôt, le télécharger, vérifier sa signature avec une clé connue localement, puis valider chaque fichier téléchargé contre ce manifeste.\r\n\r\n2. sans gestion d'erreur\r\n\r\n\r\n\r\nSi échoue (réseau coupé, DNS HS, certificat expiré), sera soit vide soit absent. retournera « différent », et le script écrasera la version locale par un fichier vide. À la prochaine exécution, plus rien ne fonctionne.\r\n\r\nCorrectif : vérifier le code de retour de , vérifier que le fichier téléchargé n'est pas vide, et vérifier qu'il commence bien par avant d'écraser quoi que ce soit.\r\n\r\n\r\n\r\n3. Le perd les modifications de l'environnement\r\n\r\nSi le script a été lancé par (donc sans le bit exécutable, sans shebang utilisé), vaut . Après , on un fichier qui pourrait ne pas être dans le . En pratique ça marche parce qu'on est dans le bon répertoire, mais c'est fragile — un quelque part dans le script suffirait à le casser.\r\n\r\n4. Injection via les noms de fichiers du manifeste\r\n\r\n\r\n\r\nLe contenu de est utilisé directement dans une URL et dans un chemin de fichier local. Si quelqu'un peut écrire dans ce fichier manifeste (ce qui revient à pouvoir pousser sur le dépôt Forgejo), il peut y mettre des chemins comme et écrire en dehors du répertoire prévu.\r\n\r\n neutralise partiellement la chose côté nom local, mais l'URL côté distant accepte n'importe quoi. C'est moins critique que la première faille, mais ça mérite un filtre regex ( uniquement).\r\n\r\n5. et la sélection vide\r\n\r\nSi l'utilisateur ne coche rien et valide, est vide. Le script continue avec seulement , ce qui est probablement le comportement attendu. Mais si n'est pas installé (rare mais possible, par exemple sur Alpine ou un Debian minimal sans ), le script échoue avec une erreur peu explicite. Un test préalable éviterait la déconvenue.\r\n\r\n6. Pas de log, pas de mode dry-run\r\n\r\nPour un outil qui supprime des fichiers (), l'absence d'option qui afficherait ce qui serait fait sans rien toucher est gênante. Une frappe distraite sur la checklist, et un dossier entier disparaît sans warning.\r\n\r\n7. Le verrou manquant\r\n\r\nRien n'empêche deux instances de de tourner en parallèle (par exemple via et un opérateur en interactif). Un sur un fichier de lock éviterait des courses sur les opérations de download/delete.\r\n--\r\n\r\nVerdict\r\n\r\nC'est un script utile, lisible, et bien construit pour un usage personnel sur des machines de confiance. La logique de synchronisation est saine, l'ergonomie est appréciable, l'auto-bootstrap est élégant.\r\n\r\nMais dès qu'on franchit la frontière du « j'utilise ça sur mes propres machines avec mon propre dépôt », les manques se font sentir : pas de vérification d'intégrité, pas de gestion d'erreur réseau, pas d'option de récupération. Dans un contexte d'équipe ou de production, ces points sont bloquants.\r\n\r\nPistes d'évolution prioritaires\r\n\r\n1. Signature ou checksum : publier un signé GPG, le vérifier avant tout ou exécution.\r\n2. en tête de script pour faire échouer proprement à la première erreur.\r\n3. Vérifier : code de retour, fichier non vide, shebang présent.\r\n4. Backup avant écrasement : conserver la version précédente () pour pouvoir revenir en arrière.\r\n5. Option pour visualiser sans appliquer.\r\n6. Filtre regex sur les noms de fichiers du manifeste pour éviter les traversées de chemin.\r\n7. Lock file** via pour éviter les exécutions concurrentes.\r\n\r\nAvec ces ajouts, on passe d'un script « pratique » à un outil de déploiement digne de ce nom — sans rien perdre de sa simplicité initiale."},"score":5.25,"snippet":"Comment un simple script Bash peut télécharger, mettre à jour et synchroniser une bibliothèque de scripts distants — et pourquoi il faut le lire avec un œil critique.\r\n\r\nfetchscripts.sh\r\n📝 Note — Cet article est une auto…","tier":1},{"article":{"uuid":"60acde33-f1fa-4ab5-867e-8fb506211186","slug":"script-bash-upload","title":"Script Bash pour upload de CSV","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-16 15:39:20","created_at":"2023-02-16 15:39:20","updated_at":"2023-02-16 15:39:20","plain":"Dans le script Bash, la commande \"curl\" permet d'envoyer le fichier vers la page PHP d'upload. Voici un exemple de code Bash qui télécharge tous les fichiers CSV dans un répertoire, à l'exception de celui qui a été modifié le jour même. Pour exclure le fichier CSV modifié le jour même de l'envoi, on a utilisé la commande find pour localiser tous les fichiers CSV dans le répertoire spécifié qui ne sont pas modifiés aujourd'hui. Ensuite, on boucle sur cette liste de fichiers et exécuter le code d'envoi de fichier pour chaque fichier trouvé. Pour chaque fichier, nous avons calculé le SHA-1 localement, envoyé le fichier au script PHP, récupéré le SHA-1 calculé par le script PHP et comparé les deux valeurs de hachage. Si les valeurs de hachage sont identiques, nous avons affiché un message de confirmation et déplacé le fichier CSV dans le dossier . Si les valeurs de hachage ne sont pas identiques, nous avons affiché un message d'erreur."},"score":5.25,"snippet":"Dans le script Bash, la commande "curl" permet d'envoyer le fichier vers la page PHP d'upload. Voici un exemple de code Bash qui télécharge tous les fichiers CSV dans un répertoire, à l'exception de celui qui a été modif…","tier":1},{"article":{"uuid":"571f1f79-ae4a-41d5-bf73-870c4d2f66c1","slug":"bash","title":"BASH","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-13 21:46:30","created_at":"2023-02-13 21:46:30","updated_at":"2023-02-13 21:46:30","plain":"BASH est un interpréteur en ligne de commande de type script. C'est le shell Unix du projet GNU. Il est utilisé également utilisé avec Linux sous Debian, Fedora, MX Linux, Mint ou Raspbian. Table des matières\nLes pages\n<nav stacked=\"true\" fade=\"true\"> </nav> Les sous-catégories\n<nav stacked=\"true\" fade=\"true\"> </nav>"},"score":5.25,"snippet":"BASH est un interpréteur en ligne de commande de type script. C'est le shell Unix du projet GNU. Il est utilisé également utilisé avec Linux sous Debian, Fedora, MX Linux, Mint ou Raspbian. Table des matières\nLes pages\n<…","tier":1},{"article":{"uuid":"c55f81b2-4dd6-411c-890d-8e983dc930b1","slug":"20230210-resoudre-les-erreurs-de-certificat-ssl-avec-un-script-bash-pour-dovecot","title":"Résoudre les erreurs de certificat SSL avec un script BASH pour Dovecot","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-10 22:20:48","created_at":"2023-02-10 22:20:48","updated_at":"2023-02-10 22:20:48","plain":"Le certificat de Dovecot est un élément crucial pour la sécurité et la confidentialité des communications par courrier électronique. Dovecot est un serveur de messagerie populaire qui permet aux utilisateurs de gérer leurs e-mails sur leur propre serveur avec le protocole IMAP. Cependant, pour assurer la sécurité des données, un certificat de sécurité valide est nécessaire pour établir une connexion sécurisée entre le serveur et les clients de messagerie. Malheureusement, même lorsque le certificat de Dovecot est correctement renouvelé, il peut arriver que le certificat fourni par Dovecot reste sur les anciennes propriétés, ce qui peut entraîner une erreur de certificat. C'est ce qui est arrivé récemment, causant des problèmes pour les utilisateurs de la messagerie abonnel.fr. Pour résoudre ce problème, j'ai mis en place un script en ligne de commande (ou script BASH) pour vérifier la date de validité du certificat disponible sur le port 993. Si le certificat était à 10 jours d'expiration, le script relance automatiquement le service Dovecot. Cependant, si cela ne suffit pas à résoudre le problème, est que le certificat est toujours à moins de 10 jours d'expiration, le script envoie un e-mail d'alerte à l'administrateur système pour qu'il puisse prendre les mesures nécessaires pour résoudre le problème. Grâce à ce script, nous pouvons maintenant être sûrs que le certificat de Dovecot est toujours valide et que le service est disponible pour les utilisateurs. Pour en savoir plus sur Dovecot et comment configurer un certificat de sécurité pour votre serveur de messagerie, je vous invite à consulter l'article sur Dovecot."},"score":5.25,"snippet":"Le certificat de Dovecot est un élément crucial pour la sécurité et la confidentialité des communications par courrier électronique. Dovecot est un serveur de messagerie populaire qui permet aux utilisateurs de gérer leu…","tier":1},{"article":{"uuid":"5538c945-6ba4-48af-bb1f-8a0a7d4d9ff4","slug":"liste-variables-bash","title":"Variables prédéfinies dans BASH","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-12-26 18:35:17","created_at":"2020-12-26 18:35:17","updated_at":"2020-12-26 18:35:17","plain":"Références\n<https://www.gnu.org/software/bash/manual/html_node/Bash-Variables.html>"},"score":5.25,"snippet":"Références\n<https://www.gnu.org/software/bash/manual/html_node/Bash-Variables.html>","tier":1},{"article":{"uuid":"57d5fbd4-0bd2-44a1-896c-151aa527f713","slug":"execution-unique-d-un-script-bash","title":"Exécution unique d'un script BASH","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-12-25 22:14:45","created_at":"2020-12-25 22:14:45","updated_at":"2020-12-25 22:14:45","plain":"Il arrive que l'on est besoin d'exécuter de manière un script. C'est à dire que le script ne doit pas démarré alors que le précédent lancement n'est pas terminé. Il faut savoir que lorsqu'un script ou un programme s'exécute, le système d'exploitation lui attribue un identifiant unique, appelé process id. Le script doit s'assurer une execution unique. Pour se faire, il déclarera son process id dans un fichier. Le fichier sera consulté systématiquement au démarrage. Si le process id est toujours en cours d'exécution, alors l'exéction qui vient de démarrer, s'arrêtera. Voici l'algo proposé : En BASH, voici le code proposé pour un script de sauvegarde :"},"score":5.25,"snippet":"Il arrive que l'on est besoin d'exécuter de manière un script. C'est à dire que le script ne doit pas démarré alors que le précédent lancement n'est pas terminé. Il faut savoir que lorsqu'un script ou un programme s'exéc…","tier":1},{"article":{"uuid":"2d2a63f0-bba6-4b5e-a5e6-0ef2e2b5b39d","slug":"dnf","title":"dnf","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-28 19:41:07","created_at":"2023-02-28 19:41:07","updated_at":"2023-02-28 19:41:07","plain":"--\nDNF signifie \"Dandified Yum\", et c'est un gestionnaire de paquets pour les systèmes d'exploitation Linux utilisant RPM (Red Hat Package Manager). Il est principalement utilisé pour gérer les paquets et les dépendances sur les distributions Fedora, CentOS et Red Hat Enterprise Linux. Avec DNF, les utilisateurs peuvent installer, mettre à jour, désinstaller et rechercher des paquets sur leur système. Il peut également gérer les dépendances entre les paquets, de sorte que les utilisateurs n'ont pas à s'occuper de la résolution des dépendances manuellement. Informations concernant les fichiers\nBinaire : \nFichiers de cache : \nConfiguration principale : \nConfiguration des dépôts : Configurer un proxy pour tous les utilisateurs\nParfois, lorsque vous travaillez dans un environnement réseau limité, vous devez configurer un proxy pour accéder à Internet. Vous pouvez également configurer un cache en ligne, également appelé proxy cache qui sera utilisé pour stocker des copies des paquets demandées afin d'être réutilisés ultérieurement pas d'autres machines. Voici comment configurer un proxy pour tous les utilisateurs et pour un utilisateur spécifique sur Fedora en utilisant DNF. Pour configurer un proxy pour tous les utilisateurs, vous devez modifier le fichier . <callout icon=\"fa fa-slack\">\nOuvrez ce fichier en mode édition en utilisant la commande suivante : Ajoutez les lignes suivantes pour configurer un proxy simple : Si le proxy nécessite une identification, ajoutez également les lignes suivantes : </callout> <callout icon=\"fa fa-slack\">\nEnregistrez et fermez le fichier. À partir de maintenant, tous les utilisateurs sur votre système seront en mesure d'utiliser le proxy pour accéder à Internet en utilisant DNF.\n</callout> C'est tout! Vous savez maintenant comment configurer un proxy avec DNF pour tous les utilisateurs sur Fedora. En suivant les étapes décrites ci-dessus, vous pouvez facilement accéder à Internet en utilisant DNF même dans un environnement réseau limité. Configurer un proxy pour un utilisateur spécifique\nPour configurer un proxy pour un utilisateur spécifique, vous devez ajouter les lignes suivantes dans le fichier ou : Le fichier est utilisé pour les utilisateurs non-root, tandis que le fichier est lu à chaque démarrage de la session utilisateur. Il est recommandé de redémarrer la session utilisateur après avoir effectué des modifications pour que les modifications prennent effet. C'est tout! Vous savez maintenant comment configurer un proxy avec DNF pour un utilisateur spécifique sur Fedora. En suivant les étapes décrites ci-dessus, vous pouvez facilement accéder à Internet en utilisant DNF même dans un environnement réseau limité.\nRechercher un paquet installé\nL'option \"installed\" spécifie à DNF de n'afficher que les paquets installés sur le système : dnf list installed\n- Lister tous les paquets installés sur votre système qui correspondent à la expression régulière \"krb?-\" : dnf list installed \"krb?-\" L'expression régulière \"krb?-\" signifie que DNF va rechercher tous les paquets dont le nom commence par \"krb\" suivi d'un caractère unique, puis suivi d'un tiret et de tout ce qui suit. Cela signifie que tous les paquets qui ont un nom similaire à \"krb-xxx\" ou \"krb-yyy\" seront listés par la commande. Surveiller les mises à jour disponibles sur Fedora DNF\nPour surveiller les mises à jour disponibles sur votre système Fedora utilisant DNF, vous pouvez utiliser un script bash utilisant sans droit root. <image shape=\"thumbnail\"> </image> Pour exécuter la commande en tant que service et mémoriser les informations de mise à jour dans un fichier, vous pouvez utiliser un script bash et une tâche cron. <callout icon=\"fa fa-slack\">\nLe script peut être déposé dans n'importe quel répertoire sur votre système, mais il est souvent pratique de le déposer dans un répertoire dédié aux scripts. Certains répertoires communs pour les scripts incluent (répertoire des binaires locaux). Voici un exemple de scripts que vous pouvez utiliser : </callout> <callout icon=\"fa fa-slack\">\nEnregistrez ce script dans un fichier, puis rendez-le exécutable en utilisant la commande suivante : </callout> <callout icon=\"fa fa-slack\"> La commande pour créer le fichier updatefile s'il n'existe pas encore. La commande avec l'option 644 permet à tous les utilisateurs (propriétaire, utilisateurs du groupe et autres utilisateurs) d'avoir uniquement des autorisations de lecture sur le fichier : </callout> <callout icon=\"fa fa-slack\">\nEnsuite, pour exécuter ce script en tant que service, vous pouvez ajouter une tâche cron. Pour ouvrir le fichier de configuration cron, utilisez la commande suivante : sudo crontab -e </callout> <callout icon=\"fa fa-slack\">\nAjoutez la ligne suivante à ce fichier pour exécuter le script tous les heures :\n 0 /1 /usr/local/bin/checkupdate.sh Cette ligne exécutera le script tous les heures. Vous pouvez ajuster l'heure en fonction de vos besoins.\n</callout> <callout icon=\"fa fa-slack\">\nPour afficher les informations de mise à jour lors de l'ouverture d'un terminal, vous pouvez ajouter le code suivant à votre fichier de configuration bash /.bashrc : </callout> Après avoir enregistré les modifications, ouvrez un nouveau terminal pour vérifier que les informations de mise à jour s'affichent correctement. <callout type=\"success\" icon=\"true\"> \nRetrouver le script d'installation automatique à l'adresse git.abonnel.fr scripts-bash Executez la ligne suivante dans votre Terminal :\n sudo bash -c \"$(curl -fsSL https://git.abonnel.fr/cedricAbonnel/scripts-bash/raw/branch/main/installcheckupdate.sh)\" </callout>"},"score":1,"snippet":"…ter le code suivant à votre fichier de configuration bash /.<mark>bashrc</mark> : </callout> Après avoir enregistré les modifications, ouvrez un nouveau terminal pour vérifier que les informations de mise à jour s'affichent correctem…","tier":2},{"article":{"uuid":"f525ce94-b1f4-459c-a1bc-25d3e0bdcc58","slug":"alias","title":"alias","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-19 07:03:18","created_at":"2023-02-19 07:03:18","updated_at":"2023-02-19 07:03:18","plain":"En Bash, un alias est un raccourci ou une abréviation qui est utilisé pour remplacer une commande ou une séquence de commandes plus longue par un seul mot ou une expression. Par exemple, si vous utilisez fréquemment la commande , vous pouvez créer un alias nommé pour cette commande en utilisant la syntaxe suivante dans le terminal : Maintenant, chaque fois que vous tapez dans le terminal, Bash exécutera automatiquement la commande . Les alias peuvent être utiles pour gagner du temps et améliorer l'efficacité lorsque vous travaillez avec la ligne de commande en réduisant la quantité de texte que vous devez taper pour exécuter une commande particulière. Vous pouvez enregistrer des alias dans le fichier si ce dernier existe. Dans certains systèmes, le fichier n'existe pas par défaut, mais vous pouvez le créer manuellement dans votre répertoire d'utilisateur en utilisant la commande suivante : Ensuite, vous pouvez ajouter vos alias dans ce fichier en utilisant la même syntaxe que celle utilisée pour définir des alias dans le terminal. Par exemple : Une fois que vous avez ajouté vos alias dans le fichier , vous devez exécuter la commande suivante pour les charger dans votre session Bash en cours : Cette commande rechargera le fichier .bashrc qui charge normalement le fichier dans votre session Bash. Notez que le nom et l'emplacement des fichiers de configuration Bash peuvent varier selon le système. Par conséquent, il est possible que vous deviez ajuster les instructions ci-dessus en fonction de votre configuration spécifique. Quelques exemples\nVoici quelques exemples d'alias de commandes qui peuvent être utiles :\npour : comme expliqué précédemment, cela affichera le contenu d'un répertoire en mode long, avec les permissions et les détails de propriétaire affichés.\navec couleur : pour ajouter de la couleur à la sortie de la commande grep pour améliorer la lisibilité, vous pouvez utiliser l'alias suivant :\n: si vous créez souvent des répertoires imbriqués, vous pouvez utiliser l'option -p pour créer des répertoires parents si nécessaire. Vous pouvez également créer un alias nommé mkdirp pour simplifier l'opération.\navec tri inversé : si vous utilisez souvent la commande ps pour afficher les processus en cours d'exécution sur votre système, vous pouvez ajouter un alias nommé pss pour trier les résultats par ordre décroissant d'utilisation de la mémoire.\ntrié par taille : si vous voulez afficher les dossiers par taille décroissante, vous pouvez ajouter un alias nommé dus pour trier la sortie de la commande du par ordre décroissant de taille.\navec confirmation : pour ajouter une confirmation avant de copier des fichiers, vous pouvez créer un alias nommé cp qui inclut l'option -i pour demander une confirmation avant d'écraser les fichiers existants.\navec confirmation : de même, pour ajouter une confirmation avant de supprimer des fichiers, vous pouvez créer un alias nommé rm qui inclut l'option -i pour demander une confirmation avant de supprimer chaque fichier.\navec couleur : si vous utilisez Git pour gérer des projets de développement de logiciels, vous pouvez ajouter de la couleur à la sortie de la commande git pour améliorer la lisibilité.\navec retour rapide : pour revenir rapidement au répertoire parent, vous pouvez créer un alias nommé .. qui exécute la commande cd .. pour revenir au répertoire parent.\navec unités de mémoire lisibles : si vous utilisez souvent la commande free pour surveiller l'utilisation de la mémoire, vous pouvez ajouter l'option -h pour afficher les tailles de mémoire dans des unités lisibles pour l'homme (comme \"1.23 GiB\" au lieu de \"1289311232\").\navec numéros de ligne : pour afficher les numéros de ligne dans la sortie de la commande grep, vous pouvez ajouter l'option -n à l'alias grep.\navec tri inversé : pour afficher les fichiers et répertoires triés par ordre inverse de date de modification, vous pouvez créer un alias nommé lsr.\navec compression gzip : pour créer une archive tar compressée avec gzip, vous pouvez créer un alias nommé targz.\navec taille et espace libre en unités lisibles : pour afficher l'espace disque disponible sur les partitions de votre système dans des unités lisibles pour l'homme, vous pouvez créer un alias nommé dfh. Ces exemples montrent comment vous pouvez personnaliser vos alias de commandes pour automatiser des tâches courantes, faciliter la navigation dans les répertoires et améliorer la lisibilité de la sortie de la commande."},"score":1,"snippet":"…ssion Bash en cours : Cette commande rechargera le fichier .<mark>bashrc</mark> qui charge normalement le fichier dans votre session Bash. Notez que le nom et l'emplacement des fichiers de configuration Bash peuvent varier selon le …","tier":2},{"article":{"uuid":"b160387e-22ab-424e-8270-c92ffe595264","slug":"tmpfs","title":"128 · tmpfs","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-16 14:33:53","created_at":"2023-02-16 14:33:53","updated_at":"2023-02-16 14:33:53","plain":"Par défaut, Fedora monte le système de fichiers tmpfs sur le point de montage , ce qui signifie que tous les fichiers temporaires créés dans ce dossier seront stockés en mémoire vive. tmpfs est un système de fichiers temporaire en mémoire vive (RAM) qui permet de stocker des fichiers temporaires pendant que le système est en cours d'exécution. Cela présente certains avantages, notamment des temps d'accès plus rapides aux fichiers temporaires, car la mémoire vive est plus rapide que les disques durs ou les SSD. Cela permet également de réduire l'usure du disque dur ou du SSD, car les fichiers temporaires ne sont pas écrits en permanence sur le disque. Cependant, l'utilisation de tmpfs peut également avoir des inconvénients si votre système est en manque de mémoire vive, car cela peut entraîner une utilisation accrue de la mémoire vive et ralentir les performances de votre système. Si vous avez besoin de plus d'espace pour stocker des fichiers temporaires sur votre système Fedora, vous pouvez modifier le point de montage pour utiliser un système de fichiers différent, tel qu'un disque dur ou un SSD. Pour ce faire, vous devez modifier le fichier et modifier la ligne correspondant à pour monter un autre système de fichiers à la place de tmpfs. sudo systemctl mask tmp.mount\n \nLa commande permet de désactiver complètement le montage du système de fichiers tmpfs. En utilisant cette commande, le système ne montera plus le système de fichiers tmpfs au démarrage, même si la ligne correspondante est toujours présente dans le fichier . Redémarrez votre système pour que les modifications prennent effet. Cela désactivera complètement le montage du système de fichiers tmpfs, ce qui peut avoir un impact sur les performances de votre système si vous utilisez des applications qui ont besoin d'un accès rapide aux fichiers temporaires. Combiner tmpfs et fichier\nPour combiner la mémoire vive et le stockage de fichiers pour le dossier sous Fedora, vous pouvez monter tmpfs sur le dossier . Cela permet de stocker les fichiers temporaires dans la mémoire vive, ce qui peut accélérer l'accès aux fichiers temporaires et réduire l'usure du disque dur ou du SSD. Éditez le fichier : tmpfs /tmp tmpfs defaults,size=1G 0 0 Cette ligne monte tmpfs sur le dossier \"/tmp\" avec une taille de 1 Go. Vous pouvez ajuster la taille en fonction de vos besoins. Ajoutez une autre ligne pour monter un système de fichiers de disque dur sur un point de montage de votre choix, comme . La ligne devrait ressembler à quelque chose comme ceci : /dev/sda1 /var/tmp ext4 defaults 0 2 Cette ligne monte le système de fichiers de disque dur sur le point de montage en utilisant le système de fichiers \"ext4\". Montez tmpfs sur le dossier et le système de fichiers de disque dur en utilisant la commande suivante : sudo mount -a Cette commande va monter tmpfs sur le dossier et le système de fichiers de disque dur sur le point de montage \"/var/tmp\" en utilisant les paramètres définis dans le fichier . Après avoir effectué ces étapes, les fichiers temporaires seront stockés en mémoire vive dans le dossier jusqu'à ce que l'espace alloué soit rempli, puis les fichiers supplémentaires seront stockés sur le système de fichiers de disque dur monté sur le point de montage . En utilisant cette méthode, vous pouvez bénéficier des avantages de la mémoire vive pour stocker des fichiers temporaires, tout en évitant les inconvénients d'un manque d'espace de stockage. Le système est conçu pour rechercher le point de montage en premier lorsqu'il recherche un emplacement pour stocker des fichiers temporaires. Si le dossier est plein, le système tentera alors de stocker les fichiers temporaires dans le dossier . Si ce dernier est également plein, le système affichera un message d'erreur indiquant qu'il n'y a plus d'espace disponible pour stocker des fichiers temporaires. Toutefois, si vous souhaitez configurer le système pour utiliser le dossier comme emplacement principal pour stocker des fichiers temporaires, vous pouvez modifier la variable d'environnement pour qu'elle pointe vers le dossier . Pour ce faire, vous pouvez ajouter la ligne suivante à votre fichier \".bashrc\" : export TMPDIR=/var/tmp"},"score":1,"snippet":"…re, vous pouvez ajouter la ligne suivante à votre fichier ".<mark>bashrc</mark>" : export TMPDIR=/var/tmp","tier":2},{"article":{"uuid":"4cf880e6-e4e0-42dd-aae2-675837850b83","slug":"compromission-de-jdownloader-6-7-mai-2026-analyse-indicateurs-et-procedure-de-detection","title":"JDownloader : quand le CMS devient la faille","category":"informatique","author":"cedric@abonnel.fr","cover":"cover.webp","published":true,"published_at":"2026-05-12 17:09","created_at":"2026-05-12 17:10:36","updated_at":"2026-05-12 17:21:01","plain":"À propos de l'incident de sécurité affectant le site officiel jdownloader.org les 6 et 7 mai 2026.\r\n\r\nJDownloader expliqué simplement\r\n\r\nJDownloader est un gestionnaire de téléchargements écrit en Java, distribué gratuitement par l'éditeur allemand AppWork GmbH depuis plus de quinze ans. Il sert essentiellement à automatiser la récupération de fichiers depuis des hébergeurs (Mega, Uptobox, Rapidgator…), des plateformes vidéo et des services de liens premium. Côté utilisateur, c'est l'outil qu'on lance pour récupérer une série de fichiers en une opération, plutôt que cliquer sur cent liens un par un. L'application est multiplateforme — Windows, Linux, macOS — et tourne sur quelques millions de postes dans le monde.\r\n\r\nLe projet est distribué de plusieurs façons : un JAR principal (le binaire Java pur), des installateurs natifs par OS depuis le site officiel, et des paquets passant par des canaux distribués comme Flatpak, Snap ou Winget. C'est cette diversité de canaux qui va jouer un rôle central dans ce qui suit.\r\n\r\nL'incident : ce qui s'est passé\r\n\r\nEntre le 6 mai 2026 à 00 h 01 UTC et le 7 mai 2026 à 17 h 06 UTC, le site officiel a distribué des installateurs piégés à la place des binaires légitimes. La fenêtre n'a duré qu'environ 48 heures, et seuls deux liens ont été affectés. Mais pendant cette fenêtre, tout utilisateur qui passait par le bon parcours téléchargeait un cheval de Troie au lieu d'un gestionnaire de téléchargements.\r\n\r\nLe scénario reconstitué par l'équipe d'AppWork et les chercheurs en sécurité (BleepingComputer, Thomas Klemenc, équipe Rescana) se déroule en quatre temps.\r\n\r\n1. Compromission du CMS du site. Les attaquants ont exploité une vulnérabilité non corrigée dans le système de gestion de contenu de , qui permettait de modifier les listes de contrôle d'accès et le contenu publié sans authentification. Point crucial : ils n'ont pas eu accès au serveur sous-jacent, ni au système de fichiers, ni à l'infrastructure de build. Juste au contenu web — et ça a suffi.\r\n\r\n2. Réécriture de deux liens. Plutôt que de tenter de modifier les binaires originaux (qui étaient hors de leur portée), les attaquants ont fait beaucoup plus simple : ils ont changé l'URL cible de deux liens publics sur la page de téléchargement. Le lien « Download Alternative Installer » pour Windows et le script shell pour Linux pointaient désormais vers des fichiers malveillants hébergés sur une infrastructure tierce. Le HTML autour, lui, restait identique. Visuellement, rien ne distinguait la page propre de la page piégée.\r\n\r\n3. Charges utiles différenciées par plateforme. Sur Windows, l'installateur piégé agit comme un loader qui déploie un RAT (Remote Access Trojan) écrit en Python, fortement obfusqué, communiquant avec deux serveurs de commande et contrôle ( et ). Le RAT est modulaire : il reçoit du code Python depuis le C2 et l'exécute, ce qui donne aux attaquants une porte ouverte indéfiniment extensible. Sur Linux, le script shell modifié télécharge une archive depuis , déguisée en fichier SVG, dont il extrait deux binaires ELF — et . Le second est installé en SUID-root dans , le premier est copié dans , et la persistance est assurée par un script déposé dans . Le malware se lance ensuite déguisé en , un nom de processus qui existe légitimement sur la plupart des distributions.\r\n\r\n4. Détection par la communauté. L'alerte n'est pas venue d'un système de surveillance, mais d'un utilisateur Reddit (PrinceOfNightSky) qui a remarqué que Microsoft Defender bloquait son installateur fraîchement téléchargé. La signature numérique indiquait « Zipline LLC » au lieu de « AppWork GmbH ». L'équipe AppWork a confirmé, mis le site hors ligne pour investigation dans les heures qui ont suivi, puis publié un rapport d'incident détaillé. Le site est revenu en ligne dans la nuit du 8 au 9 mai avec des liens vérifiés.\r\n\r\nPourquoi c'est systémique\r\n\r\nÀ première vue, c'est un incident isolé : une faille CMS, une équipe qui patche, le service revient. Vu de loin, ça ressemble à un mauvais quart d'heure. Mais en prenant un peu de recul, le schéma est troublant.\r\n\r\nCPUID, début avril 2026. Le site officiel de l'éditeur de CPU-Z est compromis, des installateurs piégés sont distribués pendant plusieurs jours.\r\n\r\nDAEMON Tools, début mai 2026. Même schéma : compromission du site officiel, substitution d'installateurs, plusieurs versions infectées (12.5.0.2421 à 12.5.0.2434) distribuées avant détection.\r\n\r\nJDownloader, 6–7 mai 2026. Toujours le même schéma.\r\n\r\nTrois compromissions d'éditeurs logiciels en cinq semaines, exactement sur le même schéma : pas d'intrusion dans l'infrastructure de build, pas de modification du code source, pas de vol de certificat de signature de l'éditeur. À chaque fois, le maillon faible est le CMS qui sert la page de téléchargement. Ce qu'on attaque, ce n'est pas le logiciel ; c'est le panneau publicitaire qui pointe vers le logiciel.\r\n\r\nCette mécanique est intéressante parce qu'elle déjoue à peu près toutes les défenses « modernes » de la chaîne d'approvisionnement.\r\n\r\nLa signature de code ne protège pas. Le binaire légitime de JDownloader est toujours signé proprement par AppWork GmbH. Mais le binaire malveillant servi à sa place est signé, lui aussi — par un autre éditeur (Zipline LLC, The Water Team), avec des certificats vraisemblablement volés ou achetés au marché noir. La signature certifie que le fichier vient bien de celui qui l'a signé ; elle ne certifie pas que c'est le bon fichier.\r\n\r\nLe HTTPS ne protège pas. La page de téléchargement est servie en HTTPS valide, depuis le bon domaine, avec le bon certificat. Le navigateur n'a aucune raison de tiquer.\r\n\r\nLes mises à jour in-app sont, elles, protégées. AppWork le souligne : chaque mise à jour livrée par le mécanisme intégré de JDownloader est signée RSA et vérifiée cryptographiquement, indépendamment du site web. Ce canal n'a pas été touché. C'est tout le paradoxe : les utilisateurs qui mettaient à jour JDownloader depuis l'application elle-même n'ont rien risqué ; ceux qui sont allés sur le site officiel pour le télécharger « proprement » sont les seuls exposés.\r\n\r\nLes paquets distribués sont protégés. Flatpak, Snap, Winget, le JAR principal — tout ce qui passe par une chaîne d'approvisionnement où l'intégrité est vérifiée par checksum hors site est resté propre. AppWork le résume sans détour : « Winget/Flatpak/Snap infra is outside of our reach — files downloaded by those are hosted on other infra and secured by sha256 checksums that are unchanged. »\r\n\r\nAutrement dit, plus le canal est court et naïf, plus il est vulnérable. Le téléchargement direct depuis un site web est le canal le plus naïf qui soit : on fait confiance au CMS, point. Tout l'effort de sécurisation de l'écosystème logiciel — signatures, builds reproductibles, SBOMs, attestations de provenance — porte sur la chaîne de production et la chaîne de distribution centralisée. Le maillon « page HTML qui dit clique ici », lui, est resté tel qu'il était en 2005.\r\n\r\nComment vérifier si on est touché\r\n\r\nLa fenêtre est étroite, donc le filtrage est simple. Trois questions, dans l'ordre :\r\n\r\n1. L'installateur a-t-il été récupéré entre le 6 mai 2026 (00 h 01 UTC) et le 7 mai 2026 (17 h 06 UTC) ?\r\n2. S'agit-il du lien « Download Alternative Installer » Windows ou du script shell Linux depuis ?\r\n3. Le fichier a-t-il été exécuté ?\r\n\r\nTrois oui → traiter la machine comme compromise. N'importe quel non dans la liste → aucun risque lié à cet incident. Une installation pré-existante mise à jour automatiquement, un paquet Flatpak/Snap/Winget, le JAR, la version macOS : rien à craindre.\r\n\r\nSous Windows\r\n\r\nLe contrôle de référence, c'est la signature numérique. Clic droit sur l'installateur → Propriétés → onglet Signatures numériques. La valeur attendue est . Toute autre signature (notamment Zipline LLC ou The Water Team), ou l'absence de signature, désigne un fichier malveillant.\r\n\r\nEn PowerShell :\r\n\r\n\r\n\r\nSi n'est pas ou si le certificat ne contient pas , ne pas exécuter.\r\n\r\nSous Linux\r\n\r\nTrois artefacts sont à chercher en post-exécution :\r\n\r\n\r\n\r\nL'apparition de l'un de ces trois éléments suffit à confirmer l'infection. Pour aller plus loin, un coup d'œil au trafic sortant vers les trois domaines C2 (, , ) dans les logs DNS ou via permet de confirmer l'activité du malware.\r\n\r\nSi le script installateur traîne encore quelque part, sa signature est sans ambiguïté : taille de 7 934 496 octets, SHA-256 commençant par .\r\n\r\nEn cas de compromission confirmée\r\n\r\nLa position officielle d'AppWork est sans nuance : réinstallation complète du système. Un RAT modulaire avec persistance SUID-root et exécution arbitraire de code Python depuis un C2 n'est pas quelque chose qu'on retire avec un antivirus. Il faut considérer que tout secret qui a transité sur la machine est compromis — mots de passe saisis au clavier, clés SSH, jetons API, cookies de session, configurations cloud — et les faire tous tourner après réinstallation, depuis une autre machine saine.\r\n\r\nCe que ça change pour qui s'auto-héberge\r\n\r\nL'incident JDownloader est un exemple éclairant pour qui exploite ses propres services exposés sur Internet — un Forgejo, un reverse proxy, un site personnel. La leçon n'est pas vraiment côté utilisateur (la procédure de détection plus haut suffit), elle est côté opérateur.\r\n\r\nLe CMS de JDownloader n'a probablement pas été ciblé pour ses qualités intrinsèques. C'est un dommage collatéral d'un schéma plus large : tout site qui distribue un binaire avec un nombre significatif d'utilisateurs devient une cible rentable, et le CMS public est souvent la pièce la moins surveillée du dispositif. On sécurise le serveur Git, le pipeline de build, la signature des paquets — et on laisse tourner un CMS qui n'a pas été patché depuis huit mois parce qu'il « ne sert qu'à afficher la page d'accueil ».\r\n\r\nQuelques principes opérationnels qui en découlent.\r\n\r\nSéparer le canal de publication du canal de vérification. AppWork a eu raison sur un point essentiel : leurs mises à jour in-app passent par une infrastructure indépendante du site web, avec signature RSA vérifiée côté client. Quand on auto-héberge, ça se traduit par : ne jamais utiliser le même serveur pour distribuer un binaire et publier son empreinte. Le checksum doit vivre ailleurs — dans un dépôt Git séparé, sur un domaine différent, idéalement sur une infrastructure qu'on n'administre pas soi-même.\r\n\r\nSurveiller la dérive du contenu publié. Une simple vérification quotidienne du hash des pages publiques (un cron qui calcule le SHA-256 des URL critiques et alerte en cas de changement non planifié) aurait détecté la compromission de JDownloader en moins d'une heure. C'est le genre de surveillance qu'aucune solution commerciale ne propose nativement, et qui s'écrit en quinze lignes de bash.\r\n\r\nPatcher le CMS avec la même rigueur que l'OS. L'automatisation des mises à jour applicatives reste sous-investie, surtout pour les outils « périphériques » (CMS, wiki, formulaire de contact). Une mise à jour automatique de niveau correctif n'est pas plus risquée qu'une mise à jour du noyau, et elle évite ce type de scénario.\r\n\r\nAuditer les ACL régulièrement. La faille exploitée ici permettait de modifier les ACL sans authentification. C'est l'équivalent CMS d'un répertoire dans un coin du système. Un audit périodique des permissions sur les pages publiques fait partie du minimum syndical pour un service exposé.\r\n\r\nEn résumé\r\n\r\nJDownloader n'a pas été cassé. Son code source est intact, son infrastructure de build est intacte, ses paquets officiels distribués via Flatpak ou Snap sont intacts, ses mises à jour internes sont intactes. Ce qui a été cassé, c'est le panneau qui dit où aller chercher le binaire.\r\n\r\nC'est une mécanique élégante du point de vue de l'attaquant, et inquiétante du point de vue de l'opérateur. Elle illustre quelque chose que l'incident NPM avait déjà mis en lumière dans un autre registre : la chaîne d'approvisionnement logicielle n'est pas une chaîne, c'est un réseau, et les points faibles ne sont jamais là où on les attend. On peut investir massivement dans la sécurité du code, du build et de la signature ; si la page web qui sert le lien reste un Wordpress non patché derrière un nom de domaine prestigieux, tout cet investissement passe à côté.\r\n\r\nLe rôle de l'opérateur en 2026, ce n'est plus de protéger le code. C'est de protéger chaque maillon qui sert à dire au monde où trouver le code — et de partir du principe que ce maillon-là sera le prochain à céder.\r\n\r\nLiens & sources\r\n\r\nJDownloader site hacked to replace installers with Python RAT malware | BleepingComputer\r\n\r\nRapport d'incident officiel | jdownloader.org\r\n\r\nJDownloader Website Supply Chain Attack | Rescana\r\n\r\nLe site officiel de JDownloader compromis | IT-Connect"},"score":0.75,"snippet":"À propos de l'incident de sécurité affectant le site officiel jdownloader.org les 6 et 7 mai 2026.\r\n\r\nJDownloader expliqué simplement\r\n\r\nJDownloader est un gestionnaire de téléchargements écrit en Java, distribué gratuit…","tier":2},{"article":{"uuid":"104a8694-4268-4e0a-99c7-e7ecfd47af1e","slug":"auto-heberger-son-serveur-mail-en-2026","title":"Auto-héberger son serveur mail en 2026","category":"informatique","author":"cedric@abonnel.fr","cover":"cover.svg","published":true,"published_at":"2026-05-12 08:35","created_at":"2026-05-12 08:38:14","updated_at":"2026-05-12 08:40:06","plain":"Survivre aux règles de Gmail, Outlook et consorts\r\nContexte — Cet article de Clubic (lien) rappelle une vérité technique : SMTP date de 1982, n'a aucune sécurité native, et toutes les \"rustines\" (SPF, DKIM, DMARC, MTA-STS, DANE) ont été conçues par Yahoo, Cisco, Microsoft, Google. Depuis février 2024 (Google) et mai 2025 (Microsoft), tout expéditeur dépassant 5000 mails/jour vers Gmail/Outlook doit configurer SPF + DKIM + DMARC, maintenir un taux de spam < 0,1 %, et fournir un lien de désinscription en un clic.\r\nMais même en dessous de 5000/jour, ces règles s'appliquent en pratique : sans elles, ton mail finit en spam ou est rejeté. Ce dossier décrit comment monter son propre serveur mail tout en passant à travers ces filtres.\r\n--\r\n\r\nSommaire\r\n\r\n1. Avant de commencer : est-ce vraiment une bonne idée ?\r\n2. Prérequis techniques\r\n3. Architecture cible\r\n4. Choix du fournisseur et de l'IP\r\n5. Configuration DNS complète\r\n6. Installation du stack mail\r\n7. SPF, DKIM, DMARC : les rustines obligatoires\r\n8. MTA-STS, TLS-RPT, DANE : aller plus loin\r\n9. PTR (reverse DNS) et HELO\r\n10. Warmup d'IP : la phase la plus délicate\r\n11. Postmaster Tools, SNDS, FBL\r\n12. Liste de désinscription en un clic (RFC 8058)\r\n13. Anti-spam entrant et hygiène\r\n14. Monitoring, logs, alertes\r\n15. Que faire quand Gmail rejette quand même ?\r\n16. Checklist finale avant mise en prod\r\n17. Annexes : commandes utiles\r\n--\r\n\r\n1. Avant de commencer : est-ce vraiment une bonne idée ?\r\n\r\nL'auto-hébergement mail est techniquement possible, mais c'est probablement le service le plus pénible à maintenir en 2026. Avant de te lancer, lis ça :\r\n\r\nCe qui marche bien en auto-hébergé :\r\nRecevoir du mail (presque tout le monde te livre).\r\nEnvoyer vers d'autres serveurs auto-hébergés ou pros bien configurés.\r\nGarder le contrôle sur tes données, tes alias, tes domaines.\r\n\r\nCe qui est dur :\r\nEnvoyer vers Gmail / Outlook / Yahoo / iCloud sans atterrir en spam.\r\nSortir d'une blacklist une fois dedans.\r\nMaintenir un score de réputation IP correct sur la durée.\r\nSurvivre à un changement unilatéral des règles côté gros acteurs (cf. février 2024 et mai 2025).\r\n\r\nStratégie réaliste recommandée :\r\nRéception entrante : auto-hébergée à 100 %. Aucun risque, full contrôle.\r\nEnvoi sortant : deux options, selon ton volume et ton tolérance au risque.\r\nOption A — Pure auto-hébergée : tu envoies directement depuis ton serveur. Faisable, mais demande un warmup, une IP propre, et un suivi continu.\r\nOption B — Smart host sortant : tu envoies via un relais réputé (un autre de tes serveurs avec une IP qui a déjà sa réputation, ou un service type Mailjet/Sendgrid/SMTP2GO en bas volume gratuit). Tes mails sortent depuis l'IP du relais, qui a déjà sa réputation faite. C'est un compromis : tu perds une partie de la souveraineté technique, mais tu gagnes énormément en délivrabilité.\r\n\r\nLe reste du dossier suit l'option A — tout en t'expliquant comment basculer en B si nécessaire.\r\n--\r\n\r\n2. Prérequis techniques\r\nÉlément | Détail |\r\n---|---|\r\nDomaine | À toi, registrar peu importe, mais avec DNSSEC activable (cf. §8 pour DANE). |\r\nServeur | VPS ou dédié, 2 vCPU / 4 Go RAM minimum, Debian 12+ ou Ubuntu 24.04 LTS. |\r\nIP fixe v4 | Indispensable. IP \"résidentielle\" ou IP de datacenter récemment recyclée = exclues. |\r\nIP fixe v6 | Recommandée, mais désactivable si l'IPv6 du fournisseur est blacklistée. |\r\nPTR / reverse DNS | Modifiable par toi. Si l'hébergeur ne te le permet pas, change d'hébergeur. |\r\nPorts | 25, 465, 587, 993, 4190 ouverts sortants ET entrants. Le port 25 sortant est bloqué chez beaucoup d'hébergeurs grand public (OVH résidentiel, Free, etc.) : vérifie avant. |\r\nTLS | Certificat valide (Let's Encrypt suffit). |\r\n\r\nCompétences attendues : Linux en ligne de commande, DNS (champs A/AAAA/MX/TXT/SRV/CAA/TLSA), notion de TLS, lecture de logs et .\r\n--\r\n\r\n3. Architecture cible\r\n\r\nUn stack standard, éprouvé, en logiciels libres :\r\n\r\n\r\n\r\nComposants :\r\nPostfix : MTA. Reçoit, route, envoie le SMTP.\r\nDovecot : serveur IMAP/POP3, livraison locale (LMTP), authentification SASL pour Postfix, gestion Sieve (filtres).\r\nRspamd : antispam moderne, fait aussi la vérification SPF/DKIM/DMARC entrante, le greylisting, et — option recommandée — la signature DKIM sortante (en remplacement d'OpenDKIM).\r\nLet's Encrypt (certbot) : TLS.\r\n(Optionnel) Roundcube ou SnappyMail : webmail.\r\n\r\nAlternative tout-en-un : Mailcow ou Mailu, basés sur Docker, qui empaquètent tout ça avec une interface admin. Si tu préfères ne pas tout configurer à la main, c'est légitime — la majorité des règles DNS et de délivrabilité de ce dossier restent identiques.\r\n--\r\n\r\n4. Choix du fournisseur et de l'IP\r\n\r\nLe choix de l'hébergeur conditionne la moitié de ta délivrabilité. Avant de prendre un VPS :\r\n\r\n1. Le port 25 sortant est-il ouvert ? Beaucoup d'hébergeurs le bloquent par défaut pour limiter le spam (Hetzner l'ouvre sur demande, OVH l'ouvre selon le produit, Scaleway l'ouvre selon le compte). Pose la question au support avant de payer.\r\n2. Le PTR est-il configurable ? Si non, change.\r\n3. L'IP a-t-elle été utilisée par un spammeur ? Avant d'acheter le VPS, demande l'IP qu'on te donnera. Vérifie sur :\r\nmxtoolbox.com/blacklists.aspx\r\nmultirbl.valli.org\r\ntalosintelligence.com (Cisco)\r\nsenderscore.org\r\n \r\n Si l'IP est listée sur Spamhaus, Barracuda, SORBS, SpamCop, demande à l'hébergeur de te l'échanger ou prends un autre VPS. Une fois listée, tu vas y passer des semaines.\r\n4. Réputation du subnet (). Même si ton IP est propre, si le est pourri (beaucoup de spammeurs voisins), Gmail va te traiter avec méfiance. Vérifie sur senderscore.org en saisissant ton IP — le score du subnet apparaît.\r\n\r\nHébergeurs réputés corrects pour le mail : Hetzner, OVH (gamme dédiée, pas SoYouStart), Scaleway, Infomaniak (en VPS), Netcup. À éviter pour de l'envoi : DigitalOcean (subnets souvent grillés), Linode/Akamai (idem), AWS EC2 (le port 25 est limité par défaut, et la rate-limit est costaude).\r\n--\r\n\r\n5. Configuration DNS complète\r\n\r\nPour un domaine avec un serveur mail sur à l'IP (et en v6) :\r\n\r\n\r\n\r\nDétails dans les sections dédiées plus bas.\r\n\r\nÀ ne pas oublier : l'enregistrement PTR (reverse DNS) se configure chez ton hébergeur, pas dans ta zone DNS. Il doit pointer . C'est traité au §9.\r\n--\r\n\r\n6. Installation du stack mail\r\n\r\nSur Debian 12. Ce qui suit est volontairement condensé — pour une configuration ligne par ligne, suis le tutoriel de référence de Workaround.org qui est l'étalon depuis 20 ans.\r\n\r\n\r\n\r\nPostfix : configuration minimale-mais-saine\r\n\r\n\r\n\r\nDovecot, Rspamd\r\n\r\nCes composants demandent leurs propres fichiers de configuration. Renvoi explicite vers les tutos qui font autorité :\r\nWorkaround.org / ISPmail : https://workaround.org/ispmail/ — référence francophone et anglophone, mise à jour à chaque version Debian.\r\nRspamd quickstart : https://www.rspamd.com/doc/tutorials/quickstart.html\r\nDovecot wiki : https://doc.dovecot.org/\r\n\r\nSi tu veux gagner du temps, Mailcow () est aujourd'hui la solution clé-en-main la plus fiable.\r\n--\r\n\r\n7. SPF, DKIM, DMARC : les rustines obligatoires\r\n\r\nSans ces trois enregistrements correctement configurés, Gmail et Outlook rejetteront ou marqueront en spam la majorité de tes messages — peu importe ton volume.\r\n\r\nSPF (Sender Policy Framework)\r\n\r\nDéclare qui a le droit d'envoyer du mail pour ton domaine.\r\n: autorise les serveurs listés dans le MX du domaine.\r\n: rejet strict de tout le reste. Indispensable pour la réputation. Ne jamais utiliser (softfail) en prod : Gmail aujourd'hui considère comme un signal faible.\r\n\r\nSi tu envoies aussi via un relais externe (smart host) : ajoute son , ex. .\r\n\r\nLimite : un enregistrement SPF doit tenir en 10 lookups DNS maximum. Au-delà, il est invalide. Vérifie avec https://www.kitterman.com/spf/validate.html.\r\n\r\nDKIM (DomainKeys Identified Mail)\r\n\r\nSigne chaque mail sortant avec une clé privée. Le destinataire vérifie la signature via la clé publique publiée en DNS.\r\n\r\nGénération de la clé (Rspamd, sélecteur , clé 2048 bits) :\r\n\r\n\r\n\r\nLe fichier contient l'enregistrement DNS à publier :\r\n\r\n\r\n\r\nConfiguration Rspamd () :\r\n\r\n\r\n\r\nRecharge : .\r\n\r\nVérification : envoie un mail à check-auth@verifier.port25.com, tu reçois un rapport complet SPF/DKIM/DMARC en retour. Ou utilise https://www.mail-tester.com/ (note sur 10).\r\n\r\nDMARC (Domain-based Message Authentication, Reporting and Conformance)\r\n\r\nDit aux serveurs distants quoi faire en cas d'échec SPF/DKIM, et te renvoie des rapports sur ce qui passe et ce qui rate.\r\n: surveillance seule, à utiliser pendant 2-4 semaines en démarrage pour collecter les rapports sans pénaliser.\r\n: mise en spam des mails non authentifiés. Cible normale.\r\n: rejet pur. À atteindre en cible finale, après avoir vérifié 4 semaines de rapports propres.\r\n: adresse pour les rapports agrégés (quotidiens).\r\n: rapports forensiques (par message). Optionnel.\r\n: alignement strict — le domaine de signature DKIM et le domaine SPF doivent exactement correspondre au domaine .\r\n\r\nLecture des rapports DMARC : ils arrivent en XML, illisibles. Utilise un parseur :\r\nPostmark DMARC Monitoring (gratuit, agrège les rapports dans une UI).\r\nparsedmarc (auto-hébergeable, envoie dans Elasticsearch/Splunk/Grafana).\r\n--\r\n\r\n8. MTA-STS, TLS-RPT, DANE : aller plus loin\r\n\r\nCes standards sécurisent le transport entre serveurs (chiffrement TLS forcé). Gmail les regarde, Microsoft aussi. Pas obligatoires, mais ils boostent ta réputation.\r\n\r\nMTA-STS\r\n\r\nForce les serveurs distants à utiliser TLS pour t'envoyer des mails. Trois éléments :\r\n\r\n1. Enregistrement DNS TXT :\r\n\r\n\r\n2. Sous-domaine servant un fichier en HTTPS à :\r\n\r\n\r\n est la cible. En démarrage, mets pendant 1-2 semaines.\r\n\r\n3. Certificat TLS valide sur ce sous-domaine (déjà fait via certbot au §6).\r\n\r\nTLS-RPT\r\n\r\nDemande aux serveurs distants de t'envoyer des rapports en cas d'échec TLS.\r\n\r\n\r\n\r\nDANE (DNS-based Authentication of Named Entities)\r\n\r\nEncore plus solide que MTA-STS, mais nécessite DNSSEC activé sur ton domaine. Si ton registrar ne supporte pas DNSSEC, oublie DANE.\r\n\r\nDANE publie un hash du certificat TLS dans un enregistrement TLSA :\r\n\r\n\r\n\r\nOu plus simplement avec https://www.huque.com/bin/gentlsa :\r\n\r\n\r\n\r\nVérification globale de tout ton setup TLS+DANE : https://internet.nl/mail/ (excellent, recommandé).\r\n--\r\n\r\n9. PTR (reverse DNS) et HELO\r\n\r\nLe PTR est probablement la cause la plus fréquente de rejet par Gmail/Outlook chez les nouveaux auto-hébergés.\r\n\r\nRègle absolue : , et tout doit être un FQDN cohérent.\r\n\r\nConfigure le PTR dans le panneau de ton hébergeur (chez OVH : \"IP\" → \"Reverse DNS\") :\r\n\r\n\r\nVérifie :\r\n\r\n\r\nDans Postfix, et c'est ce qui est annoncé en HELO. Cohérence garantie.\r\n--\r\n\r\n10. Warmup d'IP : la phase la plus délicate\r\n\r\nUne IP neuve = pas de réputation = défiance maximale des gros acteurs. Tu ne peux pas envoyer 1000 mails le jour 1 sans te griller.\r\n\r\nPlan de warmup sur 4 à 6 semaines\r\nSemaine | Volume max/jour vers Gmail+Outlook | Volume max/jour total | Contenu |\r\n---|---|---|---|\r\n1 | 20-50 | 100 | Mails à toi-même, comptes test sur Gmail/Outlook/Yahoo. Réponds-y, marque \"non spam\" si en spam. |\r\n2 | 100 | 300 | Cercle proche qui sait répondre / interagir. |\r\n3 | 300 | 1000 | Élargissement progressif. |\r\n4 | 800 | 3000 | Ouvre aux usages normaux. |\r\n5+ | 2000+ | volume cible | Stable. |\r\n\r\nRègles d'or pendant le warmup :\r\nPas de mailing list, pas de notifs automatiques en masse. Privilégie des mails 1-à-1 conversationnels.\r\nDemande aux destinataires de répondre — un mail avec réponse a 100x le poids d'un mail ouvert silencieusement.\r\nAucun lien raccourci, aucun pixel de tracking, aucune image lourde.\r\nStop net si ton score Senderscore baisse ou si Gmail Postmaster Tools (cf. §11) montre du rouge.\r\n\r\nSi tu as un volume immédiat à envoyer\r\n\r\nBascule en option B (smart host) le temps du warmup, puis rapatrie progressivement en interne en répliquant les volumes ci-dessus.\r\n--\r\n\r\n11. Postmaster Tools, SNDS, FBL\r\n\r\nLes gros acteurs te donnent des dashboards dédiés. Inscris-toi à tous, dès la création du domaine.\r\nService | Acteur | Usage |\r\n---|---|---|\r\nGoogle Postmaster Tools | Gmail | Réputation IP+domaine, taux de spam, authentification, encryption. Indispensable. |\r\nMicrosoft SNDS | Outlook/Hotmail | Smart Network Data Services, qualité de l'IP. |\r\nMicrosoft JMRP | Outlook | Junk Mail Reporting Program, FBL Microsoft. |\r\nYahoo CFL | Yahoo | Complaint Feedback Loop. |\r\nValidity Sender Score | Indépendant | Score sur 100, à surveiller. |\r\n\r\nConfigure les feedback loops (FBL) : quand un destinataire clique \"spam\", tu reçois une notification. Ça te permet de désinscrire l'utilisateur avant qu'il ne dégrade ta réputation.\r\n--\r\n\r\n12. Liste de désinscription en un clic (RFC 8058)\r\n\r\nExigence Google/Microsoft pour les expéditeurs en volume, mais à mettre en place dès le début même en bas volume.\r\n\r\nAjoute deux en-têtes à tous les mails non-strictement-personnels :\r\n\r\n\r\n\r\nL'URL HTTPS doit accepter une requête POST (pas seulement GET) avec dans le corps, et désinscrire immédiatement et silencieusement sans demander de confirmation.\r\n--\r\n\r\n13. Anti-spam entrant et hygiène\r\n\r\nUn serveur mail mal configuré côté entrée devient vite un relais de spam ou une cible. Configuration Rspamd minimale :\r\n\r\n\r\n\r\n\r\n\r\nActive aussi :\r\nVérification SPF/DKIM/DMARC entrante (par défaut activée dans Rspamd).\r\nRBL (Realtime Blackhole Lists) : Spamhaus ZEN, Barracuda. Attention à ne pas multiplier — 2 ou 3 RBL fiables suffisent.\r\nGreylisting : refuse temporairement les premiers contacts, ce qui élimine 80% du spam basique. Ne pas activer sur un domaine à fort volume transactionnel (gêne les notifs).\r\nBayes : laisse Rspamd apprendre via le dossier de Dovecot (signal / ).\r\n\r\nMises à jour : activé, redémarrage planifié, lecture des annonces sécu Postfix/Dovecot.\r\n--\r\n\r\n14. Monitoring, logs, alertes\r\n\r\nSans monitoring, tu découvres les problèmes par les utilisateurs. À mettre en place :\r\nLecture des logs : , , web UI de Rspamd sur .\r\nMétriques : exporter Postfix/Dovecot vers Prometheus + Grafana (, ).\r\nAlertes sur :\r\nFile d'attente Postfix > 50 messages ().\r\nScore Senderscore qui chute.\r\nApparition sur une RBL : surveillance automatisée par https://multirbl.valli.org/ ou via un script qui interroge plusieurs DNSBL en cron.\r\nÉchec TLS-RPT (rapport entrant signalant une connexion non chiffrée).\r\nRapports DMARC parsés régulièrement (cf. §7).\r\n--\r\n\r\n15. Que faire quand Gmail rejette quand même ?\r\n\r\nÇa arrive. Diagnostic dans l'ordre :\r\n\r\n1. Lis le code de rejet SMTP dans . Gmail renvoie des codes très explicites :\r\n→ contenu jugé spammy. Revois le contenu, ajoute du texte conversationnel, retire les liens douteux.\r\n→ tu as dépassé un seuil. Ralentis immédiatement, attends 24-48h, reprends doucement.\r\n→ ton DMARC ne passe pas. Revérifie SPF/DKIM/alignement.\r\n→ tu es sur une RBL. Va sur spamhaus.org/lookup/ pour vérifier et demander la sortie.\r\n2. Va dans Postmaster Tools (§11). Si \"IP reputation\" est rouge ou orange, regarde le contenu et le timing de tes envois récents.\r\n3. Test mail-tester : envoie à une adresse fournie par mail-tester.com, obtiens une note sur 10. Vise 10/10. Toute case manquante doit être corrigée.\r\n4. Sortie de blacklist : la plupart des RBL (Spamhaus, Barracuda) ont un formulaire de retrait. Spamhaus retire en quelques heures si tu corriges la cause. SORBS est plus lent. UCEPROTECT exige souvent de payer — ignore-la, peu de serveurs sérieux la consultent.\r\n5. Si rien ne marche, change d'IP. C'est parfois la seule issue. Demande à ton hébergeur une IP fraîche, refais un warmup.\r\n--\r\n\r\n16. Checklist finale avant mise en prod\r\n\r\nAvant d'envoyer le premier vrai mail :\r\n[ ] Domaine avec DNSSEC activé.\r\n[ ] IP testée sur 5+ blacklists, propre.\r\n[ ] Port 25 sortant ouvert et testé ().\r\n[ ] PTR configuré et cohérent avec le HELO.\r\n[ ] MX, A, AAAA, SPF, DKIM, DMARC publiés et validés via mxtoolbox.com.\r\n[ ] MTA-STS publié (mode au démarrage).\r\n[ ] TLS-RPT publié.\r\n[ ] DANE/TLSA publié (si DNSSEC OK).\r\n[ ] CAA publié.\r\n[ ] Test envoyé à : tout en .\r\n[ ] Test mail-tester.com : 10/10.\r\n[ ] Test internet.nl/mail/ : 100%.\r\n[ ] Inscription Postmaster Tools, SNDS, JMRP, Yahoo CFL.\r\n[ ] DMARC au démarrage, parser de rapports en place.\r\n[ ] List-Unsubscribe + List-Unsubscribe-Post implémentés.\r\n[ ] Plan de warmup affiché et respecté.\r\n[ ] Monitoring file d'attente + RBL en place.\r\n[ ] Backup chiffré des Maildir.\r\n\r\nAu bout de 4 semaines de rapports DMARC propres : passage à . Au bout de 8-12 semaines : .\r\n--\r\n\r\n17. Annexes : commandes utiles\r\n\r\n\r\n\r\nOutils web à mettre en favoris\r\nhttps://www.mail-tester.com/ — score sur 10\r\nhttps://internet.nl/mail/ — audit complet\r\nhttps://mxtoolbox.com/SuperTool.aspx — DNS, blacklists\r\nhttps://dmarcian.com/dmarc-inspector/ — vérif DMARC\r\nhttps://www.kitterman.com/spf/validate.html — vérif SPF\r\nhttps://postmaster.google.com/ — Google Postmaster\r\nhttps://senderscore.org/ — réputation IP\r\n\r\nDocumentation de référence\r\nISPmail / Workaround.org — https://workaround.org/ispmail/ — le tutoriel le plus complet et tenu à jour, par version Debian.\r\nMailcow docs — https://docs.mailcow.email/ — pour la version conteneurisée clé-en-main.\r\nPostfix officiel — https://www.postfix.org/documentation.html\r\nRspamd docs — https://www.rspamd.com/doc/\r\nRFCs essentielles** : 5321 (SMTP moderne), 7208 (SPF), 6376 (DKIM), 7489 (DMARC), 8461 (MTA-STS), 8460 (TLS-RPT), 7672 (DANE-SMTP), 8058 (One-Click Unsubscribe).\r\n--\r\n\r\nL'auto-hébergement mail en 2026 reste possible, mais c'est devenu un sport : les règles changent, les gros acteurs durcissent leurs critères, et l'écosystème pousse vers la centralisation. Si tu réussis le warmup et tiens 6 mois sans incident, tu as gagné — mais ne baisse pas la garde, un changement unilatéral de Google peut survenir à tout moment, comme en février 2024."},"score":0.75,"snippet":"Survivre aux règles de Gmail, Outlook et consorts\r\nContexte — Cet article de Clubic (lien) rappelle une vérité technique : SMTP date de 1982, n'a aucune sécurité native, et toutes les "rustines" (SPF, DKIM, DMARC, MTA-ST…","tier":2},{"article":{"uuid":"093711bf-4e60-4ea8-ba73-928d2d67776c","slug":"certificats-let-s-encrypt-a-6-jours-faut-il-sauter-le-pas","title":"Certificats Let's Encrypt à 6 jours : faut-il sauter le pas ?","category":"actualité","author":"cedric@abonnel.fr","cover":"cover.svg","published":true,"published_at":"2026-05-07 22:46","created_at":"2026-05-12 08:47:27","updated_at":"2026-05-12 08:59:58","plain":"Guide DevOps / WebOps pour comprendre les certificats à durée de vie courte () et décider si vous devez migrer.\r\n--\r\n\r\nTL;DR\r\n\r\nLet's Encrypt propose désormais au grand public des certificats valides 6 jours (profil ), en plus du classique 90 jours. Pour les certificats sur adresse IP, c'est même obligatoire. La question n'est pas \"est-ce que c'est bien ?\" — techniquement oui — mais \"est-ce que mon infra est prête ?\". Si votre renouvellement automatique fonctionne sans accroc depuis 6 mois, foncez. Sinon, fiabilisez d'abord, migrez ensuite.\r\n--\r\n\r\n1. De quoi on parle\r\n\r\nDepuis janvier 2026, Let's Encrypt émet en disponibilité générale deux nouveautés couplées : les certificats pour adresses IP, et les certificats à durée de vie de 6 jours via un nouveau profil ACME nommé . Certbot 4.0 a introduit le flag pour les sélectionner, et Certbot 5.3 a ajouté pour demander un cert sur IP.\r\n\r\nConcrètement, un certificat a une validité de 6 jours au lieu de 90. Tout le reste — chaîne de confiance, algorithmes, format — est identique. Pour le navigateur, c'est un certificat Let's Encrypt standard.\r\n\r\nLes profils disponibles\r\nProfil | Durée | Usage |\r\n---|---|---|\r\n(défaut) | 90 jours | Tout le monde, par défaut |\r\n| 6 jours | Adopters précoces, certs sur IP (obligatoire) |\r\n| 90 jours | Variante optimisée serveur web (sans clientAuth) |\r\n--\r\n\r\n2. Pourquoi Let's Encrypt pousse vers le court\r\n\r\nQuatre raisons techniques, par ordre d'importance.\r\n\r\n2.1 La révocation TLS est cassée — autant l'éviter\r\n\r\nC'est le vrai sujet. Le mécanisme de révocation des certificats (CRL, OCSP) n'a jamais fonctionné correctement à grande échelle :\r\nOCSP soft-fail : si le serveur OCSP est injoignable, la plupart des navigateurs acceptent quand même le certificat. Un attaquant qui contrôle le réseau bloque l'OCSP et le cert révoqué passe.\r\nOCSP stapling mal configuré sur beaucoup de serveurs.\r\nCRLite, OneCRL : couvertures partielles, déploiement client incohérent.\r\nOCSP retiré : Let's Encrypt a arrêté OCSP en 2025, justement parce que ça ne servait quasiment à rien tout en posant des problèmes de vie privée.\r\n\r\nAvec un cert à 6 jours, la révocation devient cosmétique : on attend l'expiration. La fenêtre d'exploitation d'une clé compromise passe de plusieurs semaines (cert 90 jours, OCSP douteux) à quelques jours maximum.\r\n\r\n2.2 Réduire la fenêtre de compromission\r\n\r\nSi votre clé privée fuite (backup mal protégé, faille serveur, employé qui part avec une copie, vulnérabilité type Heartbleed), l'attaquant peut usurper votre site tant que le cert est valide. À 90 jours, c'est trois mois d'exposition dans le pire cas. À 6 jours, c'est une semaine.\r\n\r\nC'est encore plus critique pour les certs sur IP : une IP peut changer de propriétaire (cloud, VPS recyclé, réattribution FAI). Un cert long pour une IP qui ne vous appartient plus, c'est un risque que LE refuse de prendre — d'où l'obligation du profil court pour cet usage.\r\n\r\n2.3 Forcer une automatisation propre\r\n\r\nPersonne ne renouvelle un cert à la main tous les 6 jours. C'est mécaniquement infaisable. Le profil est donc un filtre qualité : si votre renouvellement n'est pas blindé, vous le saurez vite.\r\n\r\nL'effet de bord positif : ça élimine les pannes classiques type \"le cert a expiré parce que le cron était cassé depuis trois mois et personne ne s'en est rendu compte\". À 6 jours, un cron cassé devient visible immédiatement.\r\n\r\n2.4 Agilité cryptographique\r\n\r\nSi une vulnérabilité majeure impose de déprécier un algorithme en urgence (RSA, transition post-quantique, faille découverte sur SHA-256), un parc avec des certs à 6 jours bascule en une semaine. Un parc 90 jours met trois mois. C'est la raison qui motive aussi le CA/Browser Forum à pousser globalement vers des durées plus courtes (45 jours d'ici 2029 dans la baseline).\r\n--\r\n\r\n3. Pourquoi vous pourriez ne pas migrer\r\n\r\nSoyons honnêtes : pour la plupart des infras web classiques, le 90 jours suffit largement. Le 6 jours a des coûts réels.\r\n\r\n3.1 Pression sur le rate limiting\r\n\r\nLet's Encrypt limite à 300 nouveaux certificats par compte par 3 heures et 5 duplicatas de cert par semaine. Avec des certs 90 jours, vous renouvelez 4 fois par an. Avec des 6 jours, c'est 60 fois par an et par cert. Si vous avez 50 services derrière 50 certs distincts, vous explosez votre budget de requêtes ACME.\r\n\r\nMitigation : regrouper les domaines dans des certs SAN (un seul cert pour , , plutôt que trois certs).\r\n\r\n3.2 Dépendance critique au CA et au réseau\r\n\r\nÀ 90 jours, si Let's Encrypt est down 48h, vous ne le remarquez même pas. À 6 jours, une panne de 48h sur LE et votre fenêtre de renouvellement (typiquement à 1/3 de la durée restante, soit 2 jours), et votre cert expire. Vos services tombent.\r\n\r\nConséquences concrètes :\r\nIl faut un monitoring sérieux de l'expiration des certs (Prometheus blackbox exporter, , etc.).\r\nIl faut un fallback : second client ACME, second account, ou cert de secours d'une autre CA.\r\nIl faut absolument que la résolution DNS et le port 80/443 sortants depuis votre serveur soient fiables.\r\n\r\n3.3 Charge sur les systèmes de déploiement\r\n\r\nChaque renouvellement déclenche : appel ACME, validation HTTP-01 ou DNS-01, écriture des fichiers, rechargement du serveur web (Nginx, Apache, HAProxy, etc.). À 60 fois par an au lieu de 4, ça multiplie par 15 le nombre de reloads.\r\n\r\nSur un serveur web basique, un est gratuit. Sur des architectures plus complexes (load balancers stateful, terminations TLS distribuées, certs poussés vers un CDN, configs multi-nœuds avec Ansible/Salt), chaque renouvellement déclenche une cascade. À évaluer.\r\n\r\n3.4 Logs, audit, conformité\r\n\r\nCertains contextes réglementaires demandent une traçabilité des certificats (PCI-DSS, ISO 27001, HDS). Multiplier par 15 le volume d'événements de renouvellement à archiver et auditer, ça représente du stockage et du tooling à adapter.\r\n\r\n3.5 Le cas \"monitoring TLS externe\"\r\n\r\nSi vous avez des outils tiers (uptime monitors, scanners de conformité) qui vérifient l'expiration de vos certs, ils risquent de hurler en permanence : un cert qui montre toujours \"expire dans 6 jours\" déclenche les alertes \"cert expirant bientôt\" sur la plupart des outils mal configurés. Il faut soit ajuster les seuils, soit changer d'outil.\r\n--\r\n\r\n4. Décision : grille de lecture\r\nSituation | Recommandation |\r\n---|---|\r\nServeurs web classiques, renouvellement Certbot qui marche, < 20 certs | Restez en 90 jours. Le bénéfice marginal ne justifie pas le risque. |\r\nVous gérez des certs sur IP | Pas le choix : est obligatoire. |\r\nArchitecture critique avec rotation de clés agressive (banque, santé, infra publique) | Migrez. Le 6 jours est aligné avec vos exigences de sécurité. |\r\nInfra dev/staging interne | Excellent terrain de test. Migrez d'abord ici pour valider votre pipeline. |\r\nVous avez déjà eu une expiration cert non détectée en prod | Ne migrez pas tout de suite. Fiabilisez d'abord le monitoring et le renouvellement, puis migrez. Sinon vous transformez un incident annuel en incident hebdomadaire. |\r\nVous publiez via reverse proxy unique (un seul cert SAN pour plusieurs services) | Bon candidat. Un seul renouvellement à fiabiliser. |\r\nVous avez un parc hétérogène (Apache + Nginx + HAProxy + Traefik...) avec hooks custom | Auditez chaque hook avant de migrer. C'est là que ça casse. |\r\n--\r\n\r\n5. Comment migrer concrètement (Certbot)\r\n\r\n5.1 Pré-requis\r\n\r\nAvant tout :\r\n\r\n1. Certbot 4.0+ pour , 5.3+ pour , 5.4+ pour avec IP.\r\n2. Un renouvellement automatique opérationnel et vérifié (timer systemd ou cron actif, testé avec ).\r\n3. Un monitoring d'expiration des certs en place. Si vous n'en avez pas, installez-le avant de migrer.\r\n4. Un hook de reload du serveur web qui fonctionne ().\r\n\r\n5.2 Test sur le staging Let's Encrypt\r\n\r\n\r\n\r\nVérifier que le cert obtenu a bien une durée de 6 jours :\r\n\r\n\r\n\r\n5.3 Renouvellement plus fréquent\r\n\r\nPar défaut, Certbot renouvelle quand il reste 1/3 de la durée. Pour un cert 6 jours, ça veut dire renouveler à 2 jours restants. Ça laisse peu de marge en cas de panne. Vous pouvez forcer un renouvellement plus tôt :\r\n\r\n\r\n\r\nLe timer Certbot tourne deux fois par jour par défaut, ce qui est suffisant. Pas besoin de l'accélérer.\r\n\r\n5.4 Cas d'un certificat sur IP\r\n\r\n\r\n\r\nNote importante : Certbot ne sait pas encore installer automatiquement les certs IP dans Nginx ou Apache. Il faut éditer la config manuellement pour pointer vers et , et configurer un pour le reload.\r\n\r\n5.5 Plan de bascule recommandé\r\n\r\n1. Semaine 1-2 : un domaine non critique (un sous-domaine de test, un service interne) en . Surveillez les renouvellements.\r\n2. Semaine 3-4 : étendez à la moitié de votre dev/staging.\r\n3. Semaine 5-6 : migration progressive en prod, en commençant par les services les moins critiques.\r\n4. À tout moment : possibilité de retour arrière en supprimant du fichier de config Certbot dans .\r\n--\r\n\r\n6. Pièges à éviter\r\nNe migrez pas tout en même temps. Si votre hook de reload a un bug, vous le découvrez sur un seul service, pas sur 50.\r\nNe désactivez pas le monitoring d'expiration sous prétexte que c'est automatisé. L'automatisation peut casser silencieusement. Un check externe qui hurle à J-2 reste indispensable.\r\nAttention aux secrets stockés dans des configs autres que Certbot. Si vous avez des certs poussés manuellement vers un CDN, un load balancer cloud ou un firewall TLS-inspectant, le passage à 6 jours impose d'automatiser cette propagation aussi.\r\nPas de cert IP pour un service exposé publiquement à long terme. Si l'IP change, le cert devient inutilisable instantanément. Préférez le DNS quand c'est possible.\r\nVérifiez votre client ACME. Tous les clients ACME ne supportent pas encore les profils. acme.sh, Caddy, lego, Traefik : checkez la version. Certbot 4.0 minimum.\r\n--\r\n\r\n7. Verdict\r\n\r\nLe profil est techniquement supérieur au 90 jours sur le plan sécuritaire. Mais il déplace le coût : moins de risques liés aux clés compromises et à la révocation cassée, plus de risques liés à la chaîne de renouvellement.\r\n\r\nLa règle simple : si votre renouvellement automatique est fiable, migrez. Sinon, fiabilisez-le d'abord — la migration n'en sera que la conséquence naturelle.\r\n\r\nPour la majorité des infras web auto-hébergées (typiquement, un Proxmox + reverse proxy + une dizaine de services derrière), le 90 jours reste un excellent compromis. Le devient pertinent quand :\r\nVous avez besoin de certs sur IP (obligatoire).\r\nVous exploitez des services à forte exigence de sécurité (clés très sensibles).\r\nVous voulez tester votre résilience opérationnelle (le 6 jours est un excellent test de fiabilité de votre stack).\r\n\r\nLe reste du temps, gardez le 90 jours, dormez tranquille, et ressortez ce document quand le CA/Browser Forum imposera 45 jours par défaut (vers 2027-2028).\r\n--\r\n\r\nSources\r\nLet's Encrypt — Six-Day and IP Address Certificates Available in Certbot (mars 2026)\r\nLet's Encrypt — 6-day and IP address certs in general availability (janvier 2026)\r\nDocumentation Certbot — Hooks\r\nCA/Browser Forum Baseline Requirements"},"score":0.75,"snippet":"Guide DevOps / WebOps pour comprendre les certificats à durée de vie courte () et décider si vous devez migrer.\r\n--\r\n\r\nTL;DR\r\n\r\nLet's Encrypt propose désormais au grand public des certificats valides 6 jours (profil ), e…","tier":2},{"article":{"uuid":"4f443bcb-b0d4-47f8-837d-61627e6c94f2","slug":"priorites-et-acces-au-reseau-en-4g-et-5g","title":"Pourquoi le réseau mobile ne s'effondre pas le jour où tout le monde téléphone en même temps","category":"télécom","author":"cedric@abonnel.fr","cover":"cover.jpg","published":true,"published_at":"2026-01-06 22:21","created_at":"2026-01-06 22:21:04","updated_at":"2026-05-11 23:40:18","plain":"Un attentat, un séisme, un match du Stade de France, une grande panne d'électricité. Dans ces moments-là, des centaines de milliers de gens dégainent leur téléphone au même instant. Le réseau mobile est dimensionné pour un usage moyen, pas pour un pic massif simultané, et il devrait théoriquement s'effondrer. La plupart du temps, il tient. Pas parfaitement, pas pour tout le monde, mais il tient — et surtout, les appels d'urgence continuent de passer. C'est le résultat d'une série de mécanismes empilés depuis les années 1990, que la 4G a affinés et que la 5G a élargis. Cet article les passe en revue, et termine sur une question qu'on me pose souvent : est-ce que mon forfait à 50 € me donne une place prioritaire dans cette file d'attente ?\r\n\r\nTrois questions, pas une\r\n\r\nQuand une cellule commence à chauffer, l'opérateur doit répondre à trois questions distinctes. Qui a le droit de se connecter ? Une fois connecté, qui passe en premier ? Et quels services doivent absolument continuer à fonctionner, quoi qu'il arrive ?\r\n\r\nLa 2G ne savait répondre qu'à la première. Elle filtrait à l'entrée et basta. La 4G a ajouté la deuxième : une fois admis sur le réseau, votre trafic est traité différemment selon son importance. La 5G ajoute la troisième : elle peut créer des réseaux virtuels parallèles dont certains sont réservés à des usages critiques, totalement isolés des autres.\r\n\r\nLe filtrage à l'entrée\r\n\r\nChaque carte SIM porte un numéro de classe d'accès, hérité du GSM, entre 0 et 15. Les classes 0 à 9 couvrent le grand public — autrement dit nous tous. Les classes 11 à 15 sont réservées : services de secours, autorités publiques, personnel opérateur, usages militaires selon les pays.\r\n\r\nQuand une cellule est surchargée, l'eNodeB (la station de base 4G) diffuse une consigne aux téléphones du secteur : « les classes 0 à 9, vous attendez ». C'est l'Access Class Barring. Concrètement, votre téléphone reçoit ce message et bloque lui-même votre tentative d'appel ou de connexion data, sans même envoyer la demande à la station. C'est élégant parce que ça soulage la station avant même qu'elle ne soit sollicitée. Les classes prioritaires, elles, passent sans encombre.\r\n\r\nUne variante plus dure, l'Extended Access Barring, vise les objets connectés et les usages non urgents. Quand une vraie crise se déclare, l'opérateur peut couper les compteurs intelligents, les alarmes domestiques et autres équipements bavards pour préserver la bande passante humaine.\r\n\r\nEn 5G, ce mécanisme a été refondu sous le nom d'UAC — Unified Access Control, introduit dans la Release 15 du 3GPP. UAC unifie dans un seul cadre ce qui était auparavant éparpillé entre ACB, EAB et d'autres dispositifs spécifiques. Il repose sur deux notions complémentaires. Les Access Identities identifient qui vous êtes : utilisateur lambda, abonné à un service prioritaire type MPS ou MCS, personnel d'urgence, agent opérateur. Les Access Categories identifient ce que vous essayez de faire : appel d'urgence, connexion data normale, SMS, mise à jour de localisation. La combinaison des deux détermine si votre demande passe ou pas. La granularité gagnée par rapport à la 4G est réelle : on peut bloquer un type d'action précis pour un type d'utilisateur précis, par exemple « les abonnés grand public ne peuvent plus initier de nouveaux appels data, mais les SMS et les appels voix continuent ».\r\n\r\nLa priorité une fois connecté\r\n\r\nLà où la 4G a vraiment innové, c'est en introduisant le QCI — QoS Class Identifier. Chaque flux de données qui transite sur le réseau se voit attribuer un numéro entre 1 et 9 (avec quelques valeurs supplémentaires pour des cas spéciaux) qui dit à l'infrastructure comment le traiter.\r\nUsage | QCI | Traitement |\r\n---|---|---|\r\nAppel VoLTE (voix sur LTE) | 1 | Latence minimale, débit garanti |\r\nVisioconférence | 2 | Débit garanti |\r\nSignalisation réseau | 5 | Très haute priorité |\r\nStreaming vidéo | 6 ou 8 | Best effort prioritaire |\r\nWeb et internet général | 9 | Best effort standard |\r\n\r\nQuand la cellule est encombrée, le routeur sait quoi sacrifier en premier. YouTube va ralentir, les pages web vont mettre du temps à charger, mais l'appel téléphonique de votre voisin reste audible. C'est un compromis assumé : on dégrade volontairement les usages secondaires pour préserver les usages critiques.\r\n\r\nLa 5G a transposé ce mécanisme sous le nom de 5QI (5G QoS Identifier) avec davantage de niveaux et une meilleure prise en compte des cas que la 4G gérait mal — notamment les services à très basse latence pour les usines connectées ou la voiture autonome. La voix d'urgence garde son sommet, les données critiques industrielles s'intercalent juste après, le streaming et le web restent en bas de la pile.\r\n\r\nL'isolation par tranches : le network slicing\r\n\r\nC'est l'apport majeur de la 5G en matière de gestion de crise. Au lieu de partager une seule infrastructure entre tous les usages, on peut maintenant la découper logiciellement en tranches — des slices — qui se comportent comme autant de réseaux indépendants, alors qu'ils tournent sur les mêmes antennes et les mêmes câbles.\r\n\r\nUn opérateur peut par exemple maintenir une tranche pour le grand public avec ses millions d'abonnés et son trafic massif, une autre pour les services d'urgence dimensionnée pour rester fluide même quand le reste sature, une troisième pour les objets connectés industriels avec des garanties de latence, et une quatrième pour des opérateurs critiques type SNCF, EDF ou hôpitaux. Chaque tranche a ses propres règles d'admission, ses propres priorités, ses propres garanties de performance. Si la tranche grand public est totalement saturée, celle des secours ne le sait même pas.\r\n\r\nCette isolation est ce qui distingue le plus fondamentalement la 5G des générations précédentes. Avant, tout le monde se battait pour les mêmes ressources, avec juste des priorités différentes pour départager. Maintenant, certaines ressources sont retirées du combat dès le départ.\r\n\r\nRécapitulatif\r\nGénération | Ce qui est contrôlé | Comment |\r\n---|---|---|\r\n2G | L'accès au réseau | Classes d'accès 0-15 |\r\n4G | L'accès + la priorité du trafic | ACB / EAB + QCI |\r\n5G | L'accès + la priorité + l'isolation des services | UAC + 5QI + network slicing |\r\n\r\nTous ces mécanismes restent invisibles tant que tout va bien. Vous ne savez pas qu'ils existent. Vous découvrez leur existence le jour où votre voisin n'arrive plus à charger ses mails alors que les pompiers, eux, continuent de communiquer normalement. Ce jour-là, ce n'est pas de la magie. C'est trente ans d'ingénierie radio qui ont anticipé que ça arriverait.\r\n--\r\n\r\nEt mon forfait premium, alors ?\r\n\r\nQuestion logique à ce stade. Si le réseau sait techniquement prioriser certains flux par rapport à d'autres, qu'est-ce qui empêche un opérateur de faire passer ses abonnés à 50 € devant ceux à 10 € quand les antennes saturent ? La réponse honnête commence par un aveu : techniquement, rien. L'outil existe, il s'appelle Quality of Service (QoS), c'est exactement le mécanisme qu'on vient de décrire. Si demain Orange ou SFR voulaient créer une voie rapide pour leurs abonnés haut de gamme, ils auraient les outils dans la boîte. Pourtant, ils ne le font pas. Pour quatre raisons.\r\n\r\nLa loi européenne l'interdit\r\n\r\nLe règlement (UE) 2015/2120, dit « règlement internet ouvert », oblige les opérateurs à traiter tout le trafic de la même façon, sans discrimination liée à l'expéditeur, au destinataire, au contenu ou à l'application. Il a fêté ses dix ans en novembre 2025, et l'ARCEP a profité de l'anniversaire pour rappeler que c'est l'un des piliers du modèle numérique européen. Les sanctions sont sérieuses : jusqu'à 3 % du chiffre d'affaires de l'opérateur fautif. Un opérateur français qui annoncerait demain « avec notre forfait Premium, vous passez devant les autres » se retrouverait devant l'ARCEP dans la semaine.\r\n\r\nLe règlement laisse quelques portes ouvertes pour les services dits « spécialisés » qui ont besoin d'une qualité garantie — téléchirurgie, voiture connectée. Mais ces exceptions sont étroitement encadrées et ne couvrent absolument pas le confort d'un client haut de gamme qui voudrait charger son Instagram plus vite à 19h.\r\n\r\nAux États-Unis, l'histoire est différente. La FCC a tenté de restaurer la neutralité du net en 2024, mais en janvier 2025 la cour d'appel du sixième circuit a invalidé la décision, jugeant que la FCC n'avait pas l'autorité légale pour reclasser le haut débit comme service public. Avec l'arrivée de Brendan Carr à la tête de la FCC, ouvertement opposé à la neutralité du net, il n'y a aujourd'hui plus de règle fédérale outre-Atlantique. Quelques États (Californie, Washington, New York, Oregon) ont leurs propres lois qui maintiennent le principe, mais à l'échelle du pays, les opérateurs américains pourraient légalement faire ce que leurs homologues européens n'ont pas le droit de faire. Pourtant, ils ne le font pas ouvertement non plus, et la raison renvoie aux trois points suivants.\r\n\r\nC'est commercialement intenable\r\n\r\nImagine la publicité : « Forfait Premium à 50 € — passez devant les pauvres pendant les heures de pointe ». Le slogan ne se vend pas. Les directions marketing savent que dire à la moitié de leurs clients qu'ils sont des citoyens de seconde zone du réseau est le plus court chemin vers une crise de réputation. C'est pour ça qu'on vous vend « plus de Go », « 5G ultra rapide », « roaming inclus dans 110 pays » — des promesses qui sonnent positivement sans jamais dire à personne qu'il est désavantagé.\r\n\r\nL'effet boule de neige serait toxique\r\n\r\nImagine que ça se mette quand même en place. Les riches passent devant. Les antennes restent saturées pour les autres, qui se mettent à payer plus pour échapper à la saturation, ce qui sature encore plus les bas forfaits, ce qui pousse encore plus de gens à monter en gamme. Au bout de cinq ans, on a un réseau à deux vitesses où les forfaits modestes deviennent quasi inutilisables aux heures critiques, et où la connexion mobile correcte devient un service de luxe. Ce n'est plus un service de télécommunications, c'est un système de classes.\r\n\r\nC'est exactement ce que la neutralité du net cherche à empêcher. Pas par idéologie, mais parce qu'on a déjà vu où mène ce genre de spirale dans les pays où elle n'est pas protégée. Certains opérateurs proposent par exemple des forfaits où Facebook et WhatsApp sont gratuits mais où le reste est payant, ce qui revient à dire que le bon internet est celui que l'opérateur a choisi pour vous. Ce n'est plus tout à fait le même service.\r\n\r\nÇa ne résoudrait rien\r\n\r\nQuand un réseau sature, ce n'est pas un problème de répartition entre utilisateurs, c'est un problème de capacité totale. Faire passer Pierre avant Paul ne crée pas un seul bit de bande passante supplémentaire. Ça déplace juste le problème de l'un vers l'autre. La vraie solution, quand une cellule sature trop souvent, c'est d'installer plus d'antennes, de densifier le réseau, de basculer sur une fréquence plus performante ou de passer à la génération suivante. C'est cher, c'est long, ça implique des autorisations administratives et des négociations foncières, mais c'est la seule réponse qui tient la route. Prioriser, c'est rapide, mais ça repousse le mur, ça ne le déplace pas.\r\n\r\nC'est comme si on proposait une voie réservée aux Mercedes sur l'A7 un samedi de chassé-croisé. Techniquement, on peut peindre la ligne au sol et installer les panneaux dans la matinée. Mais cette voie ne réduit pas le bouchon, elle le concentre sur les voies restantes ; elle écorne le principe d'égalité d'accès à l'infrastructure publique ; et elle ne change rien au problème de fond, qui est qu'il y a trop de voitures pour la route disponible. La vraie solution reste la même qu'avant : élargir l'autoroute, ou convaincre une partie des gens de prendre le train.\r\n\r\nLe caveat 5G\r\n\r\nUne nuance honnête pour finir. Le network slicing complique le débat juridique. Un opérateur peut créer des tranches de réseau avec des qualités différenciées en toute légalité quand il s'agit d'usages spécialisés — santé, industrie, transports. La question qui agite régulateurs et juristes depuis plusieurs années est de savoir où finit le service spécialisé légitime et où commence le contournement déguisé de la neutralité du net. L'ARCEP a ouvert ce chantier, et c'est probablement là, plus que dans une revanche commerciale brutale sur les forfaits premium, que se jouera la prochaine bataille.\r\n\r\nMais pour répondre simplement à la question : non, votre forfait à 50 € ne vous donne pas la priorité réseau sur celui de votre voisin à 10 €. Il vous donne plus de data, parfois un meilleur débit théorique, des options en plus. Pas une place dans la file."},"score":0.75,"snippet":"Un attentat, un séisme, un match du Stade de France, une grande panne d'électricité. Dans ces moments-là, des centaines de milliers de gens dégainent leur téléphone au même instant. Le réseau mobile est dimensionné pour …","tier":2},{"article":{"uuid":"0e0b8d1d-3352-4ab7-bc70-7bc1f02ee485","slug":"imagemagick-sur-debian-pourquoi-convert-im6-et-ou-trouver-magick","title":"ImageMagick sur Debian : pourquoi `convert-im6` et où trouver `magick`","category":"linux","author":"cedric@abonnel.fr","cover":"cover.svg","published":true,"published_at":"2025-12-28 15:32","created_at":"2025-12-28 15:32:01","updated_at":"2026-05-12 00:29:00","plain":"Si tu as déjà installé ImageMagick sur un serveur Debian, tu es probablement tombé sur cette étrangeté : la commande historique est là, mais elle s'appelle . Et la commande moderne , présente partout ailleurs, semble manquer à l'appel — sauf si tu es sur Debian 13, où elle est revenue.\r\n\r\nLe sujet est un peu plus subtil qu'il n'y paraît, et beaucoup d'explications qui circulent sur le web sont fausses (notamment celle qui prétend que entrerait en conflit avec un binaire de — c'est un mythe). Voilà ce qui se passe réellement.\r\n\r\nUn peu de contexte sur ImageMagick\r\n\r\nImageMagick, c'est une suite d'outils en ligne de commande pour manipuler des images : conversion de formats, redimensionnement, compression, génération de vignettes, watermarks, lecture de métadonnées… Le genre d'outil qu'on retrouve aussi bien dans un script bash de cinq lignes que dans une chaîne de traitement industrielle ou un pipeline CI.\r\n\r\nHistoriquement, la suite est composée de plusieurs binaires distincts, chacun avec son rôle : pour la conversion, pour lire les métadonnées, pour le traitement par lot, pour combiner des images, pour les planches. C'est l'architecture d'ImageMagick 6, la version qui a régné en maître pendant une bonne quinzaine d'années.\r\n\r\nDepuis 2016, ImageMagick 7 est disponible. Le grand changement, c'est qu'il unifie tout derrière une seule commande : . Les anciennes commandes deviennent des sous-commandes (, , etc.), même si pour la rétrocompatibilité un binaire peut continuer à se comporter comme quand on l'appelle avec une syntaxe d'IM6.\r\n\r\nPourquoi le suffixe sur Debian\r\n\r\nC'est ici que beaucoup d'articles racontent n'importe quoi. La vraie raison n'a rien à voir avec un conflit avec — je l'ai vérifié, aucun paquet système ne fournit de commande . Tu peux le vérifier toi-même : ne renvoie rien qui vienne de util-linux.\r\n\r\nLa vraie raison est plus prosaïque. Pendant des années, Debian a voulu pouvoir packager IM6 et IM7 en parallèle dans la même distribution, pour permettre une transition en douceur. Le souci, c'est que les deux versions fournissent des binaires aux mêmes noms (, , …) avec des comportements légèrement différents. Impossible de les installer côte à côte sans renommer.\r\n\r\nLa solution adoptée par les mainteneurs Debian a été d'ajouter un suffixe explicite au nom de chaque binaire :\r\nles outils d'IM6 deviennent , , etc.\r\nles outils d'IM7 deviennent et compagnie\r\n\r\nLe indique la profondeur quantique du binaire (16 bits par canal, la valeur par défaut), et le / indique la version d'ImageMagick. Les noms classiques (, ) ne sont alors que des symlinks gérés par , qui pointent vers la version active. C'est le même mécanisme que pour , , ou à une époque.\r\n\r\nCe qui change entre Debian 11, 12 et 13\r\n\r\nC'est l'autre point que la plupart des articles ratent : la situation n'est pas la même selon la version de Debian.\r\n\r\nSur Debian 11 (bullseye) et 12 (bookworm), le paquet installe IM6 (version 6.9.11.60). Tu n'as que et ses copains, et n'existe pas dans les dépôts officiels (le paquet existe mais n'est pas le défaut). C'est cette situation que décrivent la plupart des tutoriels qui traînent sur le web.\r\n\r\nSur Debian 13 (trixie), sorti en août 2025, le défaut a basculé sur IM7 (version 7.1.1.43). La commande est disponible, et est désormais un symlink vers . Tu peux le vérifier :\r\n\r\n\r\n\r\nAutrement dit, sur Trixie, si tu écris , tu appelles en réalité IM7 sous un nom d'IM6. Ça fonctionne pour la plupart des usages, mais attention : IM7 est plus strict sur l'ordre des arguments en ligne de commande (), donc certains scripts anciens peuvent grogner.\r\n\r\nCorrespondance entre les deux versions\r\nImageMagick 6 (Debian 11/12) | ImageMagick 7 (Debian 13) |\r\n---------------------------- | ------------------------- |\r\n| |\r\n| |\r\n| |\r\n| |\r\n\r\nPour les cas simples, le comportement est identique. Une commande de redimensionnement classique passe sans modification :\r\n\r\n\r\n\r\nFaut-il s'inquiéter sur un serveur en production ?\r\n\r\nSi tu administres une machine Debian 12 ou plus ancienne, non. IM6 est toujours activement maintenu pour les CVE (les correctifs sont régulièrement backportés dans les paquets stable), et la plupart des scripts existants continueront de fonctionner. Le dans le nom du binaire est juste du marquage, pas une dépréciation.\r\n\r\nSi tu migres vers Debian 13, prévois un peu de temps pour relire tes scripts. Les pièges classiques :\r\nl'ordre des options qui devient plus strict ;\r\nquelques comportements de couleur et d'alpha qui ont changé entre les deux versions, notamment sur les opérations chaînées ;\r\nle fichier qui a déménagé : devient . Si tu avais assoupli les restrictions sur les PDF ou PostScript (un grand classique), il faut reporter la modification.\r\n\r\nPour un projet PHP comme les tiens, l'extension Imagick côté PHP est sensible à cette transition : la version compilée doit correspondre à la version d'IM installée, sinon échoue. Sur Trixie, c'est IM7 qu'il faut lier.\r\n\r\nEn pratique\r\n\r\nSur Debian 11/12, utilise , , etc. C'est la convention locale, pas une version dégradée. Si tu veux malgré tout, tu peux installer le paquet (présent dans les dépôts depuis bookworm) et basculer les alternatives manuellement, mais ce n'est presque jamais nécessaire.\r\n\r\nSur Debian 13, utilise directement. La commande reste disponible par compatibilité, mais elle pointe en réalité vers IM7 — autant utiliser le nom officiel.\r\n\r\nEt dans tous les cas, évite les alias globaux qui réécrivent : ça finit toujours par mordre quelqu'un, soit toi dans six mois, soit le prochain qui reprendra le serveur."},"score":0.75,"snippet":"Si tu as déjà installé ImageMagick sur un serveur Debian, tu es probablement tombé sur cette étrangeté : la commande historique est là, mais elle s'appelle . Et la commande moderne , présente partout ailleurs, semble ma…","tier":2},{"article":{"uuid":"11186836-bbac-4054-82db-a3bfed14a274","slug":"imagemagick-traiter-des-images-en-ligne-de-commande","title":"ImageMagick : traiter des images en ligne de commande","category":"linux","author":"cedric@abonnel.fr","cover":"cover.png","published":true,"published_at":"2025-12-28 14:56","created_at":"2025-12-28 14:56:14","updated_at":"2026-05-12 00:36:01","plain":"1. À quoi ça sert\r\n\r\nImageMagick, c'est l'outil qu'on sort quand on veut manipuler des images sans ouvrir un logiciel graphique. Pas de Photoshop, pas de GIMP, pas de clic-droit \"Redimensionner\" sur cent fichiers à la suite : juste une commande dans un terminal, et le travail est fait.\r\n\r\nC'est une suite d'outils qui sait lire, écrire et transformer plus de 200 formats — du JPEG classique au PDF en passant par le HEIC des iPhones, le WebP de Google ou le bon vieux TIFF des scanners. L'absence d'interface graphique est ici une fonctionnalité, pas un défaut : elle permet de l'utiliser partout où il n'y a pas d'écran, et surtout dans tout ce qui doit tourner tout seul.\r\n\r\nOn le retrouve donc naturellement :\r\nsur des serveurs web qui génèrent des miniatures à la volée,\r\ndans des scripts qui traitent des dossiers entiers d'un coup,\r\ndans des pipelines CI/CD pour préparer des assets,\r\ndans des conteneurs Docker, accessibles uniquement en SSH.\r\n\r\nDepuis la version 7, tout passe par une commande unique : . Les anciennes commandes (, , ...) existent toujours pour la compatibilité, mais elles ne sont plus la norme.\r\n\r\n2. Installation\r\n\r\nSur Debian ou Ubuntu :\r\n\r\n\r\n\r\nOn vérifie ensuite que tout est en place :\r\n\r\n\r\n\r\nLa sortie indique aussi les délégués compilés (libwebp, libheif, libraw, etc.). Si un format précis vous intéresse, c'est ici qu'il faut regarder : ImageMagick ne sait lire un format que si la bibliothèque correspondante est présente au moment de la compilation.\r\n\r\n3. Comment ImageMagick raisonne\r\n\r\nToutes les commandes suivent la même logique :\r\n\r\n\r\n\r\nL'image est chargée en mémoire, puis chaque option s'applique dans l'ordre où elle est écrite, comme une chaîne de traitement. Ce point est important : déplacer une option dans la ligne peut changer le résultat final.\r\n\r\nExemple :\r\n\r\n\r\n\r\nIci, l'image est lue, redimensionnée à 800×600, puis compressée à 85% de qualité, puis écrite sur le disque. Si on inversait et , le résultat serait identique dans ce cas précis, mais avec des opérations qui modifient les pixels (flou, conversion d'espace colorimétrique, recadrage), l'ordre devient critique.\r\n\r\n4. Convertir d'un format à un autre\r\n\r\nLe cas le plus simple : changer l'extension du fichier de sortie suffit.\r\n\r\n\r\n\r\nImageMagick détecte le format cible à partir de l'extension et fait la conversion. C'est aussi simple que ça pour 90% des cas.\r\n\r\nQuand on veut être plus précis — par exemple forcer une profondeur de couleur particulière — on l'indique explicitement :\r\n\r\n\r\n\r\nUtile quand on récupère des images en 16 bits par canal qu'on veut ramener à du 8 bits standard, soit pour gagner de la place, soit pour garantir la compatibilité avec un logiciel récalcitrant.\r\n\r\n5. Redimensionner\r\n\r\nLa méthode brutale\r\n\r\n\r\n\r\nCette commande redimensionne à 800×600 en respectant les proportions par défaut, contrairement à ce qu'on pourrait croire. Si l'image source est en 4:3, elle rentrera pile dedans ; si elle est en 16:9, ImageMagick choisira la dimension la plus contraignante et l'autre sera plus petite que demandé.\r\n\r\nPour forcer exactement ces dimensions quitte à déformer l'image, il faut ajouter un point d'exclamation :\r\n\r\n\r\n\r\nNe rétrécir que les grandes images\r\n\r\nC'est probablement le cas le plus utile au quotidien : on a un dossier d'images, on veut s'assurer qu'aucune ne dépasse 1600 pixels, mais on ne veut pas agrandir les petites (ce qui dégraderait leur qualité).\r\n\r\n\r\n\r\nLe signifie « uniquement si l'image est plus grande ». Les guillemets sont nécessaires car est interprété par le shell comme une redirection. On peut aussi échapper le caractère avec .\r\n\r\nEn pourcentage\r\n\r\n\r\n\r\nPratique quand on veut diviser la taille par deux sans calculer les dimensions exactes.\r\n\r\n6. Qualité et poids du fichier\r\n\r\nPour les JPEG, le paramètre règle le compromis entre fidélité visuelle et poids du fichier :\r\n\r\n\r\n\r\nQuelques repères en pratique :\r\n100 : qualité maximale, fichier énorme, différence imperceptible avec 95.\r\n85 : la valeur par défaut de la plupart des appareils photo, et un excellent compromis pour le web.\r\n75 : encore très acceptable, gain de place notable.\r\nEn dessous de 70 : les artefacts deviennent visibles, surtout sur les aplats de couleur.\r\n\r\nSupprimer les métadonnées\r\n\r\nLes fichiers issus d'appareils photo ou de smartphones embarquent beaucoup d'informations : modèle de l'appareil, date, parfois coordonnées GPS, miniature intégrée, profil colorimétrique... Tout ça peut peser plusieurs dizaines de kilo-octets, et surtout poser des problèmes de confidentialité.\r\n\r\n\r\n\r\nL'option fait le ménage. À utiliser systématiquement avant de publier des photos sur le web, et indispensable dès qu'on parle de RGPD ou d'anonymisation. Attention en revanche pour la photographie professionnelle où certaines métadonnées (droits d'auteur, profil ICC) peuvent être nécessaires.\r\n\r\n7. Recadrer et adapter à un cadre\r\n\r\nRecadrage classique\r\n\r\n\r\n\r\nLa syntaxe se lit comme une fenêtre qu'on découpe dans l'image : largeur × hauteur, décalée de 100 pixels depuis la gauche et 50 pixels depuis le haut.\r\n\r\nRemplir un cadre exact, sans déformation\r\n\r\nC'est le besoin typique des miniatures de site : on veut toutes les vignettes en 800×600 pile, peu importe le format des photos d'origine.\r\n\r\n\r\n\r\nTrois étapes enchaînées :\r\n\r\n1. redimensionne pour que l'image remplisse le cadre (le inverse la logique habituelle : on prend la plus grande dimension comme contrainte, pas la plus petite).\r\n2. indique qu'on veut centrer le découpage.\r\n3. coupe ce qui dépasse pour obtenir exactement la taille voulue.\r\n\r\nLe résultat : aucune déformation, aucune bande noire, juste un éventuel rognage sur les bords les plus longs.\r\n\r\n8. Traiter un dossier entier\r\n\r\nUne boucle Bash suffit pour convertir tous les PNG d'un dossier en JPEG :\r\n\r\n\r\n\r\nLa syntaxe retire l'extension du nom, on y ajoute . Simple et fiable.\r\n\r\nPour modifier les fichiers sur place, ImageMagick fournit :\r\n\r\n\r\n\r\nCette commande écrase chaque fichier par sa version redimensionnée. C'est rapide et pratique, mais ça veut aussi dire qu'il n'y a pas de retour en arrière : si la commande est mal écrite, le dossier original est perdu. Règle absolue : travailler sur une copie, ou s'assurer d'avoir une sauvegarde.\r\n\r\n9. Texte et filigranes\r\n\r\nApposer une mention textuelle\r\n\r\n\r\n\r\n ancre le texte dans un coin de l'image (les neuf positions classiques : , , , , ...), et ajoute un décalage par rapport à ce point d'ancrage. Ici, éloigne le texte de 10 pixels du coin inférieur droit.\r\n\r\nSuperposer un logo ou un watermark image\r\n\r\n\r\n\r\nL'image principale est lue en premier, le filigrane en second, puis les fusionne. Si le watermark a un canal alpha (transparence), il est respecté.\r\n\r\n10. Couleurs et tons\r\n\r\nPassage en noir et blanc :\r\n\r\n\r\n\r\nRéglage de la luminosité et du contraste (valeurs en pourcentage, positives ou négatives) :\r\n\r\n\r\n\r\nIci, +10% de luminosité et +5% de contraste. Pour assombrir, on utilise des valeurs négatives : .\r\n\r\n11. Inspecter une image\r\n\r\nPour obtenir les informations essentielles — format, dimensions, profondeur :\r\n\r\n\r\n\r\nPour tout savoir, y compris les métadonnées EXIF, le profil colorimétrique, l'histogramme :\r\n\r\n\r\n\r\nLa sortie verbeuse peut faire plusieurs pages, mais c'est inestimable pour diagnostiquer un problème ou comprendre d'où vient un fichier.\r\n\r\n12. Formats modernes\r\n\r\nLe WebP de Google offre une compression nettement meilleure que le JPEG à qualité équivalente, et il est aujourd'hui supporté par tous les navigateurs courants :\r\n\r\n\r\n\r\nL'AVIF va encore plus loin en termes de compression, au prix d'un encodage plus lent :\r\n\r\n\r\n\r\nSi la commande échoue avec une erreur de délégué, c'est que votre installation d'ImageMagick a été compilée sans le support AVIF — il faudra installer ou recompiler.\r\n\r\n13. Quelques règles à se fixer\r\nToujours travailler sur une copie quand on découvre une nouvelle commande. en particulier ne pardonne pas.\r\nStripper les métadonnées avant toute publication web.\r\nPour de très gros volumes (plusieurs milliers d'images, ou des images très lourdes), regarder du côté de : c'est plus rapide et beaucoup moins gourmand en mémoire qu'ImageMagick. Pour tout le reste, ImageMagick est largement suffisant.\r\nAutomatiser dès qu'on répète : si la même commande revient deux fois, elle mérite un script.\r\nLire les messages d'erreur : ImageMagick est verbeux, et la plupart des problèmes (délégué manquant, permissions, format non reconnu) sont explicitement nommés dans la sortie.\r\n\r\n14. Là où on le croise vraiment\r\n\r\nEn pratique, ImageMagick finit presque toujours dans les mêmes situations :\r\npréparation d'images pour un site web (redimensionnement + compression + strip),\r\ngénération de miniatures à la volée côté serveur,\r\nnormalisation d'un catalogue photo hétérogène (formats, tailles, profils),\r\nconversion massive d'archives anciennes vers des formats modernes,\r\nnettoyage des métadonnées avant diffusion publique.\r\n--\r\n\r\nImageMagick fait partie de ces outils qu'on apprivoise lentement mais qu'on garde longtemps. Au début, on copie des commandes trouvées en ligne sans tout comprendre. Puis on commence à reconnaître les options, à les combiner, à écrire ses propres scripts. Et un jour, on se rend compte qu'on a remplacé un logiciel entier par trois lignes de Bash — et qu'on n'a jamais été aussi efficace pour traiter des images."},"score":0.75,"snippet":"1. À quoi ça sert\r\n\r\nImageMagick, c'est l'outil qu'on sort quand on veut manipuler des images sans ouvrir un logiciel graphique. Pas de Photoshop, pas de GIMP, pas de clic-droit "Redimensionner" sur cent fichiers à la su…","tier":2},{"article":{"uuid":"46f2f084-8dd8-497a-aef0-4728367ce753","slug":"convertir-des-images-en-ligne-de-commande-sous-linux","title":"Convertir des images en ligne de commande sous Linux","category":"linux","author":"cedric@abonnel.fr","cover":"cover.svg","published":true,"published_at":"2025-12-28 14:54","created_at":"2025-12-28 14:54:41","updated_at":"2026-05-12 00:51:02","plain":"La manipulation d'images depuis le terminal est une de ces choses qu'on apprend une fois et qu'on utilise pour toujours. Pas besoin de GIMP, pas besoin d'ouvrir quoi que ce soit : une commande, et c'est réglé.\r\n\r\nVoici les outils que j'utilise concrètement, et dans quels cas.\r\n--\r\n\r\nImageMagick, le plus polyvalent\r\n\r\nC'est l'outil de base. Il gère à peu près tous les formats qui existent, et la syntaxe est toujours la même. L'installation est classique :\r\n\r\n\r\n\r\nConvertir un format :\r\n\r\n\r\n\r\nRedimensionner sans toucher au ratio, en posant une limite maximale :\r\n\r\n\r\n\r\nLe est important — sans lui, ImageMagick agrandit aussi les petites images. Avec, il ne fait que réduire.\r\n\r\nPréparer une image pour le web, en supprimant les métadonnées EXIF et en compressant :\r\n\r\n\r\n\r\nPour traiter un répertoire entier, fait le même boulot mais modifie les fichiers en place — toujours travailler sur une copie ou rediriger vers un autre dossier :\r\n--\r\n\r\nlibvips, pour les traitements lourds\r\n\r\nQuand il y a des centaines de photos ou des images très lourdes (scans, RAW exportés), libvips est nettement plus rapide et utilise beaucoup moins de mémoire qu'ImageMagick. Il charge les images en flux au lieu de tout mettre en RAM.\r\n\r\n\r\n\r\n\r\n\r\nLa syntaxe est moins intuitive qu'ImageMagick mais les gains sur des gros volumes sont sensibles.\r\n--\r\n\r\nFFmpeg, pas que pour la vidéo\r\n\r\nFFmpeg est surtout connu pour la vidéo, mais il convertit les images aussi — utile quand il est déjà installé et qu'on veut éviter une dépendance supplémentaire, ou pour extraire des frames depuis une vidéo :\r\n\r\n\r\n\r\nRedimensionner en conservant le ratio :\r\n--\r\n\r\nLes métadonnées EXIF avec exiftool\r\n\r\nLes appareils photo embarquent beaucoup d'informations dans les fichiers : coordonnées GPS, modèle d'appareil, réglages. Avant de publier une photo, il vaut mieux vérifier ce qu'elle contient :\r\n\r\n\r\n\r\nImageMagick peut aussi supprimer les EXIF avec , mais exiftool offre plus de contrôle quand on veut garder certaines balises et supprimer d'autres.\r\n--\r\n\r\nFichiers RAW\r\n\r\nPour les CR2, NEF, ARW et autres formats propriétaires d'appareils photo, est la solution la plus propre :\r\n\r\n\r\n\r\nIl applique les mêmes algorithmes de développement que l'interface graphique de darktable. est une alternative plus ancienne et plus bas niveau :\r\n--\r\n\r\nHEIC, le format Apple\r\n\r\nLes iPhone exportent leurs photos en HEIC depuis iOS 11. Le format est compact, mais Linux ne le gère pas nativement — il faut convertir avant de pouvoir travailler dessus.\r\n\r\nLe paquet fournit , l'outil le plus direct :\r\n\r\n\r\n\r\nImageMagick peut aussi s'en charger si est installé sur le système :\r\n\r\n\r\n\r\nPour vérifier que le support HEIC est bien disponible :\r\n\r\n\r\n\r\nConversion d'un dossier entier :\r\n--\r\n\r\nEn pratique\r\n\r\nConversion d'un dossier de PNG en WebP :\r\n\r\n\r\n\r\nPipeline complet pour publication web — redimensionnement, suppression EXIF, compression :\r\n\r\n\r\n\r\nTraitement récursif sur un arbre de dossiers :\r\n--\r\n\r\nRécap rapide\r\nCas d'usage | Outil |\r\n---|---|\r\nUsage général | ImageMagick |\r\nGros volumes / performance | libvips |\r\nDéjà dans le pipeline vidéo | FFmpeg |\r\nFichiers RAW | darktable-cli |\r\nHEIC (iPhone) | heif-convert ou ImageMagick |\r\nLecture / nettoyage EXIF | exiftool |\r\n\r\nPour 90 % des besoins courants, ImageMagick suffit. libvips vaut le coup d'être appris si on traite régulièrement des lots importants."},"score":0.75,"snippet":"La manipulation d'images depuis le terminal est une de ces choses qu'on apprend une fois et qu'on utilise pour toujours. Pas besoin de GIMP, pas besoin d'ouvrir quoi que ce soit : une commande, et c'est réglé.\r\n\r\nVoici l…","tier":2},{"article":{"uuid":"5a0cced3-40d0-46bf-8501-b533f3c2608e","slug":"reparer-une-instance-uptime-kuma-installee-via-le-script-proxmox","title":"Réparer une instance Uptime Kuma installée via le script Proxmox","category":"informatique","author":"cedric@abonnel.fr","cover":"cover.svg","published":true,"published_at":"2025-11-26 08:33","created_at":"2025-11-26 08:33:49","updated_at":"2026-05-12 09:16:00","plain":"Méthode basée sur l'installation via le script communautaire :\r\ncommunity-scripts.github.io/ProxmoxVE/scripts?id=uptimekuma\r\n\r\nSi tu utilises Uptime Kuma pour monitorer ton infra, tu finiras tôt ou tard par tomber sur un de ces grands classiques : le service qui refuse de démarrer après une mise à jour, des erreurs SQLite louches dans , ou pire — l'interface qui tourne mais ne remonte plus aucun heartbeat. Dans 90 % des cas, c'est la base SQLite qui a pris cher, souvent à cause d'un arrêt brutal du conteneur LXC ou d'une migration qui s'est mal passée.\r\n\r\nAvant de paniquer et de tout réinstaller, il y a une série d'étapes à dérouler. Je les mets ici dans l'ordre, parce que l'ordre compte : on commence toujours par le moins destructif.\r\n\r\nPourquoi SQLite et pas un vrai SGBD ?\r\n\r\nPetite parenthèse pour les juniors qui se demanderaient. Uptime Kuma embarque SQLite parce que c'est une appli pensée pour être facile à déployer : pas de serveur de base à installer à côté, pas de credentials à gérer, juste un fichier sur le disque. C'est génial pour démarrer, mais ça a un défaut majeur — SQLite n'aime pas du tout être coupé en plein milieu d'une écriture. Si ton LXC tombe pendant que Kuma écrit un heartbeat, tu peux te retrouver avec un fichier corrompu. D'où l'importance de toujours arrêter proprement le service avant de toucher au fichier.\r\n\r\n1. Arrêter le service proprement\r\n\r\n\r\n\r\nC'est la première chose à faire, toujours. Tant que le service tourne, il a un verrou sur et il continue d'y écrire. Tu peux ouvrir le fichier en lecture avec malgré ce verrou, mais dès que tu veux faire un ou un , tu vas soit avoir une erreur , soit — pire — corrompre encore plus la base si tu forces.\r\n\r\nVérifie que c'est bien arrêté avant de continuer :\r\n\r\n\r\n\r\nTu dois voir . Pas , pas , pas avec un process encore en l'air.\r\n\r\n2. Aller dans le dossier de l'app\r\n\r\nLe script communautaire installe Kuma dans :\r\n\r\n\r\n\r\nDans ce dossier, ce qui nous intéresse c'est le sous-dossier . C'est là que vit tout ce qui compte : le fichier (la base), les uploads, et quelques fichiers de config. Le reste (, , etc.) c'est le code de l'application — tu peux le casser, un ou une réinstallation le remettra en place. Mais , si tu le perds, tu perds toute ta config de monitoring.\r\n\r\n3. Sauvegarder avant de toucher à quoi que ce soit\r\n\r\nRègle d'or de l'ops : on ne touche jamais à une base de données sans avoir une copie au chaud. Jamais.\r\n\r\n\r\n\r\nLe te génère un suffixe du genre . Comme ça si tu fais plusieurs interventions dans la même semaine, tu sais laquelle date de quand, et tu ne risques pas d'écraser une sauvegarde par une autre.\r\n\r\nCette copie embarque :\r\nla base elle-même\r\nles fichiers WAL (, ) si SQLite est en mode Write-Ahead Logging — c'est important de les prendre avec, sinon ta sauvegarde est incomplète\r\nles uploads et certificats si tu en as\r\n\r\nSi tu sautes cette étape et que tu te plantes à l'étape 5 ou 6, tu n'auras aucun moyen de revenir en arrière. Sérieusement, fais-le.\r\n\r\n4. Vérifier l'intégrité de la base\r\n\r\n\r\n\r\n, c'est la commande de diagnostic native de SQLite. Elle parcourt toute la base, vérifie que les index pointent bien sur les bonnes lignes, que les pages ne sont pas corrompues, que les contraintes sont respectées. Deux issues possibles :\r\n* : la base est saine sur le plan structurel. Si Kuma ne démarre toujours pas, le problème vient probablement d'une migration coincée (voir étape 5) ou du code de l'app, pas du fichier.\r\nUne liste d'erreurs : il y a de la corruption. Selon ce qui est touché, on passera à l'étape 5 ou 6.\r\n\r\nPour les juniors qui découvrent SQLite : , c'est le mot-clé que SQLite utilise pour les commandes qui ne sont pas du SQL standard — c'est spécifique à SQLite, tu ne le verras pas dans PostgreSQL ou MySQL.\r\n\r\n5. Supprimer un paramètre de migration corrompu\r\n\r\nSur certaines versions de Kuma (notamment autour des montées de version qui touchent à l'agrégation des heartbeats), il y a un bug connu : l'entrée dans la table se retrouve dans un état incohérent, et le service refuse de démarrer parce qu'il pense être au milieu d'une migration qui n'avance plus.\r\n\r\nLa fix :\r\n\r\n\r\n\r\nCe qu'on fait, c'est qu'on dit à Kuma : \"oublie où tu en étais, repars de zéro sur ce point\". Au redémarrage, il va recréer la clé proprement et relancer la migration depuis le début. C'est non destructif pour tes données de monitoring — on ne touche qu'à un drapeau d'état interne.\r\n\r\nSi ce n'est pas ton problème (clé absente ou suppression sans effet), passe à la suite.\r\n\r\n6. Solution radicale : vider la table \r\n\r\nSi la corruption est concentrée sur l'historique de monitoring (et c'est souvent le cas, parce que c'est la table où Kuma écrit le plus souvent — un INSERT toutes les 20-60 secondes par sonde, ça finit par faire du volume), tu peux la vider :\r\n\r\n\r\n\r\nÀ lire attentivement : cette commande supprime tout l'historique des sondes. Tu perds les graphes de uptime, les SLA calculés sur les 30/90/365 derniers jours, tout. En revanche :\r\ntes sondes sont conservées (table )\r\ntes utilisateurs aussi (table )\r\ntes notifications également (table )\r\nta config générale est intacte (table )\r\n\r\nC'est à utiliser uniquement quand :\r\npointe vers des problèmes sur ou ses index\r\nKuma refuse de démarrer et l'étape 5 n'a rien donné\r\nou plus simplement, ta base a tellement grossi que Kuma rame et que tu acceptes de perdre l'historique pour repartir propre\r\n\r\nTant qu'à faire, profites-en pour faire un derrière, qui va vraiment libérer l'espace disque (un seul ne récupère pas la place sur le disque, il marque juste les pages comme libres pour réutilisation) :\r\n\r\n\r\n\r\n7. Redémarrer le service\r\n\r\n\r\n\r\nEt vérifie qu'il a bien démarré :\r\n\r\n\r\n\r\nTu dois voir . Si tu vois ou si le service redémarre en boucle, ne le laisse pas dans cet état — passe directement à l'étape 8 pour comprendre pourquoi.\r\n\r\n8. Lire les logs\r\n\r\n\r\n\r\nLe cible le service, le fait du (équivalent de ) — les nouvelles lignes s'affichent en temps réel. Laisse tourner pendant deux ou trois minutes, le temps que Kuma rejoue ses migrations, recharge ses sondes, et envoie les premiers heartbeats.\r\n\r\nCe qu'il faut chercher dans les logs :\r\nerreurs SQLite : , , — ça veut dire que t'as encore un problème de fichier, voire de permissions\r\nmigrations bloquées : des messages du genre qui ne sont jamais suivis d'un \r\npermissions : , — typiquement après une intervention faite en root sur des fichiers qui doivent appartenir à un autre utilisateur. Vérifie avec que les fichiers sont bien possédés par l'user qui fait tourner le service\r\nmodules Node manquants : — ça arrive après une mise à jour qui s'est mal passée. La fix, c'est généralement de relancer dans \r\nport déjà utilisé : — tu as un autre process qui squatte le port 3001 (ou celui que tu as configuré)\r\n\r\nPour sortir du , c'est .\r\n\r\nEt après ?\r\n\r\nUne fois que Kuma tourne propre, prends cinq minutes pour mettre en place ce qui t'aurait évité d'arriver ici :\r\n\r\n1. Une sauvegarde régulière de . Un simple cron qui fait du dossier vers un autre serveur, ça suffit largement pour un Kuma perso. Pense à arrêter le service avant le tar, ou utilise qui fait un snapshot cohérent sans devoir couper Kuma.\r\n2. Un monitoring du monitoring. Oui, c'est méta. Mais si Kuma tombe, c'est lui qui t'aurait alerté de la chute de tes autres services — donc personne ne te prévient. Un check externe (UptimeRobot gratuit, healthchecks.io, ou un autre Kuma sur une autre machine) qui ping ton instance, c'est cinq minutes à mettre en place.\r\n3. Garder ta sauvegarde au moins une semaine** avant de la supprimer. Au cas où un effet de bord apparaîtrait quelques jours plus tard.\r\n\r\nEt voilà. Avec ces huit étapes, tu couvres 95 % des cas de Kuma cassé. Pour les 5 % restants — typiquement quand le LXC lui-même a un souci de filesystem — c'est une autre histoire, et il faudra sortir l'artillerie côté Proxmox."},"score":0.75,"snippet":"Méthode basée sur l'installation via le script communautaire :\r\ncommunity-scripts.github.io/ProxmoxVE/scripts?id=uptimekuma\r\n\r\nSi tu utilises Uptime Kuma pour monitorer ton infra, tu finiras tôt ou tard par tomber sur un…","tier":2},{"article":{"uuid":"5982deaf-f3de-4f65-9270-9849132e64f6","slug":"nos-donnees-a-l-ere-de-l-ia-l-affaire-linkedin-et-la-colere-des-utilisateurs","title":"Nos données à l’ère de l’IA : l’affaire LinkedIn et la colère des utilisateurs","category":"actualité","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2025-11-05 07:10:37","created_at":"2025-11-05 07:10:37","updated_at":"2025-11-05 07:10:37","plain":"Un matin d’automne, Léa ouvre son compte LinkedIn comme elle le fait chaque jour. Consultante indépendante, elle y partage des réflexions sur le travail à distance, y échange avec des collègues et y recrute parfois des partenaires. Rien de bien extraordinaire. Mais ce jour-là, un post attire son attention : « LinkedIn utilise vos données pour entraîner ses IA ».\r\n\r\nAu début, elle croit à une rumeur. Encore une de ces tempêtes numériques qui s’évanouissent aussi vite qu’elles éclatent. Puis elle lit plus attentivement : le réseau professionnel de Microsoft admet effectivement utiliser certaines données publiques — les profils, les publications, les interactions visibles — pour nourrir ses modèles d’intelligence artificielle.\r\n\r\nDe la mise en relation à la collecte invisible\r\n\r\nDepuis sa création, LinkedIn se présente comme une vitrine professionnelle : un espace où chacun peut exposer son parcours, ses compétences, ses ambitions. En échange, la plateforme promet visibilité, opportunités et réseau. Mais derrière cette promesse, un autre marché s’est peu à peu installé : celui des données.\r\n\r\nChaque clic, chaque mise à jour de poste, chaque mot-clé devient une pièce d’un immense puzzle comportemental. Ce puzzle, jusqu’ici utilisé pour cibler des offres d’emploi ou des publicités, se retrouve désormais au cœur de quelque chose de beaucoup plus vaste : l’entraînement des intelligences artificielles.\r\n\r\nMicrosoft, maison mère de LinkedIn, investit des milliards dans l’IA. Or, pour qu’une IA apprenne, il lui faut une matière première : les mots, les textes, les interactions humaines. Et LinkedIn en regorge.\r\n\r\nLa ligne floue entre le “public” et le “privé”\r\n\r\nTechniquement, LinkedIn affirme ne collecter que les informations publiques. Mais qu’est-ce que cela signifie vraiment ? Léa n’a jamais donné son accord explicite pour que ses publications servent à entraîner des algorithmes de génération de texte. Elle les a partagées pour échanger avec des pairs, pas pour devenir une donnée parmi des millions d’autres.\r\n\r\nC’est là que le malaise grandit.\r\nLes utilisateurs découvrent que la frontière entre ce qu’ils publient volontairement et ce qui peut être réutilisé s’estompe. Dans les conditions d’utilisation, tout est mentionné — quelque part, en petits caractères. Mais rares sont ceux qui lisent jusqu’à la dernière ligne.\r\n\r\nLe choc du consentement absent\r\n\r\nLes réactions ne se font pas attendre : des posts indignés envahissent la plateforme même.\r\n« On n’est pas des cobayes ! » écrit un utilisateur.\r\n« Nos profils sont devenus des datasets », dénonce une autre.\r\n\r\nCe qui choque, ce n’est pas seulement l’usage, mais la manière dont il a été introduit : sans consultation, sans transparence, presque à bas bruit.\r\n\r\nLes défenseurs du projet rétorquent que l’IA ne “lit” pas nos données comme un humain. Qu’elle analyse des tendances, pas des personnes. Que tout est anonymisé.\r\nMais cette défense sonne creux pour beaucoup : anonymiser ne supprime pas la question éthique. À partir du moment où nos mots, nos idées, nos réflexions alimentent un système dont nous ne maîtrisons ni les usages ni les bénéfices, une part de notre autonomie numérique s’érode.\r\n\r\nUne affaire de confiance\r\n\r\nLinkedIn n’est pas la première plateforme à faire face à cette controverse. Reddit, X (ex-Twitter) et même Meta ont adopté des politiques similaires, justifiant ces pratiques par la nécessité d’améliorer leurs modèles d’IA.\r\nMais LinkedIn occupe une place particulière : il s’agit du réseau professionnel par excellence. Ici, les utilisateurs partagent des informations sensibles — leur parcours, leur entreprise, leurs compétences — souvent avec leur vrai nom.\r\n\r\nLa relation de confiance entre l’utilisateur et la plateforme est donc essentielle. Et c’est justement cette confiance qui vacille.\r\n\r\nLéa et le dilemme numérique\r\n\r\nQuelques jours plus tard, Léa se rend dans les paramètres de confidentialité.\r\nElle découvre, cachée dans une section sobrement intitulée « Utilisation des données pour l’IA », une mention : « Nous pouvons utiliser vos informations publiques pour améliorer nos produits et services, y compris les technologies d’intelligence artificielle. »\r\n\r\nIl existe bien une option d’exclusion, mais difficile à trouver. Léa la décoche, sans savoir si cela changera vraiment quelque chose.\r\nElle ressent un mélange de soulagement et de résignation.\r\n\r\nCar au fond, la question dépasse LinkedIn. Elle touche à une réalité plus vaste : dans l’ère de l’intelligence artificielle, nos données sont devenues la nouvelle énergie, le carburant invisible qui alimente des machines toujours plus puissantes.\r\n\r\nVers une prise de conscience collective\r\n\r\nL’affaire LinkedIn agit comme un électrochoc. Elle révèle à quel point le consentement numérique reste un concept fragile, souvent illusoire. Elle invite chacun à repenser ce qu’il partage en ligne, mais aussi à exiger des plateformes une vraie transparence.\r\n\r\nLes régulateurs européens, via le RGPD, commencent à se saisir du sujet. Certains experts appellent à créer un « droit à l’exclusion des IA », un cadre légal obligeant les entreprises à obtenir un consentement explicite avant toute utilisation des données à des fins d’entraînement algorithmique.\r\n\r\nMais pour l’instant, la balle reste surtout dans le camp des utilisateurs — ceux qui, comme Léa, naviguent entre pragmatisme et inquiétude, entre le besoin de visibilité et la peur d’être instrumentalisés.\r\n--\r\n\r\n Entre progrès et perte de contrôle\r\n\r\nL’IA promet des avancées spectaculaires. Elle transforme nos métiers, nos outils, nos manières de communiquer. Mais elle pose une question fondamentale : qui possède les données qui la nourrissent ?\r\n\r\nLinkedIn n’est peut-être qu’un exemple parmi d’autres, mais il symbolise un tournant.\r\nDans cette ère où chaque mot que nous tapons peut devenir une donnée d’apprentissage, la véritable ressource n’est plus la technologie, mais la confiance.\r\nEt cette confiance, aujourd’hui, semble s’effriter à mesure que les algorithmes se renforcent.\r\n--\r\n\r\nVoici les risques autour de l’utilisation des données des utilisateurs par LinkedIn (et d’autres plateformes) pour l’IA\r\n\r\n1. Atteinte à la vie privée et au consentement\r\n\r\nMême si LinkedIn affirme n’utiliser que des données “publiques”, cela ne signifie pas que les utilisateurs ont consenti explicitement à cet usage.\r\n\r\n Les informations partagées à des fins professionnelles (CV, publications, commentaires) peuvent être réutilisées hors contexte.\r\n Le consentement est souvent implicite, enfoui dans les conditions d’utilisation.\r\n L’utilisateur perd le contrôle sur ce qu’il partage : il ne sait pas exactement comment ni par qui ses données seront exploitées.\r\n\r\n➡️ Exemple concret : ton texte sur la gestion d’équipe pourrait servir à entraîner une IA d’entreprise sans que tu le saches, ni que ton nom y soit associé.\r\n--\r\n\r\n2. Profilage et reconstitution d’identité\r\n\r\nL’agrégation massive des données permet aux IA d’identifier des schémas comportementaux et professionnels :\r\n\r\n Les algorithmes peuvent déduire des informations sensibles (habitudes de travail, orientation politique, situation financière, etc.) à partir de simples interactions.\r\n Ces profils peuvent être utilisés pour le ciblage commercial, le recrutement automatisé, voire l’évaluation de performance dans certains contextes.\r\n\r\n➡️ Risque : un recruteur ou un système d’IA pourrait juger ton profil ou ton style d’écriture sans ton accord.\r\n--\r\n\r\n3. Appropriation intellectuelle et perte de la valeur de ton contenu\r\n\r\nLes textes, publications et commentaires des utilisateurs servent de matière première à l’entraînement de modèles d’intelligence artificielle.\r\n\r\n Tes contributions (même originales ou expertes) peuvent être intégrées à des IA génératives qui, ensuite, produiront du contenu similaire sans mentionner leur source.\r\n Cela pose une question d’éthique et de propriété intellectuelle : tu deviens fournisseur involontaire de savoir gratuit.\r\n\r\n➡️ Exemple : une IA générative pourrait reformuler ou réutiliser tes analyses dans un contexte commercial sans te citer.\r\n--\r\n\r\n4. Risque de réidentification\r\n\r\nMême si LinkedIn ou Microsoft annoncent que les données sont “anonymisées”, des études montrent qu’il est souvent possible de réidentifier des individus à partir de fragments de données combinées.\r\n\r\n Les publications, les dates d’emploi ou les noms d’entreprises peuvent suffire à retrouver une personne réelle.\r\n Cela peut exposer à du harcèlement, du doxing (divulgation d’infos perso) ou du recrutement non sollicité.\r\n--\r\n\r\n5. Érosion de la confiance numérique\r\n\r\nChaque nouvelle utilisation non transparente des données creuse le fossé entre utilisateurs et plateformes.\r\n\r\n Les professionnels peuvent se censurer, publier moins, ou quitter la plateforme.\r\n Cela nuit à la qualité du réseau et à la diversité des échanges.\r\n\r\n➡️ Risque collectif : LinkedIn perd son rôle de réseau professionnel ouvert, et les utilisateurs deviennent méfiants ou silencieux.\r\n--\r\n\r\n6. Exploitation commerciale asymétrique\r\n\r\nLes utilisateurs fournissent la matière (leurs données), mais ne bénéficient pas des revenus générés par les IA entraînées sur ces données.\r\n\r\n Les plateformes en tirent un profit direct (via les produits IA, la publicité ou les abonnements premium).\r\n Les utilisateurs, eux, deviennent des ressources gratuites sans contrepartie.\r\n--\r\n\r\n7. Sécurité des données à long terme\r\n\r\nUne fois intégrées dans des modèles d’IA, les données ne peuvent pas toujours être effacées.\r\n\r\n Même si tu supprimes ton compte, l’empreinte de tes données peut subsister dans les systèmes d’apprentissage.\r\n Cela entre en tension avec le droit à l’oubli, garanti par le RGPD.\r\n--\r\n\r\nExemples concrets et projections permettant de bien mesurer les conséquences réelles (et à venir) de cette collecte de données par LinkedIn et les IA associées.\r\nVoici une série d’illustrations réalistes, plausibles et documentées, suivies de projections futures si la tendance se poursuit.\r\n\r\n💼 1. Exemple actuel : ton profil devient un “modèle” de compétence\r\n\r\nUn consultant publie régulièrement des analyses sur la transformation digitale. Ses posts sont publics, bien écrits et souvent partagés.\r\n👉 Ces textes peuvent être intégrés (sans qu’il le sache) dans des ensembles de données qui servent à entraîner une IA professionnelle de rédaction ou de recrutement.\r\nRésultat : une IA générative pourrait ensuite produire des articles ou des messages LinkedIn similaires au sien, imitant son ton et sa structure — sans jamais le créditer.\r\n\r\n📍 Projection 2026 : les entreprises paieront pour des outils d’IA “experts en communication LinkedIn”, entraînés sur des millions de publications d’utilisateurs. Ces contenus originaux deviendront des modèles commerciaux... sans rémunération pour leurs auteurs.\r\n--\r\n\r\n🔍 2. Exemple : profilage algorithmique dans le recrutement\r\n\r\nLinkedIn est déjà utilisé pour le tri automatisé des candidatures. En combinant ces données avec des modèles d’IA, une entreprise pourrait prédire les “traits de personnalité” d’un candidat à partir de son profil, de son vocabulaire ou de son historique de publications.\r\n\r\n➡️ Risque concret :\r\nUne IA pourrait écarter un profil jugé “instable” ou “non aligné culturellement” simplement parce qu’elle a repéré des posts critiques sur le management — sans intervention humaine.\r\n\r\n📍 Projection 2027 : des recruteurs utilisent des IA pour “noter” automatiquement les profils selon leur probabilité de succès dans une entreprise, créant des discriminations invisibles et difficilement contestables.\r\n--\r\n\r\n✍️ 3. Exemple : appropriation intellectuelle déguisée\r\n\r\nImaginons une chercheuse en RH qui publie des posts détaillant sa méthode d’évaluation des compétences.\r\nQuelques mois plus tard, une IA professionnelle (issue d’un modèle Microsoft ou OpenAI) reprend des formulations et des idées très proches dans un produit commercial.\r\n\r\n➡️ Risque : sa méthode devient une fonctionnalité d’un logiciel RH, sans reconnaissance ni rémunération.\r\n\r\n📍 Projection 2028 : les IA intègrent massivement du contenu “crowdsourcé” depuis LinkedIn, Reddit ou Medium. Les créateurs deviennent fournisseurs involontaires de savoir, pendant que les entreprises vendent des outils basés sur leurs contributions.\r\n--\r\n\r\n🧠 4. Exemple : inférences comportementales non désirées\r\n\r\nUne IA peut déduire plus que ce que l’utilisateur pense partager.\r\n➡️ Par exemple :\r\n\r\n Un rythme de publication irrégulier peut être interprété comme un “manque de disponibilité”.\r\n Un enchaînement de changements de poste peut être lu comme un “instinct d’instabilité”.\r\n Le ton ou la fréquence des commentaires peut servir à classer les utilisateurs selon leur “influence sociale”.\r\n\r\n📍 Projection 2026-2030 : ces données comportementales nourrissent des scores de réputation professionnelle invisibles, que certaines entreprises ou plateformes utilisent pour classer les candidats, partenaires ou clients potentiels.\r\n--\r\n\r\n💰 5. Exemple : création de produits IA entraînés sur les utilisateurs\r\n\r\nMicrosoft développe des outils d’IA intégrés à LinkedIn Learning ou à Microsoft 365 Copilot.\r\n➡️ Les modèles peuvent s’inspirer des tendances, expressions et structures de pensée des utilisateurs LinkedIn pour proposer des conseils personnalisés (“Voici comment rédiger une offre d’emploi efficace”).\r\n\r\n📍 Projection 2030 :\r\nLes modèles d’IA deviennent si performants qu’ils proposent des stratégies RH, des analyses de marché ou des lettres de motivation entières, entraînées sur les contenus des utilisateurs — mais commercialisées sous licence Microsoft.\r\nLes utilisateurs deviennent littéralement la matière première de produits IA vendus à d’autres professionnels.\r\n--\r\n\r\n🔒 6. Exemple : difficulté d’effacement ou de contrôle\r\n\r\nUn utilisateur décide de supprimer son compte LinkedIn.\r\n➡️ Problème : ses anciens posts, déjà utilisés pour l’entraînement de modèles, ne peuvent pas être “désappris” par ces IA.\r\nLes traces textuelles persistent dans les modèles, parfois indéfiniment.\r\n\r\n📍 Projection 2029 : même avec le droit à l’oubli renforcé, la récupération complète des données dans les modèles devient quasi impossible. Les régulateurs européens devront imposer des procédures d’“oubli algorithmique”, très coûteuses à mettre en œuvre.\r\n--\r\n\r\n🌍 7. Projection sociétale globale : le paradoxe de la transparence\r\n\r\nÀ long terme, la généralisation de ces pratiques pourrait produire un effet de censure douce :\r\n\r\n Les utilisateurs partagent moins d’analyses authentiques, de peur d’être copiés ou profilés.\r\n Les publications deviennent plus neutres, plus polies, moins spontanées.\r\n Le réseau perd de sa valeur humaine et se transforme en vitrine aseptisée.\r\n\r\nEn parallèle, les grandes entreprises technologiques accumulent des quantités massives de données textuelles qui leur donnent un avantage compétitif durable**.\r\nLes utilisateurs, eux, deviennent invisibles dans la chaîne de valeur de l’intelligence artificielle."},"score":0.75,"snippet":"Un matin d’automne, Léa ouvre son compte LinkedIn comme elle le fait chaque jour. Consultante indépendante, elle y partage des réflexions sur le travail à distance, y échange avec des collègues et y recrute parfois des p…","tier":2},{"article":{"uuid":"b7647f3d-0c0a-46ef-815a-cb56e1e95aae","slug":"comment-casser-les-pattes-d-un-etudiant-plein-d-enthousiasme","title":"Comment casser les pattes d’un étudiant plein d’enthousiasme","category":"réflexion","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2025-11-04 21:25:49","created_at":"2025-11-04 21:25:49","updated_at":"2025-11-04 21:25:49","plain":"Chronique d’une mise à l’épreuve LinkedInienne\r\n\r\nIl y a sur LinkedIn de petites scènes de théâtre.\r\nDes instants où la fraîcheur, la naïveté et la passion d’un étudiant viennent se frotter à la rigueur — parfois au cynisme — du monde professionnel.\r\n\r\nCette semaine, le héros s’appelle Nathan Lempereur.\r\nÉtudiant en BTS SIO SISR, passionné d’informatique, il publie fièrement :\r\n« Sortie de SrvTools 1.0 !!\r\nJ’ai conçu un outil pour simplifier l’installation et la configuration de serveurs Linux. »\r\n\r\nUn projet open-source, rédigé en Bash, pensé pour aider les débutants et automatiser des tâches.\r\nUn travail concret, fait avec le cœur et la motivation.\r\nBref : le genre de post rafraîchissant qu’on aimerait voir plus souvent.\r\n\r\nMais voilà : LinkedIn n’est pas toujours tendre avec les enthousiastes.\r\nEt la plateforme adore rappeler que le monde professionnel, lui, ne s’émerveille pas — il évalue, dissèque, critique.\r\n--\r\n\r\nActe I – L’innocence du créateur\r\n\r\nNathan partage son outil avec sincérité.\r\nIl détaille son script, ses fonctions, la compatibilité, la licence.\r\nIl répond à tous, poliment, curieusement, avec ses mots à lui.\r\n\r\nSon ton n’est pas celui d’un expert, mais celui de quelqu’un qui ose.\r\nEt rien que pour ça, il méritait des applaudissements.\r\n\r\nMais sur LinkedIn, le tonnerre vient souvent d’ailleurs.\r\n--\r\n\r\nActe II – L’entrée des gardiens du temple\r\n\r\nLe premier commentaire bienveillant arrive, sous la forme d’un « bon boulot, mais ».\r\nToujours ce petit mais, fidèle compagnon des compliments à moitié avalés.\r\n« Bon boulot ! Effectivement, la compatibilité avec d’autres systèmes serait la bienvenue. »\r\n\r\nUn conseil pertinent, certes.\r\nMais déjà, l’équilibre se rompt : Nathan ne soumettait pas une RFC, il partageait sa fierté.\r\n\r\nPuis vient le classique :\r\n« Vous connaissez Ansible ? »\r\n\r\nSous-entendu : ton outil, c’est mignon, mais ça existe déjà — et en mieux, depuis dix ans.\r\nEt quand Nathan répond humblement qu’il ne connaît pas Ansible, on sent presque la salle soupirer.\r\nOh, le pauvre, il ne connaît pas Ansible.\r\n\r\nPourtant, il reste poli, à l’écoute, curieux.\r\nMais la leçon LinkedInienne est lancée : tu ne peux pas simplement être heureux d’avoir fait quelque chose — il faut défendre son utilité devant un jury invisible.\r\n--\r\n\r\nActe III – Les coups de pinceau du réalisme\r\n\r\nD’autres s’invitent dans la discussion.\r\nLes plus pédagogues demandent :\r\n« Comment comptes-tu maintenir les logiciels ? »\r\n« Quels sont les impacts si les versions changent ? »\r\n« Et la cybersécurité, tu y as pensé ? »\r\n\r\nLes plus techniques ajoutent :\r\n« dns-nameservers n’est pas dans le fichier interfaces. »\r\n« apache2, en prod, sans durcissement ? Non. »\r\n\r\nChacun y va de son détail, de son ajustement, de sa remarque.\r\nEt au milieu de tout ça, Nathan reste là — il lit, répond, apprend.\r\nIl ne se vexe pas. Il continue. Parce que lui, il voulait juste partager.\r\n--\r\n\r\nActe IV – LinkedIn, ou la pédagogie à reculons\r\n\r\nCe n’est pas de la méchanceté.\r\nC’est pire : c’est l’habitude d’éteindre la flamme.\r\n\r\nLinkedIn regorge de gens brillants, compétents, expérimentés.\r\nMais trop souvent, ils oublient une chose : l’enthousiasme, ça se protège.\r\nÇa ne se corrige pas, ça s’encourage.\r\n\r\nFace à un jeune qui code un outil, on peut dire :\r\n« Génial, continue ! Et si tu veux aller plus loin, regarde Ansible, ça t’inspirera. »\r\n\r\nOu bien :\r\n« Ça existe déjà, ton code n’est pas durci, tu réinventes la roue. »\r\n\r\nLa première phrase fait grandir.\r\nLa seconde forme les cyniques de demain.\r\n--\r\n\r\nActe V – Ce que Nathan a compris (et que beaucoup ont oublié)\r\n\r\nMalgré les remarques, Nathan reste droit dans ses bottes.\r\nIl remercie, prend note, annonce une version 2.\r\nIl continue à coder, à apprendre, à rêver.\r\n\r\nEt c’est là que l’histoire devient belle :\r\nle garçon n’a pas perdu sa flamme.\r\n\r\nParce qu’il a compris ce que beaucoup oublient :\r\nle progrès ne vient pas de ceux qui savent tout, mais de ceux qui essaient.\r\n--\r\n\r\nÉpilogue – Pour ceux qui cassent les pattes sans le vouloir\r\n\r\nLa prochaine fois qu’un étudiant publie fièrement son petit outil, son script, sa maquette,\r\nsouvenez-vous : il ne cherche pas un audit de sécurité.\r\nIl cherche un peu de reconnaissance.\r\n\r\nEt peut-être que dans dix ans, ce même étudiant sera ingénieur, architecte, CTO.\r\nEt qu’il se souviendra du jour où, au lieu de lui tendre la main,\r\non lui a tendu une liste de dépendances manquantes.\r\n\r\nAlors, la prochaine fois, laissez-le être fier.\r\nCorrigez, si vous voulez — mais surtout, encouragez.\r\n\r\nParce que casser des pattes, c’est facile.\r\nFaire pousser des ailes, c’est autrement plus noble.\r\n\r\nEt puis, après tout…\r\npeut-être que Nathan préfère le Bash et APT à Ansible, npm ou autres —\r\net c’est très bien comme ça.\r\n--\r\n\r\n🧠 Morale de l’histoire\r\n\r\nSur LinkedIn, il y a ceux qui montrent ce qu’ils savent faire,\r\net ceux qui montrent qu’ils savent mieux.\r\nLes premiers construisent.\r\nLes seconds commentent.\r\n\r\n🔗 Post original de Nathan Lempereur"},"score":0.75,"snippet":"Chronique d’une mise à l’épreuve LinkedInienne\r\n\r\nIl y a sur LinkedIn de petites scènes de théâtre.\r\nDes instants où la fraîcheur, la naïveté et la passion d’un étudiant viennent se frotter à la rigueur — parfois au cyni…","tier":2},{"article":{"uuid":"dfdc14e3-cd61-486b-89d5-6e5da9d6db89","slug":"tout-savoir-sur-le-tbw-teraoctets-ecrits","title":"Tout savoir sur le TBW : Téraoctets Écrits","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2025-02-09 09:17:23","created_at":"2025-02-09 09:17:23","updated_at":"2025-02-09 09:17:23","plain":"Le TBW, ou Téraoctets Écrits, est une métrique clé pour évaluer la durée de vie des disques SSD (Solid State Drive). Il s'agit d'une mesure indiquant la quantité totale de données qu'un SSD peut écrire avant de commencer à risquer des défaillances. Le TBW correspond au volume total de données que le fabricant garantit pouvoir être écrit sur un SSD avant que les performances ou la fiabilité ne se dégradent. Par exemple, un SSD avec un TBW de 300 To signifie qu'il peut écrire jusqu'à 300 téraoctets de données sur sa durée de vie avant de dépasser sa garantie. Le TBW est une valeur essentielle, car contrairement aux disques durs traditionnels (HDD), les SSD utilisent des cellules de mémoire flash qui s'usent à chaque cycle d'écriture/effacement. Une fois les cellules trop usées, elles deviennent inutilisables. Les fabricants intègrent des technologies comme le wear leveling pour distribuer uniformément les écritures et prolonger la durée de vie du disque. Le TBW dépend de plusieurs facteurs : 1. Technologie de mémoire flash :\nSLC (Single-Level Cell) : Très durable, mais coûteuse. Chaque cellule peut supporter 90 000 à 100 000 cycles.\nMLC (Multi-Level Cell) : Plus courante, environ 3 000 à 10 000 cycles par cellule.\nTLC (Triple-Level Cell) : Offre 500 à 3 000 cycles par cellule. La plupart des SSD grand public l'utilisent.\nQLC (Quad-Level Cell) : Moins durable, entre 150 et 1 000 cycles, mais moins cher. 2. Capacité du SSD : Les SSD de plus grande capacité ont généralement un TBW plus élevé, car ils disposent de plus de cellules pour répartir les écritures. Si vous effectuez des tâches nécessitant de nombreuses écritures (montage vidéo, machine virtuelle, serveurs de données, etc.), un TBW élevé est nécessaire. Voici quelques exemples de TBW garantis pour des SSD typiques (ces valeurs varient selon le modèle et la marque) :\nSSD 250 Go : 100 à 150 TBW\nSSD 500 Go : 300 TBW\nSSD 1 To : 600 TBW\nSSD 2 To : 1 200 TBW Les SSD professionnels ou destinés aux serveurs peuvent offrir des TBW beaucoup plus élevés (plusieurs pétaoctets écrits). Le TBW permet de prédire la durée de vie d'un SSD en fonction de vos habitudes. Par exemple, si vous écrivez 50 Go par jour, un SSD avec un TBW de 300 To durera environ 16 ans (300 To ÷ 50 Go ÷ 365 jours). Pour un utilisateur moyen qui écrit 20 Go par jour (navigation, streaming, jeux, etc.), même un SSD avec un TBW de 100 To peut durer plus de 13 ans. Dans un environnement de travail nécessitant 300 Go/jour (édition vidéo, bases de données), un SSD avec un TBW de 600 To durerait environ 5 ans. Surveiller le TBW actuel sous Linux\nLancez la commande suivante pour analyser les données SMART de votre SSD : Pour les SSD NVMe, utilisez cette commande : Exemple de sortie pour un disque NVMe\nData Units Written :\nIl a été écrit 776 903 unités de données, ce qui correspond à 397 Go. Cette valeur est directement lisible et ne nécessite aucune conversion supplémentaire pour les SSD NVMe. Le SSD a donc une usure très faible, ce qui est confirmé par le champ Percentage Used.\nPercentage Used :\nLa valeur 0% indique que le SSD n'a quasiment pas été utilisé par rapport à sa durée de vie estimée. Cela signifie que votre SSD est en excellent état et loin d'atteindre ses limites d'écriture.\nPower On Hours :\nLe SSD a fonctionné pendant 369 heures, ce qui équivaut à environ 15 jours de fonctionnement continu. Cela indique également qu'il est encore relativement peu utilisé.\nAutres indicateurs rassurants : Critical Warning : 0x00 (aucun problème critique détecté). Available Spare : 100% (tous les blocs de réserve sont disponibles, aucun n'a encore été utilisé pour compenser des blocs défectueux). Media and Data Integrity Errors : 0 (aucune erreur d'intégrité détectée).\nTempérature : Temperature Sensor 1 indique 52°C, ce qui est un peu élevé mais toujours dans la plage normale pour un SSD NVMe en fonctionnement. Temperature Sensor 2 est plus bas, à 31°C. ce qui est un peu élevé. Bien ventiler le SSD surtout s'il est utilisé pour des tâches intensives. Autre exemple de sortie pour un disque SSD\nPowerOnHours (9) : Le SSD a fonctionné pendant 6810 heures (soit environ 284 jours si utilisé 24h/24).\nPowerCycleCount (12) : Il a été mis sous tension 631 fois, ce qui indique un usage fréquent mais sans problèmes.\nTemperatureCelsius (194) : La température actuelle est de 13°C, avec un minimum de 5°C et un maximum de 32°C. Cela indique un bon environnement pour le SSD.\nTotalLBAsWritten (241) : La valeur brute de TotalLBAsWritten est 7348. Cela représente le nombre total de blocs logiques écrits. Conversion des LBA (Logical Block Address) en téraoctets écrits** Chaque LBA correspond généralement à 512 octets. Donc, les données totales écrites en octets sont : Convertissons cela en téraoctets : Que se passe-t-il lorsque le TBW est atteint ?\nLorsque le TBW d’un SSD est atteint, cela ne signifie pas que le disque cesse immédiatement de fonctionner. La plupart des SSD continuent de fonctionner en mode lecture seule, mais les écritures supplémentaires risquent de provoquer des erreurs ou des pertes de données. Les constructeurs garantissent généralement les performances jusqu’à ce seuil, mais le disque peut rester utilisable au-delà, avec des risques accrus."},"score":0.75,"snippet":"Le TBW, ou Téraoctets Écrits, est une métrique clé pour évaluer la durée de vie des disques SSD (Solid State Drive). Il s'agit d'une mesure indiquant la quantité totale de données qu'un SSD peut écrire avant de commencer…","tier":2},{"article":{"uuid":"a4c3ae73-2f8c-42e9-86c5-7b978f191230","slug":"installer-fedora-linux-41","title":"Installer Fedora Linux 41","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2025-01-28 12:50:08","created_at":"2025-01-28 12:50:08","updated_at":"2025-01-28 12:50:08","plain":"Rendez-vous sur la page officelle française de Fedora. Site de téléchargement de Fedora en Français Fedora propose plusieurs éditions adaptées à différents usages :\nWorkstation : Conçue pour les ordinateurs de bureau et les portables, idéale pour les développeurs et les utilisateurs quotidiens.\nServer : Destinée aux serveurs avec les dernières technologies open source.\nIoT : Pour les projets liés à l'Internet des objets.\nCloud : Images optimisées pour les infrastructures cloud.\n \nJe télécharge le Live ISO Fedora Linux 41 Workstation Utiliser un nouveau disque dur (de préférence un SSD)\nPour un nouveau départ, il est fortement conseillé d'utiliser un disque dur ou un SSD neuf pour l'installation de votre système. Cette approche présente plusieurs avantages. Tout d'abord, cela permet de conserver les données et configurations existantes sur votre disque actuel, garantissant ainsi une transition fluide et sans risques de perte ou de corruption de fichiers. De plus, il est important de noter que les disques durs classiques (HDD) sont des pièces d'usure qui peuvent perdre en fiabilité avec le temps. Pour éviter tout problème futur, il est recommandé de vérifier l'état de votre disque actuel avant toute réutilisation en utilisant un outil comme smartctl. Cet utilitaire permet d’analyser les indicateurs SMART (Self-Monitoring, Analysis, and Reporting Technology) et de détecter les signes de défaillance imminente. Si des alertes ou anomalies sont détectées, un remplacement est fortement conseillé. Si vous envisagez d'opter pour un SSD (Solid State Drive), sachez qu'ils offrent des avantages considérables en termes de rapidité, fiabilité et résistance aux chocs. Cependant, il est utile de préciser que les SSD sont garantis pour un certain volume de données écrites au cours de leur durée de vie (souvent exprimé en téraoctets écrits, ou TBW – TeraBytes Written). Par exemple, un SSD standard peut être garanti pour 150 à 300 TBW, ce qui est largement suffisant pour un usage classique (système, applications et fichiers personnels). Toutefois, pour des usages intensifs comme l'édition vidéo ou des traitements de données massifs, il peut être judicieux de surveiller ce paramètre et d’opter pour un modèle conçu pour des écritures élevées. Un SSD de 500 Go constitue un excellent compromis pour installer Fedora ainsi que vos applications et fichiers personnels. En choisissant un disque neuf et en tenant compte des spécifications d'écriture du SSD, vous assurez une expérience utilisateur optimale et minimisez les risques liés à un matériel vieillissant ou inadapté. Tout savoir sur le TBW : Téraoctets Écrits Options recommandées selon votre configuration : Pour les ordinateurs équipés d’un port SATA : Crucial BX500 1To SSD 2.5\" SATA – jusqu'à 540Mo/s, Compatible PC et Portable, 3D NAND, CT1000BX500SSD1 PNY CS900 SSD Interne SATA III, 2.5 Pouces, 500Go, Vitesse de Lecture jusqu'à 550MB/s Pour les cartes mères compatibles M.2 2280 : Crucial P3 Plus SSD 1To PCIe Gen4 NVMe M.2 SSD Interne, Jusqu’à 5.000 Mo/s, Compatible avec Ordinateur Portable et de Bureau, Disque Dur SSD - CT1000P3PSSD801 Préparer une clé USB Linux amorçable\nAprès avoir téléchargé l'image ISO de Fedora Linux 41, il faut créer une clé USB amorçable avec Fedora Linux à l'aide de l'outil Ventoy, qui permet de gérer facilement plusieurs images ISO sur un même support. Une fois la clé configurée avec l'image ISO, redémarrez l'ordinateur pour lancer l'installation depuis ce support. Grâce à Ventoy, le système a reconnu l'image ISO. Site de Ventoy Installer Fedora Linux\nDans l’environnement live, l’installateur Fedora vous guidera étape par étape. Les étapes incluent :\nChoisir les paramètres de base : langue, disposition du clavier, fuseau horaire.\nSélectionner le nouveau SSD comme disque cible pour l’installation. Veillez à bien vérifier que Fedora est installé sur le SSD neuf et non sur l’ancien disque, surtout si ce dernier contient encore des données ou un système d’exploitation.\nPermettre à l’installateur de partitionner automatiquement le SSD (option conviviale pour la plupart des utilisateurs). J'ai personnalisé les paramètres d'installation du clavier (Français (variante)), des partitions, fuseaux horaires... Après environ dix minutes d'attente, l'installation de Fedora s'est achevée avec succès. Le système est désormais prêt à l'emploi. Le PC vous invitera à retirer la clé USB et à redémarrer. Fedora démarrera alors depuis le nouveau SSD. Il reste toutefois quelques actions à effectuer dont la configuration de Fedora par le programme de configuration. Mettre à jour votre système et configurer les mises à jour automatiques\nGarder votre système à jour est essentiel pour assurer sécurité, stabilité et profiter des dernières fonctionnalités de Fedora Linux. Pour les utilisateurs qui préfèrent le terminal, le gestionnaire de paquets DNF simplifie la gestion des mises à jour. Ouvrez un terminal et exécutez : Cette commande répertorie toutes les mises à jour disponibles et vous demande de confirmer leur installation. Installez le package dnf-automatic qui gère les mises à jour en arrière-plan : Activez et démarrez le service de mise à jour automatique : Vous pouvez ajuster les paramètres dans le fichier de configuration : Modifiez des options comme applyupdates ou downloadupdates selon vos besoins. Programmes complémentaires et paramétrage complémentaires\nChanger le nom de son ordinateur Ouvrir les paramètres Réseau. Modifier la configuration : 1. Sélectionnez votre connexion réseau.\n1. Cliquez sur \"Modifier\".\n1. Accédez à l'onglet IPv6.\n1. Réglez le mode sur Ignorer ou Désactivé.\n-- Activer les dépots RPM Fusion\nRPM Fusion founit les paquets complémentaires de programme pour Fedora Libre ou non, comprenant des logiciels multimédia, jeux ou pilotes. Ouvrir un Terminal et executez la commande suivante pour activer le dépot Free RPM Fusion (pour les logiciels sous licence libre) : Ouvrir un Terminal et executez la commande suivante pour activer le dépot Free RPM Fusion (pour les logiciels sous licence non-libre) :\n-- Activer le dépôt Rémi's RPM repository Installer VLC\nPour installer VLC, le lecteur multimédia polyvalent, sur Fedora, ouvrez un terminal et exécutez la commande suivante : Cette commande installe le lecteur VLC ainsi que tous les plugins disponibles pour garantir une compatibilité maximale avec une large gamme de formats audio et vidéo. Une fois l’installation terminée, VLC sera prêt à l’emploi, vous permettant de lire vos fichiers multimédias en toute simplicité et sans configuration supplémentaire.\n-- Activer le H.264 dans Firefox\nLes paquets nécessaires à l'utilisation du H.264 doit être installés. Il est important d'activer certaines options dans Firefox pour que le codec H.264 soit utilisé correctement. Voici les étapes à suivre : 1. Ouvrir la page de configuration avancée de Firefox : \n1. Dans la barre d’adresse, tapez et appuyez sur Entrée. \n1. Acceptez l’avertissement pour accéder aux paramètres avancés. 2. Rechercher et activer les options liées à OpenH264 : \n1. Recherchez les clés suivantes une par une dans la barre de recherche des préférences avancées : \n 1. \n 1. \n1. Assurez-vous que leur valeur est définie sur . Si ce n’est pas le cas, double-cliquez dessus pour les activer. 3. Vérifier la configuration : \n1. Retournez sur un site qui utilise le codec H.264 (comme une plateforme de streaming ou un test vidéo). \n1. Vérifiez que les vidéos se lisent sans problème. Une fois ces étapes terminées, Firefox sera configuré pour prendre en charge H.264 grâce à OpenH264 sur Fedora.\n-- Installer d'autres applications avec dnf et suppression d'autres\n-- Installer d'autres applications avec Flathub\n-- Pour lancer Schildi Pour rendre ces options permanentes lors de l’exécution d’une application Flatpak comme SchildiChat, vous pouvez modifier le fichier de configuration de l’application dans le dossier Flatpak afin d’y inclure ces options. 1. Créez ou modifiez un fichier d’exécution dédié : nano ~/.var/app/chat.schildi.desktop/config/environment 2. Ajoutez-y les variables nécessaires, par exemple : 3. Enregistrez le fichier.\n-- Activer toutes les tâches planifiée personnalisées\nLes scripts personnalisés liés à des tâches planifiées ou des services spécifiques à l'utilisateur doivent être stockés dans le répertoire . Ce répertoire est dédié à la gestion des unités Systemd spécifiques à l'environnement utilisateur, permettant de définir des services, des timers, ou d'autres unités sans nécessiter de privilèges administratifs. En plaçant vos fichiers ici, vous vous assurez qu'ils sont isolés de la configuration système globale, ce qui favorise une meilleure organisation et un contrôle individualisé. De plus, cela permet d'utiliser la commande pour gérer vos unités, garantissant qu'elles s'exécutent uniquement pour l'utilisateur concerné. Cette pratique est idéale pour les tâches comme des sauvegardes automatiques ou des scripts de maintenance qui doivent rester indépendants des autres utilisateurs ou des paramètres système globaux. Pour activer tous les scripts présents dans , vous pouvez utiliser une boucle dans une seule ligne de commande BASH comme ceci : Explication :\n: Parcourt tous les fichiers avec l'extension dans le répertoire spécifié.\n: Extrait uniquement le nom du fichier sans le chemin.\n: Active et démarre chaque timer immédiatement. Cette commande active tous les timers trouvés dans le répertoire en une seule exécution. 🚀 La commande systemctl permet de lister tous les timers définis dans l'environnement utilisateur, qu'ils soient actifs ou non. Les timers sont des unités Systemd qui permettent de planifier l'exécution de services à des intervalles spécifiques ou à des moments précis. Cette commande affiche des informations détaillées sur chaque timer, telles que son nom, sa dernière exécution, la prochaine exécution prévue, et l'état du service associé. L'option garantit que tous les timers, y compris ceux qui ne sont pas actuellement actifs ou qui ont été désactivés, sont inclus dans la liste. C'est un outil pratique pour vérifier l'état de vos timers, identifier les timers inactifs ou désactivés, et avoir une vue d'ensemble sur toutes les tâches planifiées dans votre session utilisateur.\n-- Autres actions à prévoir\nMonter les partages NFS\nInstaller imprimante"},"score":0.75,"snippet":"Rendez-vous sur la page officelle française de Fedora. Site de téléchargement de Fedora en Français Fedora propose plusieurs éditions adaptées à différents usages :\nWorkstation : Conçue pour les ordinateurs de bureau et …","tier":2},{"article":{"uuid":"357b1e51-4768-494e-a3ec-10c6e145d12e","slug":"2024-07-04-raspberry-pi-os-update","title":"Mise à Jour de Raspberry Pi OS (2024-07-04)","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2024-07-05 17:17:47","created_at":"2024-07-05 17:17:47","updated_at":"2024-07-05 17:17:47","plain":"La Fondation Raspberry Pi a fait sensation aujourd'hui en dévoilant une nouvelle mise à jour de leur système d'exploitation phare, Raspberry Pi OS. Basé sur Debian, ce système est le cœur des ordinateurs monocarte Raspberry Pi, utilisés par des millions de passionnés et professionnels à travers le monde. La version 2024-07-04 apporte une foule d'améliorations et de nouvelles fonctionnalités qui raviront les utilisateurs. Des Améliorations de l'Interface Utilisateur\nParmi les nouveautés les plus marquantes, on trouve une mise à jour du panneau et du gestionnaire de fichiers PCManFM, désormais capable de gérer plus de deux bureaux. Cette flexibilité accrue permet aux utilisateurs de personnaliser leur environnement de travail de manière encore plus poussée. En parallèle, le panneau intègre désormais la possibilité de personnaliser le compositeur de fenêtres Wayland labwc, qui est maintenant installé par défaut comme alternative à Wayfire. Les utilisateurs peuvent sélectionner labwc comme compositeur Wayland par défaut via l'outil raspi-config, rendant la configuration de leur interface plus accessible. Nouvelles Fonctionnalités dans raspi-config\nL'outil de configuration raspi-config n'est pas en reste avec cette mise à jour. Il prend désormais en charge les options de configuration du clavier et la vitesse PCIe. De plus, l'assistant de démarrage piwiz a été amélioré pour permettre l'activation ou la désactivation de Raspberry Pi Connect, une nouvelle fonctionnalité de support à distance intégrée également à l'installateur de logiciels recommandés et aux utilitaires rc-gui. Support et Compatibilité Étendus\nRaspberry Pi OS 2024-07-04 intègre également des mises à jour pour raspberrypi-ui-mods, notamment la prise en charge des nouveaux écrans tactiles et le support de systemd-inhibit pour la gestion du bouton d'alimentation matériel sur le Raspberry Pi 5. Les modifications apportées à raspberrypi-sys-mods incluent une nouvelle règle udev pour permettre aux utilisateurs de modifier le rétroéclairage et d'augmenter la taille du fichier d'échange. Correctifs et Optimisations\nCette version apporte des correctifs significatifs, notamment pour le compositeur Wayfire Wayland qui a été patché pour éviter les crashs lors de l'ouverture de multiples fenêtres Xwayland et résoudre un bug d'écran tactile. Le gestionnaire de fichiers PCManFM a également été corrigé pour éviter les crashs pendant certaines opérations de glisser-déposer. Nouvelles Capacités pour les Développeurs et Utilisateurs Avancés\nL'installateur gui-pkinst propose maintenant un support de liste blanche pour restreindre l'installation à certains packages spécifiés. L'outil pishutdown utilise la commande pkill pour fermer le bureau, et le serveur VNC WayVNC améliore la gestion des écrans virtuels et le chiffrement. Téléchargement et Disponibilité\nRaspberry Pi OS 2024-07-04 est alimenté par le noyau Linux 6.6.31 LTS et est livré avec les dernières versions des navigateurs web Chromium (125.0.6422.133) et Mozilla Firefox (126.0). Cette mise à jour est disponible dès maintenant via l'utilitaire Raspberry Pi Imager et peut également être téléchargée sur le site officiel de la Fondation Raspberry Pi. Que vous soyez un utilisateur débutant ou un expert en Raspberry Pi, cette mise à jour promet d'améliorer votre expérience et d'ouvrir de nouvelles possibilités pour vos projets. Ne manquez pas de l'essayer dès aujourd'hui !"},"score":0.75,"snippet":"La Fondation Raspberry Pi a fait sensation aujourd'hui en dévoilant une nouvelle mise à jour de leur système d'exploitation phare, Raspberry Pi OS. Basé sur Debian, ce système est le cœur des ordinateurs monocarte Raspbe…","tier":2},{"article":{"uuid":"361716cb-659e-47d8-9e88-7e4b9600c085","slug":"2024-05-13-date-articles","title":"Date des articles","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2024-05-13 06:13:10","created_at":"2024-05-13 06:13:10","updated_at":"2024-05-13 06:13:10","plain":"Il est tout à fait naturel de vouloir connaître la date de publication d'un article lorsque vous naviguez sur Internet. Cela vous permet de mieux comprendre le contexte dans lequel il a été écrit et de déterminer s'il est toujours pertinent ou à jour. De nombreux sites web placent la date de publication à la fin de l'article ou dans les métadonnées de la page, souvent près du titre ou en bas de la page. En tant que rédacteur, il est essentiel d'inclure la date de publication dans vos articles pour plusieurs raisons : 1. Transparence : Indiquer la date de publication montre que vous êtes transparent sur la chronologie de vos contenus. Cela renforce la confiance des lecteurs envers votre site ou votre plateforme. 2. Pertinence : Les lecteurs veulent souvent savoir si l'information qu'ils lisent est à jour. La date de publication les aide à déterminer la pertinence de l'article par rapport à l'actualité ou aux évolutions récentes du sujet traité. 3. Crédibilité : L'inclusion de la date de publication renforce la crédibilité de votre contenu. Cela montre que vous vous souciez de fournir des informations précises et fiables, et que vous êtes engagé dans des pratiques journalistiques ou rédactionnelles responsables. 4. Référencement : Les moteurs de recherche tiennent souvent compte de la fraîcheur du contenu lors du classement des résultats. En incluant la date de publication, vous aidez les moteurs de recherche à mieux comprendre la pertinence temporelle de votre article. 5. Facilité de navigation : Pour les lecteurs réguliers, la date de publication peut servir de repère pour suivre l'évolution de vos contenus et identifier de nouveaux articles. Pour améliorer le référencement et la visibilité de votre contenu, il est conseillé de suivre certaines bonnes pratiques, y compris en ce qui concerne la gestion des dates dans vos articles. Voici quelques conseils techniques qui peuvent contribuer à améliorer le référencement (SEO) de vos contenus : 1. Inclure la date dans l'URL : Si possible, intégrez la date de publication dans l'URL de votre article. Cela permet aux moteurs de recherche et aux utilisateurs de comprendre rapidement la fraîcheur du contenu. Voici quelques suggestions de formats de date couramment utilisés dans les URL :\nAAAA/MM/JJ : Utiliser l'année, le mois et le jour dans cet ordre est un format clair et facilement compréhensible. Par exemple : .\nAAAA-MM-JJ : Ce format est également largement accepté et peut être plus compact. Par exemple : .\nJJ-MM-AAAA : Ce format est plus courant dans certaines régions, mais il est moins recommandé car il peut prêter à confusion, surtout dans un contexte international où l'ordre des dates varie. Par exemple : .\nNom du mois abrégé : Pour une version plus conviviale, vous pouvez utiliser le nom abrégé du mois plutôt que son numéro. Par exemple : . 2. Utiliser des balises structurées : Utilisez les balises HTML appropriées pour marquer la date de publication dans le code source de votre page. Les balises telles que avec l'attribut peuvent aider les moteurs de recherche à interpréter la date plus efficacement. 3. Utiliser le schéma de données : Implémentez le schéma de données structurées approprié pour marquer la date de publication. Par exemple, utilisez le schéma \"Article\" avec la propriété \"datePublished\" pour indiquer la date de publication de votre contenu. 4. Configurer la sitemap : Assurez-vous que votre sitemap XML inclut la date de dernière modification de chaque page. Cela permet aux moteurs de recherche de comprendre quand vos contenus ont été mis à jour pour la dernière fois. 5. Favoriser les mises à jour régulières : Publiez du contenu de manière régulière et mettez à jour vos articles existants si nécessaire. Les moteurs de recherche valorisent souvent les sites qui proposent un contenu frais et actualisé. 6. Supprimer ou mettre à jour les contenus obsolètes : Si un contenu devient obsolète, envisagez de le supprimer ou de le rediriger vers une version plus récente ou mise à jour. Cela contribue à maintenir la qualité de votre site et à éviter que les utilisateurs ne tombent sur des informations périmées. En suivant ces recommandations techniques, vous pouvez aider à optimiser vos articles pour le référencement et à améliorer leur visibilité dans les résultats de recherche."},"score":0.75,"snippet":"Il est tout à fait naturel de vouloir connaître la date de publication d'un article lorsque vous naviguez sur Internet. Cela vous permet de mieux comprendre le contexte dans lequel il a été écrit et de déterminer s'il es…","tier":2},{"article":{"uuid":"867e5c70-e40c-48b3-94a2-761be37fdf8b","slug":"update-locale","title":"update-locale","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2024-03-27 07:10:23","created_at":"2024-03-27 07:10:23","updated_at":"2024-03-27 07:10:23","plain":"update-locale est un programme qui met à jour les fichiers de configuration du système pour définir les paramètres régionaux. Ces paramètres contrôlent des éléments comme la langue de l'interface utilisateur, le format de la date et de l'heure, le format des nombres, etc Erreur : cannot change locale Cette erreur indique que le shell (dans ce cas, Bash) ne peut pas changer la locale en français avec le jeu de caractères UTF-8 (fr_FR.UTF-8). En exécutant la commande , vous générez et installez les paramètres régionaux pour la langue française avec le jeu de caractères UTF-8. Cela signifie que vous créez les fichiers de configuration nécessaires pour que le système prenne en charge correctement la langue française avec les caractères UTF-8."},"score":0.75,"snippet":"update-locale est un programme qui met à jour les fichiers de configuration du système pour définir les paramètres régionaux. Ces paramètres contrôlent des éléments comme la langue de l'interface utilisateur, le format d…","tier":2},{"article":{"uuid":"c5119921-464f-41ed-8433-b5aec8db3af7","slug":"cle-wifi-linux","title":"Wifi pour Linux en 2024","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2024-01-14 06:50:08","created_at":"2024-01-14 06:50:08","updated_at":"2024-01-14 06:50:08","plain":"Il y a des cartes Wifi qui sont mieux supportées par Linux, souvent dues à la compatibilité de leurs chipsets avec les drivers disponibles dans les distributions Linux. En général, les cartes Wifi n'ont pas de problèmes de compatibilité majeurs avec Linux, car la plupart utilisent des standards de communication bien établis. Cependant, certaines fonctionnalités spécifiques, des performances optimales ou la compatibilité de la carte Wifi peuvent dépendre du support du chipset par le noyau Linux. Les pilotes intégrés au noyau de Linux sont préférables aux pilotes externes au noyau pour la plupart des utilisateurs et des cas d'utilisation Ce qu'il faut chercher :\nCompatibilité avec le noyau Linux : Certains chipsets sont mieux pris en charge que d'autres. Les chipsets les plus courants comme ceux de SanDisk, Kingston, et Toshiba tendent à avoir un bon support.\nDocumentation du fabricant : Certains fabricants indiquent explicitement la compatibilité avec Linux ou fournissent des pilotes pour certaines distributions.\nPour les clés USB, normes USB : USB 2.0, USB 3.0, USB 3.1, etc. La prise en charge des différentes normes par votre système Linux peut influencer les performances.\nCommunauté Linux : Les forums et les sites dédiés à Linux sont de bonnes ressources pour trouver des avis sur la compatibilité des différents modèles de clés USB. Les informations ci-dessous peuvent nécessiter une familiarité avec le terminal et les commandes de base Linux. Quelques adresses :\nLes adaptateurs WiFi USB pris en charge par les pilotes Linux intégrés au noyau.\nBest USB WiFi Adapters for Linux (Review) in 2022 Quelques références\nBrosTrend AC3L Linux WiFi Adapter\nBrosTrend Linux USB Clé WiFi Adaptateurs, PC avec Ubuntu, Mint, Debian, Kali, Raspbian, Lubuntu, Xubuntu, Mate, Zorin, Raspberry Pi 2+, Windows11, 1200Mbps, Longue Portée 2 X 5dBi External Antennas La BrosTrend 1200Mbps USB WiFi Adapter est conçue pour offrir une connectivité réseau à haute vitesse et une meilleure portée grâce à ses deux antennes externes 5dBi. Voici quelques infos pour installer et configurer l'adaptateur sur un système Linux. Pour l'installation de la clé BrosTrend AC3L Linux WiFi Adapter sous Linux, les noyaux Linux (>= 6.2) incluent leurs propres pilotes, ce qui permet leur fonctionnement immédiat dans les distributions récentes.\nPour connaître la version de votre noyau, exécutez la commande . Les pilotes livrés avec le noyau ne sont pas encore aussi aboutis que ceux de BrosTrend, donc si vous rencontrez des problèmes, utilisez leur installateur pour les remplacer. Le processus d'installation nécessite une connexion Internet initiale :\n sh -c 'wget linux.brostrend.com/install -O /tmp/install && sh /tmp/install' Pour toute assistance ou en cas de problème, la communauté Linux et le support de BrosTrend sont à votre disposition pour vous guider. Support et Documentation: Consultez la documentation de BrosTrend pour des problèmes spécifiques à l'adaptateur. https:linux.brostrend.com/ Antennes Externes: Assurez-vous que les antennes sont correctement connectées et orientées pour une meilleure réception. TP-Link TL-WN823N\nTP-Link Clé WiFi Puissante N300 Mbps, mini adaptateur USB wifi, dongle wifi, Bouton WPS, compatible avec Windows 11/10/8.1/8/7/XP, Mac OS X 10.9-10.13, Linux , Noir, TL-WN823N Le TP-Link TL-WN823N est un mini adaptateur USB WiFi offrant une vitesse allant jusqu'à 300 Mbps, idéal pour les jeux en ligne ou le streaming vidéo HD. Compatible avec une multitude de systèmes d'exploitation, son installation sous Linux peut varier en fonction de la distribution utilisée. Installer le TP-Link TL-WN823N sous Linux peut nécessiter un peu de travail en ligne de commande, mais une fois configuré, il offre une connexion stable et rapide. Assurez-vous de suivre les étapes spécifiques à votre distribution <https:static.tp-link.com/2018/201812/20181207/Installation%20Guide%20for%20Linux.pdf> ou . Consulter la communauté Linux pour obtenir de l'aide en cas de problème. Support et Documentation: La documentation officielle peut offrir des conseils supplémentaires spécifiques à votre modèle. https:www.tp-link.com/fr/support/download/tl-wn823n/ Bouton WPS: Si votre routeur a un bouton WPS, vous pouvez l'utiliser pour une connexion facile. BrosTrend AX4L et AX1L\nAX1800 Clé WiFi 6 USB Linux\nAX1800 Clé WiFi 6 USB Longue Portée Linux La BrosTrend AX4L, avec sa capacité de 1800 Mbps et l'intégration de la technologie WiFi 6, se distingue par sa performance en termes de vitesse et de portée, grâce notamment à ses antennes externes qui améliorent la qualité et la stabilité du signal sur de longues distances. Cela la rend particulièrement adaptée pour des utilisateurs recherchant une connexion réseau rapide et fiable, que ce soit pour du streaming de contenu en haute définition, des jeux en ligne, ou tout autre activité nécessitant une bande passante élevée. En revanche, la AX1L, sans antennes externes, pourrait être plus adaptée pour des usages standards avec une préférence pour un design plus compact et discret. Chacun de ces modèles a donc ses avantages spécifiques, à considérer en fonction des besoins et de l'environnement d'utilisation. Systèmes d'exploitation pris en charge sous Linux : Compatible avec les kernels jusqu'à la version 6.5, y compris Ubuntu de la version 16.04 à la 23.10 (toutes variantes), Raspberry Pi OS, Debian de la version 8 à la 12, Linux Mint de la version 18 à la 21, LMDE de la version 1 à la 6, ainsi que Pop!OS, Zorin, MX Linux, Linux Lite, elementary OS et bien d'autres. Le processus d'installation nécessite une connexion Internet initiale et peut nécessiter une familiarité avec le terminal et les commandes de base :\n sh -c 'wget linux.brostrend.com/install -O /tmp/install && sh /tmp/install' <note important>Distributions Linux Non Supportées : Actuellement NON compatible avec Kali Linux, deepin, RHEL, CentOS, openSUSE Leap, OpenWrt, Guix, Puppy, Tails, Endless OS, LibreELEC, OSMC, SteamOS.</note> Il est important de noter que, en raison des contraintes liées à certaines versions de Linux, j'ai des réserves concernant le choix des modèles AX1L et AX4L de la gamme BrosTrend. Ces modèles ne sont pas compatibles avec certaines distributions Linux, ce qui peut limiter l'accès aux avancées en matière de connectivité réseau, telles que le WiFi 6, connu pour sa vitesse et son efficacité accrues. Il est donc crucial de vérifier attentivement la compatibilité matérielle et logicielle lors de la sélection d'adaptateurs WiFi pour des systèmes spécifiques, afin de garantir une expérience utilisateur optimale. Support et Documentation: Consultez la documentation de BrosTrend pour des problèmes spécifiques à l'adaptateur. https:linux.brostrend.com/ Étapes d'installation génériques\n0. Prérequis\nSystème Linux: Assurez-vous que votre système est à jour.\nPermissions: Droits d'administrateur pour l'installation des paquets.\nInformation du système: Connaître le type de kernel et la version du système. 1. Connexion de l'adaptateur Branchez la clé USB Wifi sur un port USB disponible de votre ordinateur. 2. Vérification de la reconnaissance de l'appareil Ouvrez le terminal et tapez la commande suivante pour vérifier si le système reconnaît l'adaptateur: Recherchez une entrée correspondant à votre clé USB Wifi ou à l'ID de l'appareil. 3. Installation des dépendances Avant d'installer le pilote, vous devrez peut-être installer des paquets prérequis tels que build-essential et linux-headers. Utilisez le gestionnaire de paquets de votre distribution pour les installer. 4. Téléchargement et installation du pilote Rendez-vous sur le site officiel du constructeur et téléchargez le pilote correspondant à votre modèle et à la version de votre kernel. Décompressez l'archive et lisez le fichier README pour les instructions spécifiques. En général, les étapes suivantes sont requises: 1. Naviguez dans le dossier du pilote décompressé.\n1. Compilez et installez le pilote à l'aide des commandes make et make install. 5. Chargement du module du pilote Après l'installation, chargez le module du pilote en utilisant la commande: 6. Configuration de la connexion WiFi Vous pouvez utiliser l'interface graphique de gestion réseau de votre distribution ou la commande pour configurer votre réseau sans fil. <u>Dépannage et support**</u> Consultez les forums: Les forums Linux spécifiques à votre distribution sont une excellente ressource pour obtenir de l'aide. {{page>AC650 11ac Dual-Band Wireless USB Adapter}}"},"score":0.75,"snippet":"Il y a des cartes Wifi qui sont mieux supportées par Linux, souvent dues à la compatibilité de leurs chipsets avec les drivers disponibles dans les distributions Linux. En général, les cartes Wifi n'ont pas de problèmes …","tier":2},{"article":{"uuid":"a150a0d3-caac-4d1f-915d-8d3c35624df1","slug":"postfix","title":"PostFix : serveur de messagerie sous Linux","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-12-29 17:29:08","created_at":"2023-12-29 17:29:08","updated_at":"2023-12-29 17:29:08","plain":"Cet article est destiné aux débutants qui veulent configurer un serveur de messagerie électronique de base. Il est préférable d'avoir une connaissance élémentaire en administration système, ainsi que la capacité d'installer des logiciels et de modifier des fichiers de configuration. L'article a été rédigé en se basant sur Debian 11, mais les instructions devraient également convenir aux autres versions. Veuillez noter que des différences peuvent exister dans les autres versions. Postfix est un logiciel de serveur de messagerie open source largement adopté. En tant que \"MTA\" (Agent de Transfert de Message), il joue un rôle central dans le traitement, la transmission et la distribution des courriels. Doté de fonctionnalités avancées en matière de sécurité, de filtrage et de personnalisation, Postfix est un choix prisé pour la gestion des systèmes de messagerie. <nav stacked=\"true\" fade=\"true\"> </nav>\nIntroduction\nL'objectif fondamental de cette procédure est de permettre à n'importe quelle machine ou serveur d'envoyer des courriels vers une adresse spécifique. Pour y parvenir, il est nécessaire de préparer le courrier électronique à l'aide d'un programme externe, puis de le transmettre efficacement au serveur de messagerie de destination en utilisant le protocole SMTP (Simple Mail Transfer Protocol). Le processus de l'envoi de courriel via SMTP s'articule comme suit, prenons un exemple concret avec un courriel destiné à l'adresse alice@example.com : 1. L'utilisateur ou un programme externe crée le courrier électronique, en spécifiant les informations du destinataire (alice@example.com), en rédigeant le contenu du message et en incluant d'autres détails nécessaires. 2. Le courriel est ensuite remis au serveur SMTP local, qui se trouve sur la machine ou le serveur à partir duquel l'envoi est effectué. 3. Le serveur SMTP analyse le domaine du destinataire (dans ce cas, \"example.com\") pour déterminer comment atteindre le serveur de messagerie de destination. 4. Le serveur SMTP établit un contact avec le serveur de messagerie de destination (le serveur SMTP de \"example.com\" dans cet exemple) en utilisant le protocole SMTP. 5. Le serveur de messagerie de destination accepte le courriel, le stocke temporairement, puis le transfère éventuellement dans la boîte aux lettres de l'utilisateur Alice, située sur son propre serveur de messagerie. 6. Si tout se déroule sans problème, le courriel est ainsi livré avec succès à Alice, qui peut alors le consulter dans sa boîte de réception. Ce processus est la façon dont le protocole SMTP assure la transmission de courriels, encheminant ces derniers de l'expéditeur au destinataire, en utilisant les serveurs de messagerie appropriés à travers Internet.\nAxe de travail\nIl existe de nombreuses configurations et combinaisons différentes possibles lors de la mise en place d'un serveur de messagerie électronique, bien trop nombreuses pour être toutes couvertes ici. Par conséquent, cet article effectue certaines choix fondamentaux pour vous, tels que les logiciels que nous allons utiliser (Postfix et Dovecot). D'autres options nécessiteront des modifications de la part de l'utilisateur, comme les adresses réseau et les noms de domaine. Les paramètres plus avancés, comme la gestion de domaines virtuels et des utilisateurs, ne sont pas abordés dans cet article et ne seront pas traités ici. Dans ce contexte, nous utilisons Postfix comme agent de transfert de messagerie (MTA). Dovecot est utilisé pour permettre aux utilisateurs d'accéder à leur courrier électronique via les protocoles IMAP ou POP. Nous partons du principe que le nom de domaine utilisé est example.com, mais cela devrait être adapté par le lecteur. Vous pouvez utiliser un véritable nom de domaine pour un serveur de messagerie pleinement qualifié ou un faux nom de domaine si vous souhaitez uniquement créer un serveur de messagerie interne. Notre exemple suppose que le serveur de messagerie physique (hôte) porte le nom mail.example.com et est situé à l'adresse IP privée 192.168.0.1 (veuillez personnaliser ces informations en fonction de vos besoins). Le serveur de messagerie fournira des comptes de messagerie basés sur les comptes système d'utilisateurs standards, et les utilisateurs accéderont à leur courrier en utilisant leur nom d'utilisateur et leur mot de passe de compte système. Nous illustrons cela avec un utilisateur nommé John Smith, qui dispose d'un compte système avec le nom d'utilisateur john.\nServeurs SMTP\nSous Linux Debian, il existe plusieurs programmes d'envoi de courriels, chacun avec ses propres fonctionnalités et avantages. Voici quelques-uns des programmes les plus couramment utilisés pour envoyer des courriels sous Debian : 1. ssmtp: Simple SMTP est un programme léger qui permet d'envoyer des courriels via SMTP. Il est particulièrement adapté aux tâches d'envoi de courriels automatisées et ne prend pas en charge la réception de courriels. 2. msmtp: MSMTP est un autre client SMTP léger qui facilite l'envoi de courriels depuis la ligne de commande ou depuis des scripts. Il peut être configuré pour transmettre des courriels à travers un serveur SMTP externe. 3. Postfix: Bien que Postfix soit principalement un serveur de messagerie, il peut également être utilisé pour envoyer des courriels depuis une machine Debian. Il offre une grande flexibilité en matière de configuration, mais sa configuration peut être plus complexe que celle des clients SMTP plus simples. 4. sendmail: Sendmail est un programme de messagerie historique sous Unix/Linux, bien qu'il soit maintenant souvent remplacé par des alternatives plus modernes. Cependant, il est toujours disponible sur Debian et peut être utilisé pour envoyer des courriels. 5. Exim: Exim est un autre serveur de messagerie qui peut être configuré pour envoyer des courriels. Il est également capable de gérer la réception de courriels, ce qui en fait une option plus complète. Le choix du programme d'envoi de courriels dépendra de vos besoins spécifiques, de votre niveau de confort avec la configuration et de la complexité de votre infrastructure de messagerie. Pour des tâches simples d'envoi de courriels depuis la ligne de commande ou depuis des scripts, ssmtp ou msmtp sont souvent des choix pratiques. Pour des besoins plus avancés, Postfix ou Exim peuvent être mieux adaptés.\nInstaller Postfix\nPour installer Postfix sur Debian, vous devez utiliser le gestionnaire de paquets APT (Advanced Package Tool). Voici comment vous pouvez procéder : La première commande met à jour la liste des paquets disponibles dans les dépôts Debian, et la deuxième commande \"apt install\" installe Postfix ainsi que ces dépendances. Choisir Entrer la valeur FQDN de votre adresse de serveur si vous devez relancer la configuration de Postfix\n sudo dpkg-reconfigure postfix\n \nPour supprimer Sendmail, vous pouvez utiliser la commande suivante : Cette commande supprime le programme Sendmail de votre système Debian. Après avoir installé Postfix, vous devrez configurer ces logiciels pour les adapter à vos besoins spécifiques.\nConfigurer Postfix\nLes fichiers de configuration de postfix sont stockés dans /etc/postfix. Les deux principaux fichiers de configuration de postfix sont master.cf et main.cf, bien que nous ne traiterons que de main.cf ici. Tout d'abord, nous allons ajouter ou modifier certaines lignes dans le fichier de configuration main.cf. Les lignes suivantes doivent être ajoutées, modifiées ou décommentées :\nTests\nFaire un essai d'envoi de mail\n echo \"Le contenu du mail\" | mail -s \"ceci est le sujet\" mail@domaine.tld Le programme mail est une composante du package mailutils. Donc, si le programme n'est pas installer sur la machine, utilisez \n- Pour modifier un paramètre dans Postfix, il faut éditer le fichier de configuration\n sudo nano /etc/postfix/main.cf\n \nRedémarrer le service\n sudo systemctl restart postfix\n \n Gestion des Alias\nAjouter dans le fichier de configuration de Postfix, virtualaliasmaps = hash:/etc/postfix/virtual\n \nPuis ajouter dans le fichier les alias désirés tel que le modèle suivant : Enfin, exécuter le bloc suivant. Il sera nécessaire de l’exécuter à chaque modifications effectuées du fichier .\n sudo postmap /etc/postfix/virtual\n sudo systemctl restart postfix Mails en attente\nPour connaître les mails en attente\n sudo postqueue -p\n- Pour traiter tous les mails en attente\n sudo postqueue -f\n- Pour supprimer tous les mails en attente\n sudo postsuper -d ALL Reprise de la configuration de Postfix\nLe fichier de configuration de Postfix est . Il est éditable par nano ou vim. On va le reprendre pour configurer Postfix.\n-- myhostname = myserver.example.com Il est important que l'option corresponde au FQDN (fully qualified domain name) du serveur. La valeur à renseigner et celle qui renvoyée par la commande :\n nslookup 91.134.243.56\n|\n \nDans l'exemple précédent, le serveur est noté dans le Cette information est gérée par le serveur DNS Cette option se trouve les paramètres , chez kimsufi.com \n| Cette option, reverse DNS, se trouve dans les options du serveur VPS de vos serveurs dédiés, chez ovh.com\n|\n|\n-- Configurer le nom du serveur SMTP, domaine à afficher dans le courrier sortant myorigin = example.com Configuer le nom du serveur SMTP mydomain = example.com Configure to which SMTP domains to relay messages to, for example: relaydomains = example.com\n-- Configuration minimaliste du SMTP Greeting Banner: smtpdbanner = $myhostname\n-- Limiter les attaques par déni de services : Consulter le fichier log\nLe fichier log standard de postfix est Vous pouvez garder un oeuil sur les logs\n sudo tail -f /var/log/mail.info&\n \n \nEnvoyer un mail\nIl y a deux possibilités :\nenvoie depuis un client : mail\nconnexion en Telnet sur le serveur SMTP L'utilitaire mail fait parti de la suite mailutils\n sudo apt install mailutils\n-- Utilisation de l'utilitaire mail depuis un poste client. Pour envoyer un mail à de la part de \n echo \"This is the message body\" | mail -s \"This is the subject\" mail@example.com -aFrom:sender@example.com\n \nPour envoyer un mail à \n echo \"This is the message body\" | mail -s \"Hello World\" username\n-- Utilisation de telnet pour se connecter sur le serveur SMTP telnet mail.mymailserver.com 25\n \nPuis saisir les commandes SMTP EHLO checkeremail.com MAIL FROM:<sender@mailserver.fr> RCPT TO:<dest@mymailserver.com> DATA\n Subject: Sending an email using telnet\n Hello,\n Here is my body? Do you like it?\n Cédric\n . QUIT Vider tous les mails\nVider tous les mails présents dans la boite d'un utilisateur. On considère que la boite mail (mbox) de l'utilisateur se trouve dans le fichier sudo sh -c \"> /var/mail/www-data\" Gestion des certificats\nPour configurer Postfix et Certbot pour utiliser les certificats SSL/TLS de \"smtp.monserveur.fr\" avec Let's Encrypt, suivez ces étapes générales. Assurez-vous d'avoir les droits nécessaires sur le serveur et que vous êtes à l'aise avec l'édition de fichiers de configuration en ligne de commande. Configurer Postfix pour utiliser SSL/TLS\n1. Accédez à la configuration de Postfix:\nConnectez-vous à votre serveur en tant que sudouser.\nOuvrez le fichier de configuration principal de Postfix avec un éditeur de texte, tel que ou . Le fichier est généralement situé à . 2. Définissez les chemins des certificats:\nLocalisez ou ajoutez les lignes suivantes dans pour spécifier l'emplacement des fichiers de certificat et de clé privée (remplacez les chemins par les vôtres si nécessaire) :\nActivez l'utilisation de TLS en ajoutant ou en s'assurant que la ligne suivante est présente : 3. Redémarrez Postfix:\nSauvegardez vos modifications et fermez le fichier.\nExécutez la commande pour appliquer les modifications. Configurer Dovecot pour SSL/TLS\nSi vous utilisez Dovecot comme serveur IMAP/POP3 : 1. Les fichiers de configuration de Dovecot se trouvent généralement dans . Le fichier principal de configuration est souvent nommé , et il peut inclure d'autres fichiers de configuration situés dans . 2. Dans les fichiers de configuration de Dovecot, vous devrez trouver et modifier les lignes qui définissent le chemin du certificat SSL et de la clé privée. Recherchez quelque chose comme ceci : Pensez à désactiver la configuration présente dans . 3. Redémarrez Dovecot avec . 4. Après le redémarrage, assurez-vous que tout fonctionne comme prévu. Vous pouvez vérifier que Dovecot écoute avec le nouveau certificat en vous connectant avec un client de messagerie ou en utilisant OpenSSL : Configurer Let's Encrypt pour le renouvellement automatique\n1. Certbot gère généralement les renouvellements automatiquement. Cependant, vous pouvez personnaliser ou ajouter des scripts de renouvellement dans le dossier de hooks de renouvellement. 2. Scripts de renewal-hooks:\nPlacez les scripts personnalisés dans . Vous pouvez avoir des scripts , , et pour s'exécuter avant, pendant, et après le renouvellement.\nUn script typique dans pourrait redémarrer Postfix et Dovecot pour appliquer les nouveaux certificats. Voir les pages : \nSi vous avez deux scripts distincts, et et vous souhaitez exécuter les deux après le renouvellement de certificat Let's Encrypt par Certbot, vous pouvez configurer les hooks dans le fichier de configuration de renouvellement de Certbot ou les placer dans les répertoires de hook appropriés. Vous devriez ajouter des lignes pour posthook dans la section . Votre fichier pourrait ressembler à ceci : 3. Tester le renouvellement:\nExécutez pour tester le processus de renouvellement et s'assurer que tout fonctionne comme prévu. Vérification et maintenance\nVérifiez les logs de Postfix et Dovecot pour les erreurs liées aux certificats SSL/TLS.\nAssurez-vous que les certificats se renouvellent correctement en vérifiant les dates d'expiration et en observant le comportement du système lors des renouvellements planifiés. Remarques\nFaites toujours une copie de sauvegarde des fichiers de configuration avant de les modifier.\nLes chemins exacts et les commandes peuvent varier légèrement en fonction de votre distribution Linux et de la version de vos logiciels.\nAssurez-vous que les ports nécessaires sont ouverts sur votre pare-feu pour permettre les connexions TLS/SSL. En suivant ces étapes, vous devriez être capable de configurer Postfix et Dovecot pour utiliser les certificats SSL/TLS avec Let's Encrypt, améliorant ainsi la sécurité de votre serveur de messagerie. Assurez-vous de tester votre configuration pour vérifier que tout fonctionne correctement avant de la mettre en production. Biblio\nhttps:www.tecmint.com/install-postfix-mail-server-with-webmail-in-debian/\nhttps:*wiki.centos.org/HowTos(2f)postfix.html"},"score":0.75,"snippet":"Cet article est destiné aux débutants qui veulent configurer un serveur de messagerie électronique de base. Il est préférable d'avoir une connaissance élémentaire en administration système, ainsi que la capacité d'instal…","tier":2},{"article":{"uuid":"f8423f15-05e8-469e-93e9-e1ca68504e23","slug":"git","title":"git","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-11-30 21:13:02","created_at":"2023-11-30 21:13:02","updated_at":"2023-11-30 21:13:02","plain":"Git est un système de gestion de versions qui permet de suivre les modifications apportées à des fichiers et de collaborer sur des projets informatiques de manière organisée. Il enregistre l'historique de toutes les modifications, ce qui permet de revenir en arrière en cas d'erreur et de travailler en équipe sur un même code source sans conflits majeurs. En résumé, Git est un outil essentiel pour les développeurs et d'autres personnes travaillant sur des projets informatiques pour gérer et suivre les modifications apportées aux fichiers.\nCommandes Git de base\nLorsque vous travaillez uniquement en local avec Git, vous avez généralement besoin d'un ensemble de commandes Git de base pour gérer vos dépôts locaux. Voici quelques-unes des commandes Git les plus couramment utilisées dans ce contexte :\ngit init : Cette commande initialise un nouveau dépôt Git local dans le répertoire courant. Vous l'utiliserez une seule fois au début du projet pour créer un nouveau dépôt.\ngit clone : Si vous avez déjà un dépôt distant et que vous souhaitez créer une copie locale de ce dépôt, vous pouvez utiliser la commande git clone.\ngit status : Cette commande vous permet de vérifier l'état de votre répertoire de travail par rapport au dépôt Git local. Elle vous montre les fichiers modifiés, non suivis, en attente de commit, etc.\ngit add : Utilisez cette commande pour mettre des fichiers sous suivi Git (staging area) en vue de les inclure dans le prochain commit.\ngit commit : Crée un instantané (commit) des modifications enregistrées dans la staging area. \ngit log : Cette commande affiche l'historique des commits du dépôt local, y compris les messages de commit et les informations sur les auteurs et les dates.\ngit branch : Permet de lister les branches disponibles dans votre dépôt local, et de voir sur quelle branche vous vous trouvez actuellement.\ngit checkout : Vous permet de passer d'une branche à une autre. \ngit merge : Utilisé pour fusionner une branche avec une autre. \ngit diff : Vous montre les différences entre deux commits, deux branches ou deux fichiers. \nCommandes Git avec un dépôt distant\nLorsque vous travaillez avec un dépôt distant en plus de votre dépôt local, vous devez utiliser quelques commandes supplémentaires pour synchroniser votre travail avec le dépôt distant. Voici les commandes Git les plus couramment utilisées dans ce contexte :\ngit remote : Cette commande vous permet de voir la liste des dépôts distants associés à votre dépôt local.\ngit fetch : Utilisez cette commande pour récupérer les dernières modifications du dépôt distant sans les fusionner dans votre branche actuelle. Elle met à jour vos références locales avec les modifications distantes.\ngit pull : Cette commande récupère les dernières modifications du dépôt distant et les fusionne automatiquement dans votre branche locale. C'est équivalent à exécuter git fetch suivi de git merge.\ngit push : Utilisez cette commande pour pousser vos commits locaux vers le dépôt distant. Vous devez spécifier la branche locale que vous souhaitez pousser et la branche distante vers laquelle vous voulez la pousser.\ngit clone (déjà mentionné) : Utilisez cette commande pour cloner un dépôt distant et créer une copie locale de celui-ci.\ngit branch (déjà mentionné) : Vous permet de voir les branches locales et distantes. Utilisez git branch -r pour voir les branches distantes.\ngit checkout (déjà mentionné) : Vous permet de basculer entre les branches locales et de créer de nouvelles branches.\ngit merge (déjà mentionné) : Utilisé pour fusionner les branches locales. Vous pouvez également utiliser git merge pour fusionner des branches distantes dans votre branche actuelle après avoir récupéré les modifications avec git fetch.\ngit remote add : Si vous souhaitez ajouter un nouveau dépôt distant à votre dépôt local, vous pouvez utiliser cette commande pour l'associer.\ngit remote remove : Cette commande vous permet de supprimer un dépôt distant associé à votre dépôt local.\ninit\nQue vous travailliez en collaboration avec d'autres développeurs ou que vous travailliez uniquement sur votre propre projet, vous effectuerez systématiquement une commande pour initialiser la construction de votre dépôt Git. Pour rappel, Git sait aussi bien travailler en collaboration à distance qu'en local, car il permet de gérer efficacement les versions de votre code, de suivre l'historique des modifications et de fusionner les contributions de différents collaborateurs, que ce soit sur un dépôt distant ou sur votre propre machine.\ngitignore\nLe fichier est utilisé pour spécifier des règles sur les fichiers et les répertoires que Git doit ignorer lorsqu'il suit les modifications. Les règles définies dans ce fichier indiquent à Git de ne pas inclure certains fichiers ou dossiers dans les commits, ce qui peut être utile pour exclure des fichiers de configuration locaux, des fichiers de génération automatique, des fichiers temporaires, etc. Placer le fichier à la racine du dépôt est courant car cela permet de spécifier des règles d'ignorance qui s'appliquent à l'ensemble du projet. Cependant, il est également possible d'avoir des fichiers dans des sous-répertoires si vous avez besoin de règles d'ignorance spécifiques à ces sous-répertoires.\nclone\nCe terme désigne l'action de copier ou télécharger le contenu d'un dépôt dans un dossier de travail. L'adresse d'un dépot Git peut-être par exemple . Dans le contexte de la gestion de versions et du contrôle de code source, un dépôt (ou repository en anglais) est un endroit où sont stockées toutes les informations liées à un projet, y compris les fichiers source, l'historique des versions, les branches de développement, etc. Donc, lorsque vous souhaitez cloner ce lien avec la commande , vous obtenez une copie locale de ce dépôt sur votre machine, ce qui vous permet de travailler sur le projet et de suivre les modifications localement. Par exemple : Ces commandes créent un dossier appelé \"scripts-bash\" dans le répertoire \"/projets\" et téléchargent les fichiers et dossiers du dépôt, en préservant la structure de l'arborescence telle qu'elle est définie dans le dépôt. Le dossier \"/projets/scripts-bash\" devient un dépôt Git local.\nremote\nPour collaborer avec d'autres sur Git, vous devez initialement créer un dépôt sur la plateforme de votre choix, que ce soit GitHub, GitLab, ou un dépôt géré par un service tel que Gitea. Une fois que votre dépôt distant est prêt, vous devez configurer votre dépôt local pour qu'il puisse interagir avec le dépôt distant en utilisant la commande . Cette commande permet d'établir le lien entre votre dépôt local et le dépôt distant en spécifiant son emplacement et un nom symbolique pour référencer le dépôt distant. Voici quelques exemples d'utilisation de la commande pour configurer des dépôts distants dans Git : 1. Ajouter un dépôt distant nommé \"origin\" avec une URL : 2. Voir la liste des dépôts distants configurés dans votre dépôt local : 3. Modifier l'URL d'un dépôt distant existant (par exemple, changer l'URL du dépôt \"origin\") : 4. Supprimer un dépôt distant spécifique (par exemple, supprimer le dépôt \"origin\") : 5. Renommer un dépôt distant (par exemple, renommer \"origin\" en \"new-origin\") : 6. Voir les informations détaillées sur un dépôt distant spécifique (par exemple, \"origin\") :\norigin\nDans Git, \"origin\" est généralement un nom symbolique utilisé pour faire référence par défaut au dépôt distant à partir duquel vous avez cloné votre dépôt local. Il est important de noter que \"origin\" n'est pas un terme réservé ou prédéfini par Git, mais c'est une convention couramment utilisée. Plus précisément, \"origin\" est un alias que Git utilise pour simplifier les opérations de communication avec un dépôt distant. Lorsque vous clonez un dépôt distant avec la commande , Git configure automatiquement \"origin\" pour pointer vers l'URL du dépôt distant que vous avez cloné. Cela vous permet d'accéder facilement au dépôt distant sans avoir à spécifier son URL à chaque fois que vous effectuez des opérations telles que ou . Par exemple, après avoir cloné un dépôt depuis GitHub, votre dépôt local aura par défaut \"origin\" configuré pour pointer vers l'URL du dépôt GitHub. Vous pouvez ensuite utiliser des commandes comme pour tirer les mises à jour du dépôt distant ou pour pousser vos modifications vers le dépôt distant, en utilisant simplement l'alias \"origin\". Cependant, vous pouvez également configurer d'autres dépôts distants avec des noms différents si vous travaillez avec plusieurs dépôts distants dans votre projet. \"origin\" est simplement le nom par défaut pour le dépôt distant d'origine à partir duquel vous avez cloné.\nadd, commit, push\nLes commandes add, commit et push sont des commandes essentielles dans Git qui vous permettent de gérer et de versionner vos fichiers et modifications. git add : Cette commande est utilisée pour mettre des fichiers sous suivi Git (staging area). En d'autres termes, elle permet de préparer les modifications que vous souhaitez inclure dans votre prochain commit. Vous pouvez spécifier les fichiers individuellement ou utiliser des motifs pour ajouter plusieurs fichiers à la fois. Par exemple : La première commande ajoute un fichier spécifique, la deuxième ajoute tous les fichiers dans un dossier, et la troisième ajoute tous les fichiers modifiés ou nouveaux dans le répertoire de travail. git commit : Une fois que vous avez ajouté les fichiers à la staging area avec git add, vous pouvez utiliser git commit pour créer un instantané (commit) des modifications. Chaque commit est accompagné d'un message descriptif qui explique les changements apportés. Par exemple : Cette commande crée un commit contenant les fichiers ajoutés à la staging area avec un message qui décrit la modification effectuée. git push : Cette commande est utilisée pour pousser vos commits vers un dépôt distant, comme celui sur GitHub, GitLab ou un autre serveur Git. Lorsque vous effectuez des commits localement, ils ne sont pas automatiquement disponibles pour d'autres collaborateurs ou pour sauvegarde sur le serveur distant. git push permet de transférer vos commits locaux vers le dépôt distant. Par exemple : Cette commande envoie les commits de la branche locale vers la branche correspondante sur le dépôt distant.\n- Si vous souhaitez modifier l'un des scripts ou fichier dans le dépôt cloné (par exemple, le \"scripts-bash\" que vous avez cloné), suivez ces étapes : 1. Naviguez vers le répertoire où vous avez cloné le dépôt. Vous avez mentionné que vous l'avez cloné dans \"/projets/scripts-bash\". Utilisez la commande pour vous déplacer vers ce répertoire : 2. Une fois dans le répertoire du projet, vous pouvez éditer le script que vous souhaitez modifier à l'aide de l'éditeur de texte de votre choix. Par exemple, si vous utilisez l'éditeur de texte \"nano\", vous pouvez l'ouvrir en spécifiant le nom du fichier à éditer : 3. Effectuez les modifications nécessaires dans le script à l'aide de l'éditeur de texte. 4. Enregistrez les modifications et quitter l'éditeur de texte. 5. Une fois les modifications enregistrées, vous pouvez les valider en utilisant Git. Voici comment cela peut être fait :\nSi vous avez modifié un fichier existant, utilisez la commande pour ajouter les modifications au suivi Git :\nEnsuite, utilisez la commande pour enregistrer les modifications avec un message descriptif :\nEnfin, utilisez pour pousser les modifications vers le dépôt distant (si vous avez les autorisations nécessaires) : Assurez-vous de remplacer \"nomdelabranche\" par le nom de la branche sur laquelle vous souhaitez pousser les modifications.\n- En résumé, git add prépare les modifications, git commit crée un instantané des modifications avec un message, et git push envoie ces commits vers un dépôt distant. Ensemble, ces commandes permettent de gérer efficacement les versions de votre code source. Elles permettront de modifier un script dans votre dépôt Git local et de mettre à jour le dépôt distant avec vos modifications.\nEnregistrer ces identifiants durant un laps de temps en mémoire\nComme vous l'aurez remarqué, les identifiants sont systématiquement requis lorsque vous effectuez des modifications sur le serveur distant avec la commande . Vous avez la possibilité de mémoriser temporairement les identifiants de connexion Git localement en utilisant la commande . Voici comment procéder : 1. Ouvrez votre Terminal 2. Exécutez les commandes suivantes pour définir votre nom d'utilisateur et votre mot de passe pour le dépôt distant : Assurez-vous de remplacer les valeurs de , , et par les valeurs appropriées pour votre dépôt distant.\n- Une fois que vous avez exécuté ces commandes, Git stockera vos informations d'identification en mémoire de manière sécurisée localement pendant un certain temps (dans cet exemple, pendant 3600 secondes, soit 1 heure). Vous n'aurez pas besoin de saisir vos informations d'identification à chaque opération Git pendant cette période. Source : https:git-scm.com/docs/git-credential-cache/fr \nEnregistrer ces identifiants dans les gestionnaires de secrets\nGNOME Keyring Source : https:pkgs.org/search/?q=git-credential-libsecret \nEnregistrer ces identifiants dans keepassXC\nSource : https:github.com/Frederick888/git-credential-keepassxc //"},"score":0.75,"snippet":"Git est un système de gestion de versions qui permet de suivre les modifications apportées à des fichiers et de collaborer sur des projets informatiques de manière organisée. Il enregistre l'historique de toutes les modi…","tier":2},{"article":{"uuid":"f1004702-b941-46e8-8eff-7e42d2ccc91f","slug":"getopts","title":"getopts","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-11-27 18:35:31","created_at":"2023-11-27 18:35:31","updated_at":"2023-11-27 18:35:31","plain":"La commande est une commande intégrée (built-in) dans les scripts shell (en particulier dans les shells comme bash) qui permet de traiter facilement les options et les arguments passés en ligne de commande lors de l'exécution d'un script. Elle facilite la gestion des arguments de ligne de commande en permettant aux scripts d'analyser les options spécifiées par l'utilisateur. La syntaxe générale de est la suivante :\nest une chaîne qui spécifie les options que vous souhaitez gérer dans votre script. Chaque lettre dans cette chaîne représente une option, et si une lettre est suivie d'un deux-points (), cela signifie que l'option attend un argument. Par exemple, signifie que le script gère les options , , et , où attend un argument.\nest la variable que vous déclarez pour stocker la lettre de l'option actuelle pendant le traitement. Voici un exemple simple d'utilisation de dans un script bash : Dans cet exemple, le script peut être appelé avec des options comme , , ou simplement . permet de traiter chaque option de manière séquentielle, en récupérant la lettre de l'option dans la variable et en utilisant un bloc pour gérer chaque option spécifiée par l'utilisateur. Si l'utilisateur spécifie une option invalide, le script affiche un message d'erreur et se termine."},"score":0.75,"snippet":"La commande est une commande intégrée (built-in) dans les scripts shell (en particulier dans les shells comme bash) qui permet de traiter facilement les options et les arguments passés en ligne de commande lors de l'exé…","tier":2},{"article":{"uuid":"8bc6aa8c-ef15-40ea-a6c4-ca3e7c6c4657","slug":"groups","title":"groups","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-11-27 18:33:19","created_at":"2023-11-27 18:33:19","updated_at":"2023-11-27 18:33:19","plain":"La commande est utilisée pour afficher les groupes auxquels un utilisateur appartient sur un système Unix ou Linux. Lorsqu'elle est exécutée sans argument, la commande affiche les groupes de l'utilisateur courant (l'utilisateur qui exécute la commande). Voici un exemple d'utilisation de la commande : Le résultat sera une liste des groupes auxquels appartient l'utilisateur actuel, séparés par des espaces. Par exemple, si l'utilisateur courant est et qu'elle appartient aux groupes et , la commande affichera quelque chose comme ceci : La commande est utile pour vérifier rapidement les groupes auxquels un utilisateur est associé, ce qui peut être important pour comprendre ses autorisations et ses privilèges sur le système. Vous pouvez également spécifier un nom d'utilisateur en argument pour afficher les groupes auxquels un utilisateur spécifique appartient, par exemple : Cela affichera les groupes auxquels l'utilisateur appartient. Scripts\nLa commande peut être utilisée dans des scripts shell pour récupérer la liste des groupes auxquels un utilisateur appartient et utiliser ces informations dans des opérations ou des prises de décision. Voici un exemple simple de la façon dont vous pourriez utiliser dans un script : Supposons que vous ayez un script shell (par exemple, un script bash) et que vous souhaitiez effectuer une action différente en fonction des groupes auxquels l'utilisateur appartient. Voici un exemple de script qui utilise pour cela : Dans cet exemple, le script récupère la liste des groupes de l'utilisateur courant à l'aide de la commande et stocke cette liste dans la variable . Ensuite, il vérifie si l'utilisateur appartient au groupe \"admin\" en utilisant une condition . Vous pouvez personnaliser le script en fonction des groupes que vous souhaitez vérifier. L'utilisation de dans des scripts peut être utile pour personnaliser le comportement du script en fonction des autorisations ou des groupes d'utilisateurs. Assurez-vous que le script est exécuté par un utilisateur qui a la permission d'exécuter la commande , et n'oubliez pas de gérer les erreurs potentielles, notamment si l'utilisateur n'appartient à aucun groupe."},"score":0.75,"snippet":"La commande est utilisée pour afficher les groupes auxquels un utilisateur appartient sur un système Unix ou Linux. Lorsqu'elle est exécutée sans argument, la commande affiche les groupes de l'utilisateur courant (l'ut…","tier":2},{"article":{"uuid":"c515afd9-ca19-46c8-8aba-a8d5241564c3","slug":"la-ligne-de-commande","title":"- La ligne de commande","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-08-15 06:49:12","created_at":"2023-08-15 06:49:12","updated_at":"2023-08-15 06:49:12","plain":"--\nUne ligne de commande, également appelée interface en ligne de commande (CLI), est un moyen d'interagir avec un système d'exploitation en saisissant des commandes à l'aide d'un clavier au lieu d'utiliser une interface graphique. Les commandes sont généralement entrées dans un terminal ou une fenêtre de commande et exécutées par le système d'exploitation. Les commandes peuvent effectuer des tâches telles que la gestion de fichiers, la modification de paramètres de configuration, la gestion des processus et la surveillance du système. Les lignes de commandes sont utilisés à l'aide d'un interpréteur de commande (par exemple BASH). Une fois connecté à un terminal texte, un programme nommé shell est lancé automatiquement. Il permet de lancer des commandes. Syntaxe des commandes\nLa ligne de commande regroupe une ou plusieurs instructions qui sont saisies et se termine par un retour à la ligne. La commande est composée d'un nom qui décrit une action ou un programme, éventuellement suivie d'arguments. Par exemple la ligne de commande comporte la commande sans argument. La ligne de commande comporte la commande avec 2 arguments : et . La ligne de commande comporte la commande avec 1 argument, . Les arguments d'une commande peuvent être des options ou des arguments, selon le contexte dans lequel ils sont utilisés. Les options sont des arguments supplémentaires qui peuvent être utilisés pour personnaliser le comportement de la commande. Elles peuvent être courtes (précédées d'un tiret simple (-)) ou longues (précédées d'un double tiret (--)). Les arguments sont des informations nécessaires à la commande pour accomplir son travail. Ils peuvent inclure des noms de fichiers, des répertoires, des noms d'utilisateurs, etc. Par exemple, dans la commande , est une option qui demande à la commande d'afficher les fichiers et répertoires sous forme de liste détaillée, tandis que \"/home/user\" est un argument qui spécifie le répertoire à afficher. Il est important de comprendre les différences entre les options et les arguments pour utiliser correctement les commandes en ligne de commande sous Linux. Options mono-caractère\nLes options mono-caractère sont des options courtes qui peuvent être utilisées pour personnaliser le comportement des commandes en ligne de commande sous Linux. Elles sont généralement précédées d'un tiret simple (-) et peuvent être combinées pour obtenir des effets plus complexes. Par exemple, la commande peut être utilisée avec l'option mono-caractère pour afficher les fichiers et répertoires sous forme de liste détaillée. La combinaison des options et peut être utilisée pour afficher les tailles de fichier de manière lisible pour les humains. ls -l -h\n ls -h -l\n ls -lh\n ls -hl\n \nCertaines options en ligne de commande peuvent être précédées d'un signe plus (+) au lieu d'un tiret simple (-). Ce type d'options sont généralement utilisées pour ajouter ou activer des fonctionnalités supplémentaires dans les programmes. Par exemple, la commande peut être utilisée avec l'option \"+l\" pour afficher les fichiers et répertoires sous forme de liste détaillée, similaire à l'utilisation de l'option \"-l\". Il est important de noter que l'utilisation de signes plus (+) pour les options est assez rare et n'est généralement pas standard pour la plupart des commandes en ligne de commande sous Linux. La plupart des options sont précédées d'un tiret simple (-). Il est donc toujours préférable de consulter la documentation pour comprendre les options disponibles et comment les utiliser correctement. Certaines options en ligne de commande peuvent prendre une chaîne de caractères en argument. Ces options sont généralement utilisées pour fournir des informations supplémentaires au programme sur la façon de se comporter ou sur les données à utiliser. Par exemple, la commande peut être utilisée avec l'option pour rechercher une expression régulière spécifiée dans un fichier ou sur l'entrée standard. L'expression régulière est spécifiée comme une chaîne de caractères après l'option . Supposons que vous avez un fichier nommé qui contient du texte.\nPour rechercher la chaîne de caractères \"sample\" dans ce fichier, vous pouvez utiliser la commande grep avec l'option : grep -e \"sample\" file.txt Vous pouvez écrire la commande de cette façon : grep -esample file.txt\n \nCela fonctionnera de la même manière que la commande précédente, avec l'option \"-e\" suivie de la chaîne de caractères \"sample\". La commande affichera la ligne du fichier \"file.txt\" qui contient la chaîne de caractères \"sample\". Il est important de noter que le format des options qui prennent une chaîne de caractères en argument peut varier pour chaque commande. Il est donc toujours préférable de consulter la documentation pour comprendre les options disponibles et comment les utiliser correctement. Les options mono-caractère peuvent varier pour chaque commande, et il est souvent utile de consulter la documentation pour comprendre les options disponibles et comment les utiliser correctement. Les options longues\nLes options longues sont généralement précédées d'un double tiret (--) et peuvent inclure des mots entiers pour décrire plus clairement leur fonctionnement. Par exemple, la commande peut être utilisée avec l'option longue pour afficher la taille des fichiers sous forme conviviale en utilisant des unités de taille, similaire à l'utilisation de l'option . La séparation des options et des arguments\nLa séparation des options et des arguments peut être faite en utilisant un double tiret (--) pour signaler la fin des options et le début des arguments. Tout ce qui suit le double tiret est considéré comme un argument, même s'il commence par un tiret simple (-). Par exemple, considérons la commande \"cp\", qui permet de copier des fichiers d'un emplacement à un autre. Si vous souhaitez copier un fichier nommé \"-f\" à un emplacement nommé \"destination\", vous pouvez utiliser la commande suivante: cp -- -f destination Dans ce cas, le double tiret (--) signale la fin des options et le début des arguments. Le premier argument, \"-f\", est considéré comme un nom de fichier, même s'il commence par un tiret simple (-). Le second argument, \"destination\", est considéré comme l'emplacement de destination pour la copie de fichier. L'utilisation de ce double tiret peut être utile lorsqu'il est nécessaire de traiter des arguments qui commencent par un tiret simple (-), qui pourraient autrement être interprétés comme des options.\nAspect de la ligne de commandes\nSous Linux, l'invite de commande peut prendre différentes formes en fonction de la configuration. Par exemple, elle peut être configurée pour afficher le nom d'utilisateur, le nom d'hôte et le répertoire courant, ou seulement le nom d'utilisateur et le répertoire courant. La couleur et les caractères utilisés pour l'affichage peuvent également être personnalisés. Il est également possible de changer le comportement de l'invite de commande en utilisant des alias, des variables d'environnement et d'autres outils de configuration. Cela peut aider à améliorer l'efficacité et la productivité en ligne de commande. L'invite de commande\nL'invite de commande est l'endroit où les utilisateurs peuvent saisir des commandes pour interagir avec un système d'exploitation. Il s'agit généralement d'une fenêtre ou d'un terminal (appelé SHELL) qui affiche un curseur clignotant, où l'utilisateur peut saisir des commandes et les exécuter en appuyant sur la touche \"Entrée\". Les commandes saisies dans l'invite de commande sont interprétées par le système d'exploitation et exécutées en conséquence. Le dernier caractère de l'invite de commande peut être un dollar \"$\" ou un dièse \"#\". Cela dépend du niveau de privilèges de l'utilisateur actuel. Un dollar indique que l'utilisateur actuel est un utilisateur normal, sans privilèges d'administration. Un dièse indique que l'utilisateur actuel est un utilisateur avec des privilèges d'administration, également appelé \"superutilisateur\" ou \"root\". Cela aide à identifier rapidement le niveau de privilèges de l'utilisateur actuel et peut être utile pour éviter de saisir accidentellement des commandes dangereuses avec des privilèges élevés. Par exemple :\n> correspond à l'utilisateur connecté.\n> correspond au nom de l’hôte, c'est-à-dire au nom de l'ordinateur.\n> correspond au répertoire courant. Lorsqu'il est représenté par le symbole **, cela indique qu'il s'agit du dossier personnel de l'utilisateur, appelé en anglais home.\n> indique que l'utilisateur est de type normal. Avec le caractère #, il indiquera qu'il s'agit d'un super-utilisateur, identifié root. Applications avec une interface graphique\nIl est possible d'exécuter des applications avec une interface graphique depuis un shell sous Linux. Par exemple, pour exécuter une application telle que \"gedit\" avec une interface graphique depuis un shell, vous pouvez utiliser la commande suivante : gedit Cette commande ouvrira l'application fenêtrée gedit**. Cette méthode n'est pas toujours la plus pratique ou la plus efficace pour exécuter des applications avec une interface graphique depuis un shell. Dans de nombreux cas, il est plus facile de simplement cliquer sur l'icône de l'application dans le menu ou le gestionnaire de fichiers. Cependant, cette méthode peut être utile pour exécuter des applications depuis un script ou pour effectuer des tâches de ligne de commande. Les raccourcis clavier en mode texte\nIl existe de nombreux raccourcis clavier qui peuvent être utilisés en mode texte sous Linux pour effectuer des tâches rapidement et efficacement. Voici quelques-uns des raccourcis clavier les plus couramment utilisés :\n<key>Tab</key> : Complète automatiquement un nom de fichier ou de répertoire.\n<key>Up</key> : Affiche la dernière commande entrée.\n<key>Down</key> : Affiche la commande précédente entrée.\n<key>Ctrl</key> + <kbd>c</kbd> : Interrompt une commande en cours d'exécution.\n<key>Ctrl</key> + <kbd>z</kbd> : Suspend une commande en cours d'exécution et la place en arrière-plan.\n<key>Ctrl</key> + <kbd>d</kbd> : Termine une session en ligne de commande.\n<key>Ctrl</key> + <kbd>l</kbd> : Efface l'écran.\n<key>Ctrl</key> + <kbd>r</kbd> : Recherche dans l'historique des commandes.\n<kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>c</kbd> : Copie dans le presse papier la sélection.\n<kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>v</kbd> : Colle le contenu du presse papier à l'endroit du curseur. Équivalent : <kbd>Shift</kbd> + <kbd>Inser</kbd>\n<key>Ctrl</key> + <kbd>a</kbd> : Déplace le curseur au début de la ligne actuelle.\n<key>Ctrl</key> + <key>E</key> : Déplace le curseur à la fin de la ligne actuelle.\n<key>Ctrl</key> + <key>left</key> : Déplace le curseur d'un mot à gauche.\n<key>Ctrl</key> + <key>right</key> : Déplace le curseur d'un mot à droite.\n<key>Alt</key> + <key>left</key> : Déplace le curseur d'un mot à gauche en conservant les mots en entier.\n<key>Alt</key> + <key>right</key> : Déplace le curseur d'un mot à droite en conservant les mots en entier.\n<key>Ctrl</key> + <key>U</key> : Efface tout ce qui se trouve à gauche du curseur.\n<key>Ctrl</key> + <key>K</key> : Efface tout ce qui se trouve à droite du curseur.\n<key>Ctrl</key> + <key>W</key> : Efface le dernier mot à gauche du curseur.\n<key>Ctrl</key> + <key>Y</key> : Colle le dernier élément coupé ou copié. Ces raccourcis peuvent varier en fonction de la distribution Linux utilisée et du shell utilisé."},"score":0.75,"snippet":"--\nUne ligne de commande, également appelée interface en ligne de commande (CLI), est un moyen d'interagir avec un système d'exploitation en saisissant des commandes à l'aide d'un clavier au lieu d'utiliser une interface…","tier":2},{"article":{"uuid":"91efb488-90c1-49ea-8664-ff6f7a3ffeea","slug":"ssh","title":"ssh","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-05-01 06:23:56","created_at":"2023-05-01 06:23:56","updated_at":"2023-05-01 06:23:56","plain":"est un programme pour se connecter à une machine distante et pour effectuer des commandes sur cette machine. La connexion et les échanges sont sécurisés. L'identité utilisé sur le poste distant peut être différente de l'identité du poste local utilisé. La connexion nécessite d'un sur la machine distante.\nConnexions sécurisées et simplifiées grâce à l'authentification par clé publique et privée : principe\nPour simplifier et sécuriser la connexion à une machine distante, il est possible d'utiliser une méthode basée sur l'authentification par clé publique et privée. Cette approche élimine la nécessité de saisir un login et un mot de passe à chaque connexion. Au lieu de cela, la connexion SSH vérifiera votre clé privée avec la clé publique enregistrée sur le serveur distant. Cette méthode présente plusieurs avantages. Elle élimine la complexité liée à la gestion des mots de passe et permet un gain de temps considérable au quotidien. De plus, elle offre un niveau de sécurité supérieur, car les clés utilisées sont beaucoup plus robustes que les mots de passe traditionnels. Si plusieurs utilisateurs doivent accéder au serveur distant, SSH permet de gérer plusieurs paires de clés, permettant ainsi à chaque utilisateur de se connecter avec sa propre clé. Si vous avez la responsabilité de plusieurs serveurs, vous pouvez utiliser la même clé publique sur tous les serveurs. Voici un guide détaillé pour vous aider à créer un jeu de clés sur votre poste de travail. Nous allons générer deux clés : une clé privée et une clé publique. Seule la clé publique devra être déployée sur les différents serveurs, tandis que la clé privée doit être conservée précieusement sur votre ordinateur.\nCréation d'un jeu de clés ecdsa pour une connexion SSH sécurisée\nL'algorithme de signature numérique ecdsa est un nouveau standard utilisant les courbes elliptiques, réputé pour sa sécurité et sa performance. La taille maximale des clés supportées est de 521 bits, et la plupart des clients SSH le prennent en charge. Si vous préférez utiliser l'algorithme RSA, vous pouvez simplement remplacer \"ecdsa\" par \"rsa\" dans les étapes suivantes. Étape 1: Génération de la clé SSH Pour créer une clé SSH de type \"ecdsa\", vous pouvez utiliser la commande suivante avec ssh-keygen. L'option -t spécifie le type de clé, et l'option -b définit la longueur de la clé.\n- Spécification de l'emplacement du stockage de la clé (optionnel) Si vous souhaitez spécifier un emplacement particulier pour stocker la clé, vous pouvez utiliser l'option -f suivi du chemin d'accès souhaité. Par exemple :\n- Ajout d'un commentaire à la clé (optionnel) Si vous souhaitez ajouter un commentaire à la clé pour une meilleure identification, vous pouvez utiliser l'option -C suivi du commentaire souhaité. Par exemple : Étape 2: Sécurisation de la clé privée Il est crucial de sécuriser la clé privée et de limiter l'accès aux personnes autorisées à l'utiliser. Lors de la création de la clé, le programme ssh-keygen vous demandera de définir une passphrase (mot de passe) pour la clé privée. Assurez-vous d'utiliser une passphrase sécurisée et de la mémoriser. Les caractères que vous entrez n'apparaîtront pas à l'écran pour des raisons de sécurité. En suivant ces étapes, vous aurez créé un jeu de clés ecdsa pour une connexion SSH sécurisée. Veillez à bien protéger la clé privée et à utiliser une passphrase forte pour garantir la sécurité de votre connexion.\nContrôle et gestion des clés dans SSH Pour contrôler vos clés SSH et effectuer des opérations de gestion, vous pouvez suivre les étapes suivantes : Étape 1: Lister les clés présentes dans votre compte Utilisez la commande suivante dans votre terminal pour lister les clés présentes dans votre répertoire /.ssh/ : Cette commande affichera la liste des clés présentes, le cas échéant. Étape 2: Afficher le contenu d'une clé (à utiliser avec précaution) Si vous souhaitez afficher le contenu d'une clé spécifique, vous pouvez utiliser la commande suivante : Remplacez \"maCle\" par le nom de votre clé. Cependant, il est important de noter que l'affichage du contenu d'une clé publique ou privée à l'aide de la commande \"cat\" est une pratique peu recommandée en raison de la sensibilité des informations contenues dans la clé. Veillez à utiliser cette commande avec précaution et évitez de divulguer le contenu de vos clés. Il est essentiel de prendre des mesures pour sécuriser vos clés SSH, telles que la protection de la clé privée avec une passphrase et le contrôle strict des autorisations d'accès aux fichiers de clés. En suivant ces étapes, vous pouvez contrôler et gérer vos clés SSH de manière sécurisée. Veillez à respecter les bonnes pratiques en matière de gestion des clés et à prendre les mesures appropriées pour protéger vos informations sensibles.\nCopier et utiliser une clé publique avec SSH\nGuide étape par étape pour copier et utiliser une clé publique avec SSH sous Linx.\n- Pour utiliser la clé, vous devez procéder à la copie de votre clé publique vers le poste distant. La clé publique est généralement stockée dans un fichier nommé \"idrsa.pub\" situé dans le répertoire \".ssh\" de votre dossier utilisateur. L'étape suivante consiste à ajouter cette clé publique au fichier \"authorizedkeys\" du dossier \".ssh\" sur l'ordinateur distant. Voici un exemple plus détaillé du processus : 1. Tout d'abord, identifiez l'emplacement de votre clé publique. Par défaut, elle se trouve dans le fichier \"/.ssh/idrsa.pub\". 2. Ensuite, ouvrez une session sur le serveur distant en utilisant la commande SSH : Remplacez \"utilisateur\" par votre nom d'utilisateur et \"srvprod.aceinternet.fr\" par l'adresse du serveur distant. 3. Une fois connecté au serveur distant, créez le dossier \".ssh\" dans votre répertoire utilisateur s'il n'existe pas déjà : 4. Utilisez la commande \"ssh-copy-id\" pour copier votre clé publique sur le serveur distant et l'ajouter au fichier \"authorizedkeys\" : Cette commande copie le contenu de votre clé publique dans le fichier \"authorizedkeys\" sur le serveur distant, ce qui vous permettra de vous connecter sans avoir à saisir de mot de passe. Cette commande est a utiliser sur votre poste local. 5. Après avoir exécuté la commande, vous serez invité à saisir votre mot de passe pour le serveur distant une dernière fois. Entrez-le et la copie de votre clé publique sera effectuée. Une fois que vous avez suivi ces étapes, vous devriez être en mesure de vous connecter au serveur distant en utilisant votre clé privée, sans avoir à saisir votre mot de passe à chaque fois. Veuillez noter que les noms de fichiers et les chemins d'accès peuvent varier en fonction de votre configuration spécifique, mais les étapes générales restent les mêmes.\nGestion des clés SSH avec un fichier de configuration\nPour faciliter la gestion des connexions SSH, vous pouvez créer un fichier de configuration qui regroupe toutes les informations nécessaires. Voici un exemple de configuration : Ce fichier de configuration permet de spécifier les paramètres de connexion pour l'hôte distant \"srvprod.aceinternet.fr\". Les lignes suivantes indiquent respectivement le nom d'hôte, le port, le nom d'utilisateur et le chemin vers la clé privée à utiliser pour cette connexion. Il est important de protéger le fichier de configuration pour garantir la sécurité de vos informations sensibles. Vous pouvez définir les permissions appropriées en utilisant les commandes suivantes : La première commande définit les permissions du fichier de configuration de manière à ce qu'il soit accessible en lecture et écriture uniquement par le propriétaire (vous), et aucun accès en lecture pour les autres utilisateurs. La deuxième commande garantit que le fichier appartient à l'utilisateur courant. En veillant à protéger votre fichier de configuration, vous pouvez centraliser et gérer plus facilement vos connexions SSH en utilisant les paramètres spécifiés dans ce fichier. Cela simplifie également la maintenance et la modification des connexions SSH.\nConseils en cas de panne\nQue faire en cas de changement de la clé publique de l'hôte distant\nUne clé publique de l'hôte distant est un élément essentiel dans le système d'authentification et de sécurité utilisé par le protocole SSH (Secure Shell) lors des connexions à distance. Lorsque vous vous connectez à un hôte distant via SSH, l'hôte présente sa clé publique au client pour vérifier son identité. La clé publique de l'hôte distant est générée lors de la première connexion SSH à cet hôte et est ensuite stockée dans le fichier knownhosts du client. Elle est associée à une signature numérique unique qui permet d'authentifier l'hôte distant de manière sécurisée. Cette clé publique est utilisée pour chiffrer les données envoyées au serveur, assurant ainsi la confidentialité des communications. Lorsque vous vous reconnectez à l'hôte distant ultérieurement, le client SSH vérifie si la clé publique présentée par l'hôte correspond à celle enregistrée dans le fichier knownhosts. Si les clés correspondent, la connexion est établie en toute sécurité. Cependant, si la clé publique a changé depuis la dernière connexion, le client SSH émet un avertissement indiquant qu'une attaque potentielle de type \"man-in-the-middle\" est possible, et la connexion est bloquée par mesure de sécurité. La clé publique de l'hôte distant joue donc un rôle crucial dans l'établissement de connexions sécurisées via SSH. Elle permet d'authentifier l'hôte distant et de détecter tout changement potentiel dans l'identité de l'hôte. La gestion appropriée des clés publiques et la vérification de leur validité contribuent à assurer la sécurité des connexions SSH.\n- Si vous rencontrez une erreur indiquant que la clé publique de l'hôte distant a changé lors d'une tentative de connexion SSH, voici les étapes à suivre pour résoudre ce problème : 1. Tout d'abord, lorsque vous essayez de vous connecter à l'hôte distant avec la commande , vous obtenez un message d'erreur indiquant que la clé a changé et qu'une attaque de type \"man-in-the-middle\" est possible. 2. Cela signifie que la clé ECDSA (ECDSA key) utilisée pour sécuriser la connexion entre votre client et l'hôte distant a été modifiée depuis votre dernière connexion. Cette clé est stockée localement sur votre client, dans le fichier knownhosts, qui se trouve généralement dans le répertoire caché .ssh de votre utilisateur (par exemple, /home/cedric/.ssh/knownhosts). 3. Pour résoudre ce problème, vous devez réinitialiser l'entrée de l'hôte distant dans le fichier knownhosts. Vous pouvez le faire en utilisant la commande suivante : Cette commande supprimera l'enregistrement de l'hôte 192.168.100.5 du fichier knownhosts. 4. Une fois que vous avez réinitialisé l'entrée, vous pouvez vous connecter à nouveau à l'hôte distant en utilisant la commande . Cette fois-ci, la nouvelle clé publique sera enregistrée dans le fichier knownhosts, et vous devriez pouvoir vous connecter sans erreur. En suivant ces étapes, vous pourrez résoudre le problème lié au changement de la clé publique de l'hôte distant et vous reconnecter en toute sécurité.\nPossible usurpation DNS\nLorsque vous essayez de vous connecter à un hôte distant via SSH, vous pouvez rencontrer un avertissement indiquant une possible usurpation DNS. Voici le message d'erreur associé : Ce message indique que la clé de l'hôte distant \"raspberrypi\" a changé, mais l'adresse IP correspondante (192.168.100.84) est restée inchangée. Cela peut signifier deux choses : soit une usurpation DNS est en cours, soit l'adresse IP de l'hôte et sa clé de connexion ont changé simultanément. Pour résoudre ce problème, vous devez supprimer l'enregistrement associé à l'hôte en question. Vous pouvez le faire en utilisant la commande suivante : Cette commande supprimera l'enregistrement de l'hôte \"raspberrypi\" du fichier knownhosts. Une fois que vous avez supprimé l'enregistrement, vous pouvez essayer de vous reconnecter à l'hôte. Cette fois-ci, l'association entre le nom de l'hôte et sa clé sera enregistrée à nouveau dans le fichier knownhosts. Assurez-vous de suivre ces étapes pour garantir la sécurité de votre connexion SSH et éviter les risques potentiels liés à une usurpation DNS.\nChoix entre RSA et ECDSA\nLe choix entre l'utilisation d'ECDSA (Elliptic Curve Digital Signature Algorithm) ou de RSA (Rivest-Shamir-Adleman) dépend de plusieurs facteurs, notamment les considérations de sécurité et les préférences personnelles. ECDSA utilise des courbes elliptiques pour la génération de clés et les opérations de signature numérique. Il est généralement considéré comme plus efficace en termes de performances et d'utilisation de la bande passante. Les clés ECDSA sont également plus courtes que les clés RSA équivalentes, ce qui peut être avantageux dans certains cas. D'autre part, RSA est un algorithme de cryptographie asymétrique plus ancien et largement utilisé. Il est éprouvé et bien pris en charge par de nombreuses infrastructures et logiciels. RSA est généralement considéré comme étant plus sûr pour des longueurs de clé équivalentes, mais nécessite des clés plus longues pour offrir un niveau de sécurité comparable à ECDSA. En fin de compte, le choix entre ECDSA et RSA dépend de la compatibilité avec les systèmes existants, des performances souhaitées et des recommandations de sécurité spécifiques. Il est recommandé de se référer aux recommandations de sécurité en vigueur et de prendre en compte les spécifications et les exigences propres à votre environnement avant de faire un choix.\nScript Bash pour générer une clé privée SSH et configurer la connexion\nVoici un script Bash qui demande à l'utilisateur de saisir le nom de l'hôte distant, le numéro de port et son nom d'utilisateur pour se connecter via SSH. Il génère ensuite une clé privée et la pousse sur l'hôte distant. Enfin, il écrit un fichier de configuration dans le répertoire \".ssh/config\". Le nom de la clé privée générée sera basé sur le nom de l'hôte distant fourni par l'utilisateur, ce qui permet de générer des clés privées uniques pour chaque hôte distant. Par exemple, si l'utilisateur saisit \"srvprod.aceinternet.fr\" comme nom d'hôte distant, la clé privée sera enregistrée sous . Assurez-vous d'exécuter le script en tant qu'utilisateur disposant des droits nécessaires pour effectuer les opérations (par exemple, l'utilisateur courant doit pouvoir générer une clé privée, écrire dans le répertoire et copier la clé publique sur l'hôte distant)."},"score":0.75,"snippet":"est un programme pour se connecter à une machine distante et pour effectuer des commandes sur cette machine. La connexion et les échanges sont sécurisés. L'identité utilisé sur le poste distant peut être différente de l'…","tier":2},{"article":{"uuid":"7ef154a6-1b06-4b3e-b013-f246c708544a","slug":"une-contre-histoire-de-l-internet","title":"Une contre-histoire de l'Internet","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-03-14 21:30:39","created_at":"2023-03-14 21:30:39","updated_at":"2023-03-14 21:30:39","plain":"Une contre-histoire de l'Internet est un film documentaire français réalisé par Sylvain Bergère et diffusé à la télévision française pour la première fois le 14 mai 2013 sur la chaîne Arte. Ce film propose une analyse critique de l'histoire d'Internet et explore les idéologies, les mouvements et les personnages qui ont façonné l'Internet tel que nous le connaissons aujourd'hui. Le documentaire soutient que l'histoire officielle de l'Internet est souvent biaisée et laisse de côté les contributions importantes de nombreux acteurs qui ont joué un rôle clé dans son développement. Le documentaire explore également les aspects moins connus et parfois controversés de l'histoire de l'Internet, notamment la guerre froide, les mouvements anarchistes, les hackers et les activistes. Ce film examine les différents aspects de l'histoire de l'Internet, notamment l'émergence des réseaux sociaux, la lutte pour la liberté d'expression, la bataille pour le contrôle de l'Internet et l'impact des technologies de surveillance sur la vie privée. Il examine également les enjeux sociaux, politiques et économiques liés à l'utilisation de l'Internet. Dans l'ensemble, \"Une contre-histoire de l'Internet\" propose une perspective alternative sur l'histoire de l'Internet et cherche à susciter une réflexion critique sur son évolution et son utilisation dans le monde moderne.\nBenjamin Bayart (ancien président du FAI associatif French Data Network)\nJérémie Zimmermann (porte-parole de La Quadrature du Net)\nJohn Perry Barlow (cofondateur de l'Electronic Frontier Foundation)\nJulian Assange (rédacteur en chef de Wikileaks)\nLaurent Chemla (entrepreneur français du web)\nRichard Stallman (lanceur du projet GNU et président de la Free Software Foundation)\nEben Moglen (avocat de la Free Software Foundation)\nJeff Jarvis (journaliste et blogueur)\nDominique Cardon (sociologue)\nDavid Dufresne (journaliste et réalisateur de web-documentaires)\nVinton Cerf (« chef évangéliste de l'Internet chez Google et l'un des pères fondateur de l'Internet)\nDaniel Martin (créateur du département informatique de la DST)\nGénéral Jean Guyaux, dit « La Baleine » (ex-conseiller scientifique de la DST)\nJean Guisnel (journaliste français)\nOlivier Laurelli, dit « Bluetouff » (hacker, cofondateur du site web reflets.info4)\nAndy Müller-Maguhn (hacker, Chaos Computer Club de Berlin)\nPhilip Zimmermann (créateur de PGP)\nRafi Haladjian (ancien PDG de FranceNet)\nHervé Bourges (ancien président du CSA)\nValentin Lacambre (créateur du service Minitel « 3615 internet » et d'Altern.org)\nMarie-Françoise Marais (magistrate, présidente de l'HADOPI)\nOlivier Iteanu (avocat spécialiste du droit de l'Internet)\nBruce Schneier (cryptographe, spécialiste de la sécurité informatique)\nRickard Falkvinge (fondateur du Parti Pirate Suédois)\nTimo Toots (et) (artiste Estonien)\nBernard Benhamou (délégué aux usages de l'Internet en France, Ministère de la recherche)\nEmin Milli (en) (blogueur & cyber-dissident, Azerbaïdjan)\nKhadija Ismayilova (journaliste & cyber-dissidente, Azerbaïdjan)\nMarietje Schaake (eurodéputée, Pays-Bas)\nPeter Hustinx (contrôleur européen de la protection des données)\nStephane Urbach (hacktiviste, ex membre du groupe Telecomix, membre du Parti Pirate Allemand)\nMitch Altman (pionnier du mouvement des hackerspaces)"},"score":0.75,"snippet":"Une contre-histoire de l'Internet est un film documentaire français réalisé par Sylvain Bergère et diffusé à la télévision française pour la première fois le 14 mai 2013 sur la chaîne Arte. Ce film propose une analyse cr…","tier":2},{"article":{"uuid":"c220e51a-85fb-4f24-bb19-ba05491e2a3d","slug":"passwd","title":"passwd","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-03-14 07:53:28","created_at":"2023-03-14 07:53:28","updated_at":"2023-03-14 07:53:28","plain":"La commande est une commande utilisée dans les systèmes d'exploitation de type Unix, tel que Linux, pour changer le mot de passe d'un utilisateur. Lorsqu'un utilisateur exécute la commande dans un terminal, le système lui demande d'abord de saisir son ancien mot de passe pour vérifier son identité. Ensuite, il lui est demandé de saisir le nouveau mot de passe deux fois pour s'assurer qu'il a été correctement saisi. Si les deux saisies sont identiques, le système enregistre le nouveau mot de passe. Seuls les utilisateurs ayant les droits d'administration (tels que l'utilisateur dans Linux) peuvent utiliser la commande pour changer les mots de passe des autres utilisateurs. Il est généralement déconseillé d'utiliser la commande dans un script, car cela nécessiterait de saisir le mot de passe manuellement à chaque fois que le script est exécuté, ce qui peut ne pas être pratique ou sûr. Au lieu de cela, pour changer le mot de passe d'un utilisateur dans un script, il est recommandé d'utiliser la commande . Cette commande permet de changer le mot de passe d'un utilisateur en fournissant le nom d'utilisateur et le nouveau mot de passe directement en ligne de commande ou en utilisant des fichiers de texte. Changer son mot de passe\nPour changer votre mot de passe sous Linux en utilisant Bash, vous pouvez utiliser la commande . Voici les étapes à suivre :\nOuvrez un terminal Bash.\nEntrez la commande suivie de votre nom d'utilisateur Linux. Si vous êtes déjà connecté sous votre propre compte, vous pouvez omettre le nom d'utilisateur et simplement taper pour changer votre propre mot de passe. passwd nomutilisateur\nVous serez alors invité à entrer votre mot de passe actuel pour vous authentifier.\nEnsuite, vous serez invité à saisir votre nouveau mot de passe deux fois, pour confirmer qu'il est correct.\nUne fois que vous avez entré votre nouveau mot de passe, celui-ci sera mis à jour. Si tout s'est bien passé, vous devriez voir un message indiquant que votre mot de passe a été mis à jour avec succès. Vous pouvez maintenant utiliser votre nouveau mot de passe pour vous connecter à votre compte Linux. Lorsque vous changez votre mot de passe sur un système Linux, il est important de mettre à jour tous les autres secrets qui l'utilisent. Voici une liste de certains des secrets qui peuvent nécessiter une mise à jour :\nClés SSH : si vous utilisez des clés SSH pour vous connecter à des serveurs ou pour effectuer des opérations automatisées, vous devez mettre à jour les clés pour refléter votre nouveau mot de passe.\nCertificats SSL/TLS : si vous utilisez des certificats SSL/TLS pour sécuriser des connexions sur des sites web ou des applications, vous devez mettre à jour les certificats pour refléter votre nouveau mot de passe.\nConfiguration de l'application : si vous utilisez une application qui stocke votre mot de passe, vous devez mettre à jour la configuration de l'application pour refléter votre nouveau mot de passe.\nServices tiers : si vous utilisez des services tiers tels que des services de stockage de fichiers en ligne, des services de messagerie, etc., vous devez mettre à jour les informations d'identification de votre compte pour refléter votre nouveau mot de passe. Voici un exemple de script Bash qui vous permettra de mettre à jour plusieurs secrets après avoir changé votre mot de passe : Ce script utilise les commandes standard Linux pour mettre à jour les secrets courants qui peuvent nécessiter une mise à jour. Vous devez remplacer les noms de fichiers, de dossiers, d'utilisateurs, de mots de passe et autres informations par les vôtres. Vous pouvez également ajouter ou supprimer des commandes en fonction de vos besoins spécifiques. Notez que certaines commandes dans ce script nécessitent des privilèges d'administration, vous devrez donc peut-être exécuter le script avec le compte d'utilisateur ayant ces privilèges ou utiliser la commande .\nCréer un compte utilisateur\nPour créer un compte utilisateur, il est nécessaire d'utiliser le commande . Consultez la page concernant la commande useradd. Forcer un utilisateur à changer son mot de passe au prochain démarrage\nSous Linux, vous pouvez utiliser la commande \"passwd**\" avec l'option \"-e\" pour forcer un utilisateur à changer son mot de passe au prochain démarrage. La commande est généralement utilisée par un administrateur pour changer le mot de passe d'un utilisateur. Voici un exemple : Cela forcera l'utilisateur <username> à changer son mot de passe lors de sa prochaine connexion. À noter que cette commande n'affectera pas les utilisateurs connectés en ce moment. Vous pouvez vérifier le fichier de contenant les informations cryptées des utilisateurs, que la date (en jours depuis le 1er janvier 1970) à laquelle le mot de passe a été modifié pour la dernière fois soit à la valeur 0. Vous pouvez utiliser la commande avec l'option pour afficher les informations de l'utilisateur, et vérifier que la date d'expiration du mot de passe est définie sur la mention / apparaisse. Vous pouvez utiliser la commande avec l'option pour vérifier les informations de l'utilisateur, et vérifier que la date d'expiration du mot de passe est définie sur un jour antérieur à aujourd'hui (par exemple le ) . Changer de mot de passe dans un script\nVoir la commande chpasswd"},"score":0.75,"snippet":"La commande est une commande utilisée dans les systèmes d'exploitation de type Unix, tel que Linux, pour changer le mot de passe d'un utilisateur. Lorsqu'un utilisateur exécute la commande dans un terminal, le système …","tier":2},{"article":{"uuid":"68c1cbf1-f57e-4e6b-b0be-358f9da802e0","slug":"flatseal","title":"flatseal","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-03-06 20:52:58","created_at":"2023-03-06 20:52:58","updated_at":"2023-03-06 20:52:58","plain":"Flatseal est un programme pour Linux qui permet aux utilisateurs de visualiser et de modifier les autorisations des applications flatpak. Les applications flatpak sont des applications Linux qui sont empaquetées avec toutes leurs dépendances et exécutées dans un environnement sandbox isolé. L'un des avantages de l'utilisation d'applications flatpak est qu'elles sont isolées les unes des autres et des autres parties du système, ce qui réduit les risques de sécurité. Cependant, cela signifie également que les applications flatpak ont des autorisations limitées pour accéder aux ressources du système, telles que les fichiers, les caméras et les microphones. Flatseal permet aux utilisateurs de modifier ces autorisations pour chaque application flatpak individuelle afin de leur accorder un accès supplémentaire aux ressources du système si nécessaire. Flatseal propose une interface graphique simple et facile à utiliser pour visualiser et modifier les autorisations des applications flatpak, ce qui le rend particulièrement utile pour les utilisateurs qui souhaitent avoir un contrôle plus granulaire sur les applications qu'ils utilisent. Les autorisations que l'on peut paramétrer avec Flatseal dépendent des autorisations d'accès prises en charge par les applications flatpak en question. Cependant, certaines des autorisations courantes que l'on peut paramétrer avec Flatseal incluent :\n<u>Accès au réseau</u> : permet à l'application d'accéder à Internet et à d'autres ordinateurs sur le réseau.\n<u>Accès au système de fichiers</u> : permet à l'application d'accéder aux fichiers et dossiers sur le système.\n<u>Accès aux périphériques</u> : permet à l'application d'accéder aux périphériques tels que les imprimantes, les scanners, les caméras et les microphones.\n<u>Accès à la localisation</u> : permet à l'application d'accéder à la position géographique de l'utilisateur.\n<u>Notifications</u> : permet à l'application d'afficher des notifications sur le bureau.\n<u>Accès à l'interface graphique utilisateur</u> : permet à l'application d'afficher des fenêtres et des boîtes de dialogue sur l'écran. En utilisant Flatseal, les utilisateurs peuvent activer ou désactiver ces autorisations en fonction de leurs besoins et préférences individuelles, offrant ainsi un contrôle supplémentaire sur les applications qu'ils utilisent. Il est possible de remplacer Flatseal par des commandes en bash pour gérer les autorisations des applications Flatpak. Flatpak utilise la sandboxing pour isoler les applications et restreindre leur accès aux ressources système, et ces restrictions sont gérées via des autorisations configurables. Les autorisations sont définies dans des fichiers de métadonnées pour chaque application Flatpak et peuvent être modifiées à l'aide de la commande en ligne de commande. Il existe de nombreuses options disponibles pour la commande , qui permettent de personnaliser les autorisations en fonction des besoins spécifiques de chaque application. Cependant, l'utilisation de la ligne de commande pour gérer les autorisations de Flatpak peut être plus complexe que l'utilisation de Flatseal, qui fournit une interface graphique utilisateur intuitive pour gérer les autorisations.\nhttps://flathub.org/apps/details/com.github.tchx84.Flatseal Alternative en ligne de commandes\nPour modifier les options pour l'utilisateur courant en ligne de commande, utilisez : flatpak override --user <option> <application> -v Le fichier sera modifié.\n- Pour modifier l'option pour tous les utilisateurs, utilisez la commande suivante : sudo flatpak override <option> <application> -v Le fichier sera modifié.\n- Vous pouvez refuser l'accès réseau pour une application Flatpak en utilisant la commande \n sudo flatpak override --nofilesystem=xdg-run/dot-flatpak-info --filesystem=host --unshare=network <application>"},"score":0.75,"snippet":"Flatseal est un programme pour Linux qui permet aux utilisateurs de visualiser et de modifier les autorisations des applications flatpak. Les applications flatpak sont des applications Linux qui sont empaquetées avec tou…","tier":2},{"article":{"uuid":"363f55ae-817e-4f7f-ab7f-728b9de22b59","slug":"vbox","title":"Machines Virtuelles : Virtual Box","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-28 20:02:47","created_at":"2023-02-28 20:02:47","updated_at":"2023-02-28 20:02:47","plain":"Installer virtual Box\nToutes les commandes ont été effectuées par <u>>> Supprimer les anciennes versions </u> Supprimer les anciennes versions : <u>>> Purger la liste des kernel</u> Liste les kernel installés Si vous le désirez, supprimer les anciens Kernel. <u>>> Installer Virtual Box </u> Installer le dépôt de Virtual Box : <u>>> Configurer</u> Lancement de la configuration du noyau par Virtual Box : ou Résultat : <u>>> Pilotes USB 2.0</u> Récupération des pilotes depuis le site https:www.virtualbox.org/wiki/Downloads Clique sur le lien VirtualBox 5.0.6 Oracle VM VirtualBox Extension Pack Enregistrement du fichier OracleVMVirtualBoxExtensionPack-5.0.6-103037.vbox-extpack dans le dossier download. Ouvrir VitrualBox et accéder au menu Fichier -> Paramètres...\\\\ Dans la nouvelle fenêtre qui s'ouvre, sélectionner l'onget Extension Cliquer sur le bouton Adds new package. \\\\ Une boite à question s'affiche La licence Virtual Box s'affiche, défiler l'ascenceur du contenu de la licence jusqu'en bas afin de pouvoir cliquer sur J'accepte L'extension a été installée avec succès et est disponible dans la liste des extensions installée.\nAugmenter la taille d'un disque VDI avec Virtual Box\nL'objectif est d'augmenter la taille d’un disque dur au format .vdi** pour les machines virtuelles Virtual Box. Cette augmentation de la taille du disque dur nous permettra d’avoir un même système sans perte de données mais avec un espace disque plus grand. <u>>> Création du nouveau disque</u> Il faut créer un nouveau disque qui va avoir la taille que nous voudrons avoir au final sur notre VM. Pour avoir un disque de 20Go par exemple, nous sélectionnons “Contrôleur : SATA” puis nous cliquons sur l’icône avec plusieurs CD et un “+” vert. On sélectionnera ensuite “Créer un nouveau disque”. On crée ensuite notre disque en le nommant et en sélectionnant la taille voulue. A la fin de la création, on voit que notre système possède deux disques. <u>>> Clonage des disques</u> Nous allons maintenant, grâce aux commandes natives à Virtual Box, cloner l’ancien disque vers le nouveau pour que le disque plus grand que nous venons de créer ai le même contenu que l’ancien plus petit. On utilise pour cela la commande “VBoxManage” qui est fournie sur toutes les distributions à l’installation de \"VirtualBox\". Sous Linux, il suffit d’appeler la commande en étant en “root“ : Nous verrons alors une barre de progression apparaître. Une fois la barre achevée, nous pourrons retirer l’ancien disque dur en le sélectionnant dans la configuration de notre machine virtuelle puis en cliquant sur le “–” rouge sur un CD en bas de cadre. On pourra ensuite démarrer notre machine virtuelle et voir que le système est dans le même état que sur l’ancien disque. On pourra alors agrandir la taille de nos partitions avec l’outil natif Windows ou parted (CLI)/ Gparted (Desktop) sous Linux de la Machine Virtuelle."},"score":0.75,"snippet":"Installer virtual Box\nToutes les commandes ont été effectuées par <u>>> Supprimer les anciennes versions </u> Supprimer les anciennes versions : <u>>> Purger la liste des kernel</u> Liste les kernel installés Si vous le…","tier":2},{"article":{"uuid":"e952bf56-d47a-4e2e-bf11-3a6f159294b2","slug":"linux-2","title":"Linux : commandes, trucs et astuces","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-28 20:02:47","created_at":"2023-02-28 20:02:47","updated_at":"2023-02-28 20:02:47","plain":"Commandes Linux et exemples\nJe vous propose un lexiques des commandes Linux. Il regroupe l'ensemble des commandes utilisées avec des exemples de mise en œuvre. Faites vos premiers pas en ligne de commande et progresser. Trouver, mémoriser et enchaîner les commandes grâce aux exemples et conseils qui vous feront économiser du temps. Je vous conseille la lecture de l'article car il aborde une approche pédagogique qui vous permettra de progresser de manière plus efficace.\n[[informatique:langage:bash:commandes:start|]] Accéder aux Guide des solutions Linux\nUne solution est un ensemble de logiciels, programmes, utilitaires, services.. qui permettent de remplir un ensemble de fonctions. Du moment où l'installation nécessite plus d'une ligne de commande, je considère qu'il s'agit d'une solution.\nAccéder à la page Vous trouverez également divers articles concernant des produits et sites pour réaliser des solutions. nfs >>\nsous Debian et Fedora samba >>\nsous Linux Quelques programmes notables\nNom | commentaire | Fedora | Debian |\n--- | ----------- | ------ | ------ |\nShotwell | Gestionnaire de photos | oui | oui |\nSkrooge | Gestionnaire de budget et comptes bancaire | oui | en test |\nCalibre | Gestionnaire de livres numériques | oui | oui |\nGestonnaire de mots de passe | oui | oui |\nEditeur de texte, tableur, base de données... | oui | oui |\nFirefox | Naivgateur Internet HTML | oui | oui |\nThunderbird | Gestionnaire de mails | oui | oui |\nThe Gimp | Éditeur d'images | oui | oui |\nConvertisseur audio | oui | oui |\nPDF mod | Convertisseur PDF | oui | oui | Les distributions\nFedora"},"score":0.75,"snippet":"Commandes Linux et exemples\nJe vous propose un lexiques des commandes Linux. Il regroupe l'ensemble des commandes utilisées avec des exemples de mise en œuvre. Faites vos premiers pas en ligne de commande et progresser. …","tier":2},{"article":{"uuid":"da4a9b2c-17c5-4dfd-a8dd-6bce63979b4a","slug":"vider-le-cache-memoire","title":"Cache en mémoire : vider","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-28 20:02:46","created_at":"2023-02-28 20:02:46","updated_at":"2023-02-28 20:02:46","plain":"https://unix.stackexchange.com/questions/87908/how-do-you-empty-the-buffers-and-cache-on-a-linux-system To free pagecache\n sudo sh -c 'echo 1 >/proc/sys/vm/dropcaches' To free dentries and inodes\n sudo sh -c 'echo 2 >/proc/sys/vm/dropcaches' To free pagecache, dentries and inodes\n sudo sh -c 'echo 3 >/proc/sys/vm/drop_caches' dés / activer le swap\n sudo swapoff -a\n sudo swapon -a Tuer tous les process avec un nom\n sudo killall teamviewerd"},"score":0.75,"snippet":"https://unix.stackexchange.com/questions/87908/how-do-you-empty-the-buffers-and-cache-on-a-linux-system To free pagecache\n sudo sh -c 'echo 1 >/proc/sys/vm/dropcaches' To free dentries and inodes\n sudo sh -c 'echo 2 >/…","tier":2},{"article":{"uuid":"5b60ccf9-da0f-4ccc-ae9c-06af8bd09b05","slug":"installer-les-depots-22","title":"Installer les dépots Fedora 22","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-28 20:02:45","created_at":"2023-02-28 20:02:45","updated_at":"2023-02-28 20:02:45","plain":"Comment faire pour installer les dépots Fedora nécessaires aux programmes multimédia non free et autres ? RPM Fusion Free et RPM Fusion non Free\nRPM Fusion est LE dépôt indispensable ! RPM Fusion fournit de nombreux logiciels très utiles qui ne peuvent être inclus au sein du Projet Fedora pour une raison ou une autre. Il existe une distinction entre libre (free) et non-libre (nonfree). Il est nécessaire d'installer RPM Fusion Free avant RPM Fusion Non Free. Ce dépôt a le même cycle de vie que la distribution, c'est-à-dire qu'il reste accessible mais inactif pour une version N un mois après la sortie de la version N+2. Il est distinct du Projet Fedora mais respecte les mêmes règles d'empaquetage (hormis les restrictions sur les licences). Ce dépôt est la réunion des dépôt livna, dépôt freshrpms et du dépôt Dribble. Il est possible de garder ces dépôts bien que l'ensemble des paquets soient sensés être mis à jours, seul libdvdcss qui permet de lire les DVD du commerce reste sur le dépôt livna. RPM Fusion Free\nLa section libre contenant des programmes dont la licence est compatible avec le Projet Fedora mais ayant une partie de code soumise à des brevets logiciels (interdit dans le logiciel libre au États-Unis). RPM Fusion non Free\nLe non-free contient des logiciels propriétaires non packagés par la communauté Fedora. Livna\nLe dépot livna permet de compléter RPM Fusion. Google wget https:dl-ssl.google.com/linux/google-repo-setup.sh bash google-repo-setup.sh\n~~ Adobe\nAdobe. Opération finale\nEnfin, il faudra exécuter la commande suivante pour mettre à jour les paquet RPM Fusion :"},"score":0.75,"snippet":"Comment faire pour installer les dépots Fedora nécessaires aux programmes multimédia non free et autres ? RPM Fusion Free et RPM Fusion non Free\nRPM Fusion est LE dépôt indispensable ! RPM Fusion fournit de nombreux logi…","tier":2},{"article":{"uuid":"291326e5-a15d-4bd5-a5b2-33daac22716e","slug":"exit","title":"exit","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-20 07:56:51","created_at":"2023-02-20 07:56:51","updated_at":"2023-02-20 07:56:51","plain":"La commande est une commande utilisée dans le shell BASH pour quitter une session de terminal. Lorsque vous exécutez la commande , le shell BASH se termine et vous êtes retourné à l'invite de commande de votre système d'exploitation. La commande prend également un code de sortie en argument optionnel. Par exemple, si vous exécutez , cela signifie que le programme ou le script qui utilise le shell BASH s'est terminé sans erreur. Si vous spécifiez un autre code de sortie, cela indique qu'une erreur s'est produite lors de l'exécution du programme ou du script. La commande ne fonctionne que dans le shell BASH et ne peut pas être utilisée dans d'autres shells de terminal. La commande permet de quitter la session courante du shell BASH, mais elle ne ferme pas directement le terminal ou l'émulateur de terminal que vous utilisez. Une fois que vous avez exécuté la commande , la session BASH actuelle se termine et vous êtes retourné à l'interface du terminal. Cependant, si vous utilisez un terminal graphique (comme GNOME Terminal, KDE Konsole, ou iTerm2), la fermeture de la session BASH peut entraîner la fermeture du terminal si aucune autre session ou onglet n'est ouvert. Dans ce cas, la commande peut sembler fermer le terminal, mais en réalité, elle ne ferme que la session du shell en cours. La manière dont un terminal gère la fermeture des sessions et des onglets peut varier selon l'application et les paramètres de configuration.\n- Dans le shell BASH, les commandes et logout ont des fonctions similaires, mais elles ne sont pas exactement les mêmes. La commande permet de quitter la session du shell BASH en cours. Elle ferme le shell et retourne à l'invite de commande du système d'exploitation. Si vous exécutez la commande dans une session de shell, elle se termine immédiatement. La commande est souvent utilisée pour se déconnecter d'une session de terminal interactive. Elle peut être utilisée pour se déconnecter d'une session de shell, mais elle peut également fermer une session de terminal en fonction de la configuration du système. Dans de nombreux systèmes, et ont un effet similaire car ils quittent la session du shell. Cependant, il est possible que ces commandes aient des effets différents selon la configuration du système ou le shell utilisé. Par exemple, dans le shell Zsh, la commande peut être utilisée pour se déconnecter de la session de shell, mais elle ne peut pas être utilisée pour quitter une fenêtre de terminal. Exemples\n- Supposons que vous avez ouvert un terminal et que vous êtes actuellement connecté en tant que utilisateur . Vous pouvez exécuter la commande pour quitter la session du shell BASH en cours et retourner à l'invite de commande de votre système d'exploitation, comme ceci : Après avoir exécuté la commande , vous voyez l'affichage qui indique que vous avez quitté la session du shell BASH.\n- Vous pouvez également utiliser la commande avec un code de sortie en argument. Par exemple, si vous avez un script qui effectue une tâche spécifique et que vous voulez que le code de sortie soit pour indiquer que le script s'est terminé sans erreur, vous pouvez utiliser la commande , comme ceci : Dans cet exemple, la commande est utilisée pour quitter le script et renvoyer le code de sortie . Astuces\nDans un terminal ou une console, le raccourci <key>Ctrl</key> + <key>D</key> est utilisé pour envoyer un signal de fin de fichier (). Cela signifie que lorsque vous tapez ce raccourci, le terminal ou la console interprète cela comme la fin de l'entrée de données et affiche le résultat ou quitte l'interface de commande si rien n'est entré."},"score":0.75,"snippet":"La commande est une commande utilisée dans le shell BASH pour quitter une session de terminal. Lorsque vous exécutez la commande , le shell BASH se termine et vous êtes retourné à l'invite de commande de votre système d…","tier":2},{"article":{"uuid":"b244ddb9-d4a1-4531-b2b4-bce4391bd41d","slug":"useradd","title":"useradd","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-19 10:12:53","created_at":"2023-02-19 10:12:53","updated_at":"2023-02-19 10:12:53","plain":"La commande est une commande sous Linux utilisée pour créer un nouveau compte utilisateur sur le système. Elle est généralement utilisée par les administrateurs système pour ajouter de nouveaux utilisateurs, tels que des utilisateurs réguliers ou des comptes de service, au système. La syntaxe de base de la commande est la suivante : où est le nom du nouveau compte à créer, et sont des options facultatives permettant de spécifier différents paramètres pour le nouveau compte. Parmi les options courantes, on trouve :\ncommentaire : spécifie un commentaire pour le compte.\n: crée le répertoire personnel pour le compte s'il n'existe pas déjà.\nshell : spécifie le shell par défaut pour le compte.\ngroupe : spécifie le groupe principal pour le compte.\ngroupes : spécifie les groupes supplémentaires pour le compte (séparés par des virgules). Par exemple, pour créer un nouveau compte utilisateur nommé alice avec le shell Bash et le groupe principal , vous pouvez utiliser la commande suivante : Il est important de noter que la commande crée un compte utilisateur, mais ne définit pas de mot de passe pour ce compte. Il est donc recommandé de définir un mot de passe pour le compte dès que possible après sa création avec la commande passwd. Script de création de compte avancé\nVoici un exemple de script Bash qui utilise la commande useradd pour créer un compte utilisateur nommé avec un mot de passe aléatoire et stocke l'adresse e-mail de l'utilisateur demandée au préalable, envoie un mail pour le mot de passe : Ce script génère un mot de passe avec la commande qui peut générer des mots de passe aléatoires sécurisés, utilise la commande pour créer un nouveau compte utilisateur nommé avec le mot de passe aléatoire et stocke l'adresse e-mail de secours de l'utilisateur dans le fichier du répertoire de l'utilisateur, puis envoie le nouveau mot de passe par courrier électronique à l'adresse e-mail de l'utilisateur à l'aide de la commande . Exemple d'utilisation de la fonction :\n add_user \"alice\" \"Alice Doe\" \"/home/alice\" \"/bin/bash\" \"sudo,www-data\" \"alice.doe@example.com\""},"score":0.75,"snippet":"La commande est une commande sous Linux utilisée pour créer un nouveau compte utilisateur sur le système. Elle est généralement utilisée par les administrateurs système pour ajouter de nouveaux utilisateurs, tels que de…","tier":2},{"article":{"uuid":"b1b65527-7d10-44e2-814e-63d9c05a6d54","slug":"etc-profile-d","title":"/etc/profile.d/","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-19 06:56:02","created_at":"2023-02-19 06:56:02","updated_at":"2023-02-19 06:56:02","plain":"est un répertoire qui contient des fichiers shell (.sh) qui sont exécutés au démarrage de la session pour tous les utilisateurs du système. Ces fichiers peuvent contenir des variables d'environnement, des alias de commandes, des fonctions personnalisées, et d'autres paramètres de configuration pour la session de l'utilisateur. Ce genre de répertoire est souvent utilisé par les systèmes d'exploitation basés sur Linux pour permettre une meilleure gestion des fichiers de configuration, il permet de séparer les configurations en plusieurs fichiers et de les organiser dans des sous-répertoires. Cela facilite l'ajout, la suppression ou la modification de configurations spécifiques sans avoir à toucher aux fichiers de base. Il est possible de trouver ce genre de répertoire sur des distributions Linux comme Debian, Ubuntu, Fedora, RedHat, entre autres. Il est important de noter que cela dépend des paramétrages de l'administrateur système de chaque distribution. Voir également"},"score":0.75,"snippet":"est un répertoire qui contient des fichiers shell (.sh) qui sont exécutés au démarrage de la session pour tous les utilisateurs du système. Ces fichiers peuvent contenir des variables d'environnement, des alias de comman…","tier":2},{"article":{"uuid":"9a80168d-6eae-48a2-9a32-a9b1c0203784","slug":"bash-logout","title":".bash_logout","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-19 06:55:13","created_at":"2023-02-19 06:55:13","updated_at":"2023-02-19 06:55:13","plain":"est un fichier de script exécuté automatiquement par le shell Bash lorsqu'un utilisateur se déconnecte de son compte. Il est généralement utilisé pour nettoyer les variables d'environnement, les alias et les chemins d'accès, ainsi que pour effectuer d'autres tâches de nettoyage ou d'entretien avant la déconnexion. Il est généralement stocké dans le répertoire personnel de l'utilisateur, comme . Il peut être utilisé pour effectuer des tâches administratives telles que la suppression des fichiers temporaires ou pour afficher un message de bienvenue ou de déconnexion, ou pour effectuer des tâches plus importantes comme supprimer les fichiers temporaires, fermer les applications en cours d'exécution, etc. Il est important de noter que le fichier n'est pas créé par défaut et doit être créé manuellement si l'on souhaite utiliser cette fonctionnalité. Voici quelques exemples de tâches administratives qui peuvent être effectuées dans un fichier : Suppression des fichiers temporaires :\n rm -rf /.cache/ Affichage d'un message de bienvenue ou de déconnexion :\n echo \"Au revoir, à bientôt !\" Fermeture d'applications en cours d'exécution :\n killall -u $USER Suppression des fichiers temporaires :\n find /.local/share/Trash/files/ -mindepth 1 -delete Nettoyage de l'historique des commandes :\n history -c Purger les paquets inutilisés :\n sudo apt-get autoremove Il est important de noter que ces exemples sont donnés à titre indicatif et que vous devriez vous assurer de comprendre ce qu'ils font avant de les utiliser dans votre propre fichier pour éviter tout dommage potentiel à votre système. Je ne conseille de mettre aucun de ces scripts en production. Il est également conseillé de faire une sauvegarde de vos fichiers importants avant de supprimer ou de nettoyer des fichiers ou dossiers. Voir également"},"score":0.75,"snippet":"est un fichier de script exécuté automatiquement par le shell Bash lorsqu'un utilisateur se déconnecte de son compte. Il est généralement utilisé pour nettoyer les variables d'environnement, les alias et les chemins d'ac…","tier":2},{"article":{"uuid":"76ede607-4a6b-434d-b01e-82aa509f3448","slug":"105-installation-du-logiciel-arduino-ide","title":"Installer le logiciel Arduino IDE sous Linux","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-19 06:54:59","created_at":"2023-02-19 06:54:59","updated_at":"2023-02-19 06:54:59","plain":"Cet article a été testé avec les distributions suivantes\nLinux Mint 19 64 bits\nLinux Debian 9.6 (stretch) 64 bits\nMX Linux 18.3 basé sur Linux Debian 9\nZorin OS 16.1 basé sur Linux Debian Je privilégie une installation \"manuelle\" de l'application Arduino IDE afin d'utiliser une des dernières versions. Certaines options et paramètres n'apparaissent pas dans les versions packagées des distributions. J'ai eu le cas avec Debian 9.6 où je ne pouvais pas utiliser des cartes ESP 8266. Date de relecture : 15 août 2022 Il faut télécharger la version 1.8.19. Vous pouvez vérifier la dernière version disponible depuis le site <https:www.arduino.cc/en/Main/Software>. Adaptez les informations ci-dessous suivant les informations trouvées sur le site arduino.cc.\nTélécharger Arduino IDE Software\nDepuis mon dossier home ou un autre dossier personnel, je télécharge le programme Arduino IDE. Je préfère l'effectuer depuis une ligne de commande.\nDéployer Arduino IDE Software\nligne 1 : déployer Arduino IDE dans un dossier accessible à tous : . L'archive tar va extraire les fichiers dans un dossier comportant le numéro de version. ligne 3 : si un lien existait, détruit le lien sur avec unlink ligne 4 : réaliser un alias vers le dossier . De cette manière, on s'affranchit du numéro de version. Nous pouvons également déployer de nouvelles versions sans perturber la précédente. ligne 5 : exécuter le script qui permet de créer un raccourci sur le bureau graphique. <code BASH [enablelinenumbers=\"true\", startlinenumbersat=\"1\"]>\nsudo tar -xvf arduino.tar.xz -C /opt\nsudo chown -R root:root /opt/arduino-1.8.19\nsudo unlink /opt/arduino\nsudo ln -s /opt/arduino-1.8.19/ /opt/arduino\nsudo /opt/arduino/install.sh\n</code>\nProblèmes rencontrés après le déploiement\nDroits sur tty et dialout\nIl faut ajouter l'utilisateur de l'application Arduino IDE aux groupes et . L'exemple suivant permet d'ajouter l'utilisateur aux groupes et . Si vous venez de saisir les lignes de commandes , vous devez redémarrer.\nVersion de Java incorrecte\nLe message suivant peut apparaître dans l'application Arduino IDE : Il se peut que la version de Java ne soit pas bonne. Vous pouvez le vérifier avec . Toutefois, un java est intégré avec l'application Arduino IDE. ( me renvoie la version ). Il faudra peut être toutefois changer les paramètres java de l'OS.\nJ'ai testé avec OpenJDK Java 8 avec succès. Par contre Java 10 et 11 ne sont pas compatibles. Pour procéder à l'installation de Java 8 et choisir par défaut cette version :\nSerial port not selected\nDans certains cas, sous Mint, il faut désinstaller \nAucune carte n'est détectée Le câble USB peut être également non cablé pour les données (data) Pour rappel, voici le cablage d'un port USB\nExécuter votre premier programme\nVoici donc notre premier programme (celui qui est décrit dans la vidéo). Cette suite d'instructions va faire clignoter une LED branchée sur la broche 13 de l'Arduino toutes les secondes.\\\\\nIl n'est pas nécessaire de brancher une LED, car rappelez-vous, la LED sur la carte, mentionnée dans la , servira dans notre exemple sans forcément réalisée un montage électronique. Lorsque vous utilisez le logiciel Arduino, il peut être trouvé en cliquant sur . Vous pouvez également copier le code suivant dans votre éditeur : <code C basics-blink.c [enablelinenumbers=\"true\", startlinenumbersat=\"1\"]>\n/\n Clignotement\n Allume la LED pendant 1 seconde,\n puis l'éteint pendant 0,5 seconde.\n/\n \n Numéro de la broche à laquelle est\n connectée la LED\nint led = 13;\n \n le code dans cette fonction est exécuté une fois au début\nvoid setup() {\nindique que la broche de la LED une sortie :\non va modifier sa tension\n pinMode(led, OUTPUT);\n}\n \n le code dans cette fonction est exécuté en boucle\nvoid loop() {\n digitalWrite(led, HIGH); allumer la LED (tension 5V sur la broche)\n delay(1000); attendre 1000ms = 1s\n digitalWrite(led, LOW); éteindre la LED (tension 0V sur la broche)\n delay(1000); * attendre à nouveau 1seconde\n}\n</code> Deux déclaration de fonctions sont obligatoires :\nsetup\nloop Dans ce bout de code, nous appelons trois fonctions :\ndigitalWrite\npinMode\ndelay Pour exécuter ce bout de code, il faudra brancher l'Arduino sur port USB et sélectionner dans le menu , sélectionner ."},"score":0.75,"snippet":"Cet article a été testé avec les distributions suivantes\nLinux Mint 19 64 bits\nLinux Debian 9.6 (stretch) 64 bits\nMX Linux 18.3 basé sur Linux Debian 9\nZorin OS 16.1 basé sur Linux Debian Je privilégie une installation "…","tier":2},{"article":{"uuid":"3038c22f-50a4-40ab-b5c5-3acc1a844719","slug":"bash-profile","title":".bash_profile","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-19 06:54:21","created_at":"2023-02-19 06:54:21","updated_at":"2023-02-19 06:54:21","plain":"Définition et exemples\n est un fichier de configuration pour la shell , qui est utilisé sur les systèmes d'exploitation Linux. Il est situé dans le répertoire personnel de l'utilisateur et est exécuté lorsque l'utilisateur se connecte au système. Il peut être utilisé pour définir des variables d'environnement, des alias de commande, des fonctions personnalisées, et d'autres paramètres de configuration pour la session de l'utilisateur. Équivalents : , , Ne pas confondre avec : , À moins d'avoir la présence de l'indicateur —noprofile, un shell de connexion Bash lira et exécutera les commandes trouvées dans certains fichiers d'initialisation. Il est important de noter que certains système d'exploitation utilisent pour les fichiers d'initialisation du shell d'utilisateur, il est donc important de vérifier quel fichier utilise votre système d'exploitation. Quelques exemples d'utilisation :\nModifier le PATH\nAfficher le nombre de mise à jour en attente avec DNF\nAfficher le nombre de mise à jour en attente avec YMU Ordre d’exécution des fichiers d'initialisation\nSous Unix-like, comme Linux et macOS, l'ordre d'exécution des fichiers d'initialisation pour la shell Bash est généralement le suivant: 1. : Ce fichier contient des paramètres de configuration généraux pour tous les utilisateurs du système. 2. () : contient les commandes et les paramètres de configuration qui doivent être exécutés pour tous les utilisateurs du système. 3. () : contient des fichiers shell (.sh) qui sont exécutés au démarrage de la session pour tous les utilisateurs du système. 4. , , ou : Ces fichiers contiennent des paramètres de configuration spécifiques à l'utilisateur et sont exécutés dans cet ordre. Le premier fichier qui existe dans ce groupe sera utilisé. 5. () : Ce fichier contient des paramètres de configuration pour chaque session de l'utilisateur. Le fichier va normalement se sourcer dans , en lisant et en exécutant les commandes qui s'y trouvent, puis recherche dans tous les fichiers avec une extension à lire et à exécuter. De plus, le fichier se sourcera normalement dans le fichier . et ont tous deux des vérifications pour éviter le double sourçage. Ordre d’exécution des fichiers en sortie de shell\nLorsque l'utilisateur quitte le shell de connexion, ou si le script appelle la sortie intégrée dans le cas d'un shell de connexion non interactif, Bash lit et exécute les commandes trouvées dans suivi de s'il existe. 1. 2."},"score":0.75,"snippet":"Définition et exemples\n est un fichier de configuration pour la shell , qui est utilisé sur les systèmes d'exploitation Linux. Il est situé dans le répertoire personnel de l'utilisateur et est exécuté lorsque l'utilisate…","tier":2},{"article":{"uuid":"97a8f127-ee98-4b55-b565-5ff148fb8178","slug":"double-dollar","title":"$$","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-18 16:32:17","created_at":"2023-02-18 16:32:17","updated_at":"2023-02-18 16:32:17","plain":"En Bash, est une variable qui contient le PID (Process ID) du processus en cours d'exécution. Cette variable peut être utilisée pour identifier de manière unique un processus ou pour contrôler les processus enfants créés à partir du script. Par exemple, vous pouvez utiliser pour créer un fichier journal unique pour chaque instance de votre script Bash en utilisant le PID comme partie du nom du fichier. Notez cependant que le PID est une valeur dynamique qui change chaque fois que le processus est exécuté, donc ne doit être utilisé que dans le contexte du processus en cours d'exécution. Pour utiliser \"$$\" correctement dans le contexte du processus en cours d'exécution, vous pouvez le stocker dans une variable dès le début de votre script Bash. De cette façon, la variable contiendra le PID du processus en cours d'exécution tout au long du script, même si le PID change pendant l'exécution du script. Voici un exemple de code Bash montrant comment stocker \"$$\" dans une variable : Ensuite, vous pouvez utiliser la variable tout au long de votre script pour référencer le PID du processus en cours d'exécution. Notez que si votre script crée des processus enfants, le PID de ces processus enfants sera différent du PID du processus parent. Dans ce cas, vous pouvez utiliser pour référencer le PID du processus parent, et utiliser un autre mécanisme pour référencer le PID des processus enfants, comme par exemple en stockant le PID de chaque processus enfant dans un tableau ou un fichier. Pour connaître le PID du processus parent dans un script Bash, vous pouvez utiliser la variable spéciale . Cette variable contient le PID du processus parent qui a créé le processus en cours d'exécution. Voici un exemple de code Bash qui utilise pour afficher le PID du processus parent : Notez que ne fonctionne que si le processus en cours d'exécution a été créé par un processus parent dans le même système d'exploitation. Si le processus en cours d'exécution a été créé par un autre système d'exploitation ou un autre type de processus, ne sera pas défini ou aura une valeur incorrecte."},"score":0.75,"snippet":"En Bash, est une variable qui contient le PID (Process ID) du processus en cours d'exécution. Cette variable peut être utilisée pour identifier de manière unique un processus ou pour contrôler les processus enfants créé…","tier":2},{"article":{"uuid":"5b5934cf-def8-4c87-8b71-1dce20b8a1c7","slug":"symbole-e-commercial","title":"&","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-18 16:23:22","created_at":"2023-02-18 16:23:22","updated_at":"2023-02-18 16:23:22","plain":"En bash, le caractère est utilisé pour lancer un processus en arrière-plan (background). Cela signifie que le programme lancé continuera à s'exécuter en arrière-plan, sans bloquer la ligne de commande. Cela peut être utile si vous avez besoin de lancer un programme qui prend du temps à s'exécuter, mais que vous souhaitez continuer à travailler dans la même fenêtre de terminal. Par exemple, si vous tapez la commande suivante: Cela lancera le navigateur web Firefox en arrière-plan, sans bloquer la ligne de commande. Vous pourrez alors continuer à travailler dans le terminal pendant que Firefox s'exécute en arrière-plan. Si vous fermez le terminal, tous les processus lancés en arrière-plan seront également terminés. Si vous voulez lancer un processus en arrière-plan qui ne sera pas affecté par la fermeture du terminal, vous pouvez utiliser les commandes nohup ou screen. Il existe des commandes en Bash qui permettent de manipuler des programmes en arrière-plan. Voici quelques exemples :\nLa commande jobs permet d'afficher la liste des processus en arrière-plan en cours d'exécution dans le shell courant. Chaque processus est identifié par un numéro de tâche (job number) et un état (running, stopped, etc.). Vous pouvez utiliser le numéro de tâche pour interagir avec le processus en question.\nLa commande fg (pour \"foreground\") permet de ramener un processus en arrière-plan au premier plan (foreground). Si vous avez plusieurs processus en arrière-plan, vous pouvez spécifier le numéro de tâche comme argument pour indiquer lequel vous voulez ramener en premier plan. Par exemple, si vous voulez ramener le processus 2 en premier plan, vous pouvez utiliser la commande .\nLa commande bg (pour \"background\") permet de reprendre l'exécution d'un processus arrêté en arrière-plan. Si vous avez plusieurs processus en arrière-plan, vous pouvez spécifier le numéro de tâche comme argument pour indiquer lequel vous voulez reprendre. Par exemple, si vous voulez reprendre l'exécution du processus 3 en arrière-plan, vous pouvez utiliser la commande .\nLa commande kill permet d'envoyer un signal à un processus en cours d'exécution, ce qui peut permettre de l'arrêter ou de le redémarrer. Si vous avez plusieurs processus en arrière-plan, vous pouvez spécifier le numéro de tâche comme argument pour indiquer lequel vous voulez arrêter. Par exemple, si vous voulez arrêter le processus 4 en arrière-plan, vous pouvez utiliser la commande . Ces commandes peuvent être utiles pour gérer des processus en arrière-plan dans un terminal Bash."},"score":0.75,"snippet":"En bash, le caractère est utilisé pour lancer un processus en arrière-plan (background). Cela signifie que le programme lancé continuera à s'exécuter en arrière-plan, sans bloquer la ligne de commande. Cela peut être ut…","tier":2},{"article":{"uuid":"47fb7c9e-ea06-47ff-9a78-8aecb24be0de","slug":"symbole-plus-grand","title":">","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-18 16:11:22","created_at":"2023-02-18 16:11:22","updated_at":"2023-02-18 16:11:22","plain":"En Linux Bash, le symbole est utilisé pour rediriger la sortie standard d'une commande vers un fichier plutôt que vers la sortie standard par défaut. Cela peut être utile pour enregistrer la sortie d'une commande dans un fichier plutôt que de l'afficher à l'écran. Par exemple, si vous voulez exécuter une commande qui produit de la sortie et enregistrer cette sortie dans un fichier, vous pouvez utiliser la commande suivante: commande > fichierdesortie Cela redirigera la sortie de la commande vers le fichier spécifié. Si le fichier n'existe pas, il sera créé. Si le fichier existe déjà, son contenu sera écrasé. Il est également possible d'ajouter du contenu à un fichier existant plutôt que de l'écraser en utilisant au lieu de : commande >> fichierdesortie Cela ajoutera la sortie de la commande à la fin du fichier spécifié, plutôt que d'écraser son contenu. Il est possible d'utiliser la commande tee pour écrire la sortie d'une commande dans un fichier."},"score":0.75,"snippet":"En Linux Bash, le symbole est utilisé pour rediriger la sortie standard d'une commande vers un fichier plutôt que vers la sortie standard par défaut. Cela peut être utile pour enregistrer la sortie d'une commande dans u…","tier":2},{"article":{"uuid":"e6d1c362-573f-4c62-8fdb-0ad91c842498","slug":"dpkg","title":"dpkg","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-16 14:06:52","created_at":"2023-02-16 14:06:52","updated_at":"2023-02-16 14:06:52","plain":"Le programme est un outil de gestion de paquets sous Linux qui est utilisé pour installer, configurer, supprimer et gérer des paquets logiciels sur un système Debian ou dérivé de Debian. Il est utilisé en ligne de commande et fournit une interface de bas niveau pour travailler avec des fichiers de paquets Debian. En utilisant dpkg, vous pouvez installer des paquets de logiciels localement à partir de fichiers de paquets Debian (fichiers ), ainsi que gérer les paquets installés sur votre système, tels que les lister, les supprimer ou les mettre à jour. est utilisé en conjonction avec d'autres outils de gestion de paquets, tels que apt ou apt-get."},"score":0.75,"snippet":"Le programme est un outil de gestion de paquets sous Linux qui est utilisé pour installer, configurer, supprimer et gérer des paquets logiciels sur un système Debian ou dérivé de Debian. Il est utilisé en ligne de comma…","tier":2},{"article":{"uuid":"47d2e89a-160e-46b5-bf95-fdc8c08b0d4c","slug":"page-upload","title":"Serveur Web - page upload","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-16 02:42:35","created_at":"2023-02-16 02:42:35","updated_at":"2023-02-16 02:42:35","plain":"Pour créer une page PHP qui reçoit un fichier envoyé depuis un script Bash, nous pouvons utiliser la méthode HTTP POST. Voici un exemple de code qui vous aidera à démarrer : Le code ci-dessus vérifie si un fichier a été envoyé via la méthode POST et utilise la fonction PHP moveuploadedfile pour déplacer le fichier du répertoire temporaire vers un répertoire de destination sur votre serveur.\n- La création du répertoire de destination avec la fonction mkdir si celui-ci n'existe pas crée récursivement le répertoire de destination, en accordant les autorisations de lecture, d'écriture et d'exécution à tous les utilisateurs.\nSauf qu'il est peut-être nécessaire de créer ce dossier en ligne de commande dans le dossier public du site : \nLe dossier a été créé avec un complément de droit dans le Terminal .\n- Si le fichier de destination existe déjà avec la fonction fileexists, nous utilisons la fonction unlink pour le supprimer avant de déplacer le nouveau fichier avec la fonction moveuploadedfile. Ainsi, le fichier existant sera remplacé par la nouvelle version.\n- La fonction isdir permet de vérifier si le répertoire de destination n'existe pas, alors nous utilisons la fonction mkdir pour le créer, puis nous vérifions si le répertoire a été créé avec succès avant de continuer le traitement du fichier téléchargé. Si le répertoire est créé avec succès, nous continuons avec la vérification et le traitement du fichier téléchargé, sinon nous affichons un message d'erreur et sortons du script avec la fonction exit.\n- Nous avons utilisé une structure conditionnelle pour vérifier la valeur de . Si la valeur n'est pas UPLOADERROK, nous affichons un message d'erreur correspondant à la valeur d'erreur spécifique. Les constantes UPLOADERRINISIZE, UPLOADERRFORMSIZE, UPLOADERRPARTIAL, UPLOADERRNOFILE, UPLOADERRNOTMPDIR, UPLOADERRCANTWRITE, UPLOADERREXTENSION sont des constantes prédéfinies en PHP qui indiquent les différentes erreurs de téléchargement de fichier possibles. En utilisant ce code, nous pouvons afficher un message d'erreur plus précis pour aider à résoudre le problème de téléchargement de fichier.\n- Un contrôle du CRC sur un fichier téléchargé et renvoyé. Nous utilisons la fonction hashfile pour calculer la valeur SHA1 du fichier. La fonction hashfile calcule le hash d'un fichier donné à l'aide de l'algorithme de hachage spécifié. Dans notre cas, nous allons utiliser l'algorithme de hachage SHA1 pour calculer la valeur CRC du fichier.\n- Nous devons également vérifier le paramétrage de PHP.\nLa directive postmaxsize est définie dans un fichier de configuration différent. Nous pouvons utiliser la fonction phpinfo pour vérifier le fichier de configuration utilisé par PHP. Cherchez la ligne \"Loaded Configuration File\" pour trouver le fichier utilisé. La directive postmaxsize est définie dans un niveau supérieur de la hiérarchie de configuration et ne peut pas être modifiée par la fonction iniset. Par exemple, si la directive est définie dans le fichier php.ini global, elle ne peut pas être modifiée par iniset dans un script PHP.\nLa modification de la directive postmaxsize nécessite un redémarrage du serveur web pour prendre effet. Assurez-vous que le serveur web a été redémarré après avoir modifié la valeur de postmaxsize dans le fichier php.ini.\nNous avons également modifié la directive ."},"score":0.75,"snippet":"Pour créer une page PHP qui reçoit un fichier envoyé depuis un script Bash, nous pouvons utiliser la méthode HTTP POST. Voici un exemple de code qui vous aidera à démarrer : Le code ci-dessus vérifie si un fichier a été …","tier":2},{"article":{"uuid":"6742aa11-e758-48f7-a181-cd3eabbb6e3b","slug":"web-linux-apache","title":"Serveur Web Linux Apache","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-16 00:53:40","created_at":"2023-02-16 00:53:40","updated_at":"2023-02-16 00:53:40","plain":"Je vous invite à savoir comment faire pour installer et configurer un serveur Web Liuux Apache. Ceci inclus la configuration des fichiers et démarrer, arrêter et activer votre serveur httpd / Apache 2 Linux. L'association des mots Linux, Apache, MariaDB et PHP donne l'acronyme LAMP. Linux est le <u>système d'exploitation</u>, ou OS, qui permet de faire cohabiter plusieurs programmes et produire un résultat. Apache est un programme qui fonctionne de manière continue afin de <u>fournir des pages Internet</u> aux visiteurs. Sans PHP associé, les pages seraient statiques, c'est-à-dire que les pages fournies ressembleraient à du texte, sans que le texte puisse s'adapter. PHP permet de <u>rendre plus intelligent</u> le site. Et enfin, MariaDB est <u>une base de données</u>. C'est un programme qui rassemble des données par thème et peuvent être triées, extraites et modifiées via des algorithmes précis. Je vous propose une installation de ces applications, ainsi qu'un paramétrage qui vous permettra d'avoir une solution qui tient la route. C'est un premier pas afin d'avoir une solution clé en main avec les bons paramètres. Les prérequis qui ne seront pas abordés, sont les suivants :\nDebian 10 est installé sur un serveur VPS, serveur virtuel ...\nun accès ssh au serveur\nquelques notions de BASH Table des matières\nIntroduction\nServeur LAMP à installer\nApache\n1. \nPHP\n1. \n1. \n1. \n1. \nApache, optimisations\n1. \n1. \n1. \n1. \n1. \nPHP, options\n1. \nSGBD : MariaDB\n1. \n1. \n1. \nApache, https\n1. \n1. \nRéseau\n1. maintenance\napplications web\narticles obsolètes"},"score":0.75,"snippet":"Je vous invite à savoir comment faire pour installer et configurer un serveur Web Liuux Apache. Ceci inclus la configuration des fichiers et démarrer, arrêter et activer votre serveur httpd / Apache 2 Linux. L'associatio…","tier":2},{"article":{"uuid":"ab4fd4aa-8ba8-4deb-89d2-b2c7019b2afe","slug":"de-activer-group","title":"Désactiver un groupe","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-10 22:48:32","created_at":"2023-02-10 22:48:32","updated_at":"2023-02-10 22:48:32","plain":"Mode graphique\nEn <u>mode graphique</u>, il faut accéder à Groups du menu Group management. Il suffit de cliquer sur le bouton vert Enabled pour désactiver le groupe. Un message vous informe du résultat de l'opération.\nLigne de commande\nEn <u>ligne de commande</u> je vous propose la méthode suivante en deux étapes. 1. Il faut connaître l'identifiant du groupe. Voir le chapitre . Dans l'exemple ci-dessous, le groupe jeux-actifs a pour identifiant le numéro 11. 2. On modifie la valeur dans la base de données gravity, la table group comme ceci : sudo sqlite3 /etc/pihole/gravity.db \"UPDATE 'group' SET enabled=0 WHERE id='11';\" \nPlanifier et automatiser\n1. Il faut créer un script qui va activer et désactiver les groupes. Ce script doit être appelé avec une option : 0 ou 1. Par exemple :\n pihole-group.sh 0 2. Ajouter des taches CRON pour activer les groupes\n \n sudo nano /etc/cron.d/pihole-group-enable en ajoutant ces instructions 3. Ajouter des taches CRON pour désactiver les groupes\n \n sudo nano /etc/cron.d/pihole-group-disable en ajoutant ces instructions"},"score":0.75,"snippet":"Mode graphique\nEn <u>mode graphique</u>, il faut accéder à Groups du menu Group management. Il suffit de cliquer sur le bouton vert Enabled pour désactiver le groupe. Un message vous informe du résultat de l'opération.\n…","tier":2},{"article":{"uuid":"916e3aa1-e4b4-4858-bff4-e4d4e286f1b4","slug":"squid","title":"Squid","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-10 22:48:31","created_at":"2023-02-10 22:48:31","updated_at":"2023-02-10 22:48:31","plain":"Proxy à la maison\nUtiliser un proxy\nModifier le fichier pour déclarer les adresses des proxy suivant les protocoles pour les tous les utilisateurs de la machine. Ces paramètres sont considérés comme des paramètres de proxy système : Pour prendre en compte les paramètres déclarés dans le fichier : source/etc/profile.d/proxy.sh\n \nPour uniquement l'utilitaire wget, il faut modifier le fichier de configuration : Pour l'utilitaire dnf, il faut modifier le fichier de configuration : Consulter les logs\n tail -f /var/log/squid/access.log Références\nhttps:www.thegeekdiary.com/how-to-configure-proxy-server-in-centos-rhel-fedora/ https:www.liquidweb.com/kb/how-to-install-squid-caching-proxy-on-fedora-21/ https:kifarunix.com/how-to-install-and-configure-squid-proxy-on-fedora-29-fedora-28-centos-7/ https:www.server-world.info/en/note?os=Fedora_31&p=squid&f=1"},"score":0.75,"snippet":"Proxy à la maison\nUtiliser un proxy\nModifier le fichier pour déclarer les adresses des proxy suivant les protocoles pour les tous les utilisateurs de la machine. Ces paramètres sont considérés comme des paramètres de pr…","tier":2},{"article":{"uuid":"d6bcffe2-9098-42c8-a4b5-6f2e77c4bd41","slug":"20230209-verifier-la-date-d-un-certificat","title":"Vérifier la date d'un certificat","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-09 23:39:05","created_at":"2023-02-09 23:39:05","updated_at":"2023-02-09 23:39:05","plain":"Vous pouvez utiliser la commande openssl sclient pour vérifier un certificat SSL en ligne de commande bash.\n- Voici un exemple de commande pour vérifier le certificat sur le port HTTPS 443 : Cette commande se connecte à l'adresse \"www.abonnel.fr\" sur le port 443 (le port standard pour HTTPS) et affiche les informations sur le certificat SSL, y compris la date d'expiration. N'oubliez pas de remplacer \"www.abonnel.fr\" par l'adresse du site que vous souhaitez vérifier. Si la chaîne de certification n'est pas valide, vous verrez un message d'erreur similaire à \"chain validation failed\". Vous pouvez trouver plus d'informations sur les raisons de ce message d'erreur dans ma réponse ci-dessous.\n- Voici un exemple de commande pour vérifier le certificat sur le port IMAP 993 : Cette commande se connecte à l'adresse \"imap.abonnel.fr\" sur le port 993 (le port standard pour IMAPS) et affiche les informations sur le certificat SSL, y compris la date d'expiration. N'oubliez pas de remplacer \"imap.abonnel.fr\" par l'adresse du site que vous souhaitez vérifier. chain validation failed\nL'erreur \"chain validation failed**\" signifie que le certificat SSL n'a pas pu être validé en raison d'une erreur dans la chaîne de certification. Cela peut se produire pour plusieurs raisons, telles que : 1. Le certificat est expiré.\n1. Le certificat n'a pas été émis par une autorité de certification reconnue.\n1. Le nom de domaine associé au certificat ne correspond pas au nom de domaine du site que vous essayez d'atteindre.\n1. La chaîne de certification comporte des erreurs ou des problèmes de configuration. Pour résoudre ce problème, vous devrez vous assurer que le certificat SSL est valide et que la chaîne de certification est correctement configurée. Vous pouvez également vérifier la date d'expiration du certificat en utilisant les commandes que je vous ai données précédemment. Si le certificat est expiré, vous devrez obtenir un nouveau certificat valide auprès de votre autorité de certification."},"score":0.75,"snippet":"Vous pouvez utiliser la commande openssl sclient pour vérifier un certificat SSL en ligne de commande bash.\n- Voici un exemple de commande pour vérifier le certificat sur le port HTTPS 443 : Cette commande se connecte à …","tier":2},{"article":{"uuid":"3ba3a438-208a-415d-b650-ff820949bca1","slug":"dovecot","title":"Dovecot - fournisseur IMAP","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-09 23:37:17","created_at":"2023-02-09 23:37:17","updated_at":"2023-02-09 23:37:17","plain":"Dovecot est un serveur de messagerie populaire, open source basé sur le protocole IMAP (Internet Message Access Protocol). Dovecot permet aux utilisateurs de recevoir et gérer leurs emails en utilisant le protocole IMAP. IMAP est un protocole de messagerie qui permet de synchroniser les emails entre plusieurs appareils, de sorte que vous pouvez accéder à vos emails n'importe où et n'importe quand. Dovecot est une implémentation populaire et fiable de ce protocole, utilisée par de nombreux fournisseurs de messagerie pour leur service de messagerie. L'un des avantages de l'utilisation du protocole IMAP est que vous n'avez pas besoin de télécharger vos emails sur chaque appareil que vous utilisez pour les consulter. Au lieu de cela, vous pouvez accéder à vos emails en temps réel sur tous vos appareils, et les actions que vous effectuez sur un appareil (comme lire un email, le marquer comme lu, ou le déplacer dans un dossier) seront automatiquement synchronisées avec les autres appareils. Cela signifie que vous avez toujours une vue à jour de vos emails, peu importe où vous vous trouvez. Certificat IMAP\nL'utilisation d'un certificat pour IMAP est importante pour garantir la sécurité des communications entre le client et le serveur. Les certificats pour IMAP sont généralement stockés dans le répertoire de configuration de votre serveur de messagerie, qui dépend de votre implémentation spécifique d'IMAP. Sur un système Debian avec Dovecot, vous pouvez trouver les certificats dans le répertoire . Ce répertoire peut inclure des fichiers tels que le certificat SSL, la clé privée et d'autres informations de sécurité nécessaires à la configuration de Dovecot. Il est important de s'assurer que les fichiers de certificat sont protégés et accessibles uniquement aux utilisateurs autorisés pour garantir la sécurité du système. Voir l'article : \n- Vous pouvez utiliser la commande OpenSSL pour afficher les informations d'une clé privée. La syntaxe de base pour afficher les informations d'une clé privée est la suivante : openssl x509 -noout -text -in /etc/dovecot/private/dovecot.pem\n \nPour afficher uniquement les dates associées à la clé, vous pouvez utiliser la commande suivante: openssl x509 -noout -in /etc/dovecot/private/dovecot.pem -enddate -startdate Redémarrage de Dovecot\nIl est généralement conseillé de redémarrer Dovecot pour prendre en compte les mises à jour de la configuration ou pour résoudre les problèmes de fonctionnement. Cependant, il est important de faire attention à la fréquence à laquelle vous redémarrez le service, car un redémarrage excessif peut entraîner une interruption temporaire du service et affecter les utilisateurs connectés. Il est donc conseillé de programmer un redémarrage de Dovecot uniquement lorsque cela est absolument nécessaire, par exemple lorsque vous apportez des modifications importantes à la configuration ou lorsque vous effectuez des mises à jour du logiciel Dovecot. Il est également important de planifier le redémarrage de Dovecot en dehors des heures de pointe pour minimiser l'impact sur les utilisateurs. sudo systemctl restart dovecot\n- Voici un exemple de script bash pour tester la date d'expiration de et pour redémarrer le service Dovecot s'il est à moins de 10 jours de l'expiration, et pour envoyer un e-mail à si le redémarrage n'a pas résolu le problème : <code BASH [enablelinenumbers=\"true\", startlinenumbersat=\"1\"]>\n!/bin/bash delayexpiration=10 Tester la date d'expiration de mx.exemple.fr:993\nexpirationdate=$(echo | openssl sclient -connect mx.exemple.fr:993 -servername mx.exemple.fr 2>/dev/null | openssl x509 -noout -enddate | cut -d= -f2) Convertir la date d'expiration en timestamp\nexpirationtimestamp=$(date -d \"$expirationdate\" +%s) Calculer le nombre de jours restants jusqu'à l'expiration\ntodaytimestamp=$(date +%s)\ndiff=$[^note: (expirationtimestamp - todaytimestamp) / 86400 ] Si le nombre de jours restants est inférieur à 10, redémarrer Dovecot\nif [ $diff -lt $delayexpiration ]; then\n sudo systemctl restart dovecot\n # Tester à nouveau la date d'expiration de mx.exemple.fr:993\n newexpirationdate=$(echo | openssl sclient -connect mx.exemple.fr:993 -servername mx.exemple.fr 2>/dev/null | openssl x509 -noout -enddate | cut -d= -f2)\n newexpirationtimestamp=$(date -d \"$newexpirationdate\" +%s)\n newdiff=$[^note: (newexpirationtimestamp - todaytimestamp) / 86400 ]\n # Si la date d'expiration n'a pas été résolue, envoyer un e-mail à toto@exemple.fr\n if [ $newdiff -lt $delayexpiration ]; then\n echo \"Le certificat de mx.exemple.fr:993 est proche de son expiration.\" | mail -s \"[ALERTE] Expiration SSL mx.exemple.fr:993 - $newdiff jours restants\" toto@exemple.fr\n fi\nfi\n</code> Vous pouvez planifier ce script en utilisant crontab pour le faire exécuter à intervalles réguliers. Par exemple, vous pouvez le faire exécuter tous les jours à 4 heures du matin en ajoutant la ligne suivante à votre crontab :"},"score":0.75,"snippet":"Dovecot est un serveur de messagerie populaire, open source basé sur le protocole IMAP (Internet Message Access Protocol). Dovecot permet aux utilisateurs de recevoir et gérer leurs emails en utilisant le protocole IMAP.…","tier":2},{"article":{"uuid":"f6266a61-7cac-4aa3-94db-7f977f03dff3","slug":"trouver-des-doublons","title":"Trouver les doublons","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-09 23:11:08","created_at":"2023-02-09 23:11:08","updated_at":"2023-02-09 23:11:08","plain":"<panel type=\"default\" title=\"Code SQL\">\n<code SQL [enablelinenumbers=\"true\", startlinenumbersat=\"1\"]>\nSELECT COUNT() AS nbrdoublon, champ1, champ2, champ3\nFROM table\nGROUP BY champ1, champ2, champ3\nHAVING COUNT() > 1\n</code>\n</panel> <panel type=\"default\" title=\"Code SQL\">\n<code SQL [enablelinenumbers=\"true\", startlinenumbersat=\"1\"]>\nSELECT DISTINCT \nFROM table t1\nWHERE EXISTS (\n SELECT *\n FROM table t2\n WHERE t1.ID <> t2.ID\n AND t1.champ1 = t2.champ1\n AND t1.champ2 = t2.champ2\n AND t1.champ3 = t2.champ3 )\n</code>\n</panel>"},"score":0.75,"snippet":"<panel type="default" title="Code SQL">\n<code SQL [enablelinenumbers="true", startlinenumbersat="1"]>\nSELECT COUNT() AS nbrdoublon, champ1, champ2, champ3\nFROM table\nGROUP BY champ1, champ2, champ3\nHAVING COUNT()…","tier":2},{"article":{"uuid":"76fc5149-691d-41ab-adfe-12f08f473cd1","slug":"install-lutim","title":"Installer Lutim","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-09 16:12:18","created_at":"2023-02-09 16:12:18","updated_at":"2023-02-09 16:12:18","plain":"Lutim est codé en Perl, pour le faire fonctionner il est nécessaire d’installer Carton, un gestionnaire de modules Perl. Pour créer les aperçus des images après upload, il est nécessaire d’installer le logiciel ImageMagick et le module Perl qui correspond. Créez un compte utilisateur ainsi que le dossier ou dans lequel seront copiés les fichiers avec les droits d’accès correspondants. Téléchargez les fichiers de la dernière version sur le dépôt officiel (« Download zip » en bas à droite ou bien en ligne de commande avec git), copiez son contenu dans le dossier /var/www/lutim et attribuez les droits des fichiers à l’utilisateur lutim Connectez-vous avec l’utilisateur lutim : et lancez la commande d’installation des dépendances depuis le dossier Maintenant que tout est prêt, modifiez le fichier de configuration de Lutim lutim.conf avec votre éditeur de texte préféré sur le modèle du fichier lutim.conf.template. Par défaut le logiciel est configuré pour écouter sur le port 8080 de l’adresse 127.0.0.1 (localhost) et avec l’utilisateur www-data qu’il faut donc ici remplacer par lutim cp lutim.conf.template lutim.conf\nvim lutim.conf L’ensemble des paramètres sont facultatifs à l’exception du paramètre contact (pensez bien à le configurer et à le décommenter) mais il peut être utile de chiffrer systématiquement les images : alwaysencrypt => 1\nLutim en tant que service À présent, le serveur tournera lorsque qu’on lancera en tant que root cette commande : carton exec hypnotoad script/lutim Pour éviter de devoir relancer le serveur à la main à chaque redémarrage du serveur, on va donc lancer Lutim sous forme de service. Il faut pour ça copier le script utilities/lutim.init dans le fichier /etc/init.d/lutim, le rendre exécutable puis copier le fichier utilities/lutim.default dans /etc/default/lutim. cp utilities/lutim.init /etc/init.d/lutim\ncp utilities/lutim.default /etc/default/lutim Il faut maintenant modifier /etc/default/lutim pour y mettre le chemin d’installation de notre Lutim (/var/www/lutim si vous n’avez pas changé le chemin préconisé par ce tutoriel) vim /etc/default/lutim\nchmod +x /etc/init.d/lutim\nchown root:root /etc/init.d/lutim /etc/default/lutim 4 – Pailler À ce stade, si tout s’est bien passé, lorsque vous exécutez la commande service lutim start, Lutim est pleinement fonctionnel. Vous n’avez qu’à vous rendre sur l’URL http:127.0.0.1:8080 pour pouvoir l’utiliser. Nous allons maintenant configurer Lutim pour le rendre accessible depuis un nom de domaine avec Nginx (vous pouvez également utiliser Apache ou Varnish puisque seule la fonctionnalité de proxy inverse nous intéresse).\nNginx Installez le paquet : apt-get install nginx Créez le fichier de configuration de votre domaine /etc/nginx/sites-available/votre-nom-de-domaine pour y mettre ceci (en remplaçant « votre-nom-de-domaine ») et le port 8080 si vous l’avez changé dans la configuration de Lutim : server {\n listen 80 ; servername votre-nom-de-domaine ; \n root /var/www/lutim/public ; # Important pour la confidentialité des utilisateurs\n accesslog off ;\n errorlog /var/log/nginx/lutim.error.log ; # Paramètre important ! À adapter en fonction de la configuration de Lutim\n clientmaxbodysize 40M ; location ^/(img|css|font|js)/ {\n tryfiles $uri @lutim ;\n addheader Expires \"Thu, 31 Dec 2037 23:55:55 GMT\" ;\n addheader Cache-Control \"public, max-age=315360000\" ;\n } location / {\n tryfiles $uri @lutim ;\n } location @lutim {\n proxypass http:127.0.0.1:8080 ;\n proxysetheader Host $host ;\n proxysetheader X-Real-IP $remoteaddr ;\n proxysetheader X-Forwarded-For $proxyaddxforwardedfor ;\n proxysetheader X-Remote-Port $remoteport ;\n proxyredirect off ;\n }\n} Activez votre fichier : ln -s /etc/nginx/sites-available/votre-nom-de-domaine /etc/nginx/sites-enabled/votre-nom-de-domaine Enfin, relancez nginx : service restart nginx\n5 – Tailler et désherber La personnalisation de votre instance de Lutim passe par l’édition à la main des fichiers css, images et javascript qui se trouvent dans le dossier public et des fichiers du dossier templates ou public pour les fichiers statiques.. Les fichiers de langues se trouvent dans le dossier lib/Lutim/I18N. Pour pouvoir personnaliser et observer vos modifications en direct, il vous faudra stopper temporairement le service service lutim stop et le démarrer avec la commande : carton exec morbo script/lutim Le serveur écoutera alors sur http:*127.0.0.1:3000 mais vous pouvez le faire écouter sur le même port qu’avec hypnotoad pour continuer à passer par Nginx pendant votre développement : carton exec morbo script/lutim --listen=http://127.0.0.1:8080"},"score":0.75,"snippet":"Lutim est codé en Perl, pour le faire fonctionner il est nécessaire d’installer Carton, un gestionnaire de modules Perl. Pour créer les aperçus des images après upload, il est nécessaire d’installer le logiciel ImageMagi…","tier":2},{"article":{"uuid":"2e877c39-9bcd-4a72-afd4-d60214fa8f07","slug":"20230116-scripts-partages-dans-linux","title":"Scripts partagés dans Linux","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-09 15:22:31","created_at":"2023-02-09 15:22:31","updated_at":"2023-02-09 15:22:31","plain":"Vous êtes satisfait car vous avez créé vos premiers script BASH ou script PHP. Pour que tous les utilisateurs de l'ordinateur puissent les utiliser, vous pouvez les placer dans les répertoires les plus courants. Les répertoires courants\nPour que tous les utilisateurs de l'ordinateur puissent utiliser les scripts, vous pouvez les placer dans les répertoires les plus courants :\n: Ce répertoire est utilisé pour stocker les commandes et les scripts utilisateur installés. Il est accessible pour tous les utilisateurs, mais nécessite des privilèges d'administrateur pour y installer des scripts.\n: Ce répertoire est utilisé pour stocker les commandes système. Il est également accessible pour tous les utilisateurs, mais nécessite des privilèges d'administrateur pour y installer des scripts.\n: Ce répertoire est utilisé pour stocker les commandes système qui nécessitent des privilèges d'administrateur pour être exécutées. Il nécessite des privilèges d'administrateur pour y installer des scripts. Il n'y a pas de règles spécifiques pour les scripts personnels partagés. Ces répertoires ne sont pas les seuls où vous pouvez placer un script. Ils ont l'avantage d’être accessible à l'ensemble des utilisateurs tant au niveau des droits que des déclaration dans la variable PATH. La variable PATH\nLe répertoire choisi doit être déclaré dans la variable d'environnement PATH. Cela signifie que lorsque l'utilisateur exécute une commande, le système cherchera dans ce répertoire en plus des autres répertoires déjà inclus dans PATH pour trouver l'exécutable correspondant. Voir la page concernant la variable PATH Rendre exécutable un script\nIl faut rendre le script exécutable en utilisant la commande : Cette commande permet de changer les permissions d'un fichier. Pour rendre un script exécutable pour tout le monde, vous pouvez utiliser la commande suivante :\n- Pour rendre un script exécutable, il doit commencer par un shebang () qui indique au système quel interpréteur utiliser pour exécuter le script. /opt\nExtrait de la page Les répertoires dans /home/username\nLes répertoires dans peuvent également contenir des scripts personnels à partager. La contrainte et de partager le dossier et que chaque utilisateur écrive le chemin complet des scripts.\n: Ce répertoire est généralement utilisé pour stocker les commandes et les scripts utilisateur. Par défaut, il est uniquement accessible pour l'utilisateur <username> qui l'a créé, donc il n'est pas nécessaire d'avoir des privilèges d'administrateur pour y installer des scripts. Les droits peuvent être modifier sur ce dossier afin de rendre accessible les scripts de ce dossier aux autres utilisateurs de la machine.\n: Ce répertoire est généralement utilisé pour stocker les commandes et les scripts utilisateur personnels. Il est caché (car le point en début de nom) donc il n'est pas visible pour les autres utilisateurs. Il est plus adapté pour stocker des scripts qui ne doivent pas être partagés ou modifiés par d'autres utilisateurs. Le plus commun est d'utiliser un des trois dossiers cité au début de l'article."},"score":0.75,"snippet":"Vous êtes satisfait car vous avez créé vos premiers script BASH ou script PHP. Pour que tous les utilisateurs de l'ordinateur puissent les utiliser, vous pouvez les placer dans les répertoires les plus courants. Les répe…","tier":2},{"article":{"uuid":"af39250a-400d-4137-914d-e48b1f1e1ad7","slug":"tmp","title":"/tmp","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-09 15:22:31","created_at":"2023-02-09 15:22:31","updated_at":"2023-02-09 15:22:31","plain":"Le dossier sur un système Linux contient des fichiers temporaires qui sont utilisés par les programmes en cours d'exécution. Ces fichiers sont créés pour stocker des données temporaires, comme les fichiers de traitement intermédiaires, les fichiers de journalisation, les fichiers de cache, etc. Il est recommandé de supprimer les fichiers et répertoires situés dans chaque fois que le système est démarré, pour éviter l'encombrement inutile. FHS a ajouté cette recommandation sur la base de précédents historiques et de pratiques courantes, mais n'a pas fait une exigence car l'administration système n'est pas dans le cadre de cette norme. Nettoyage de /tmp au démarrage\nVous pouvez utiliser un script Bash pour supprimer tous les fichiers et répertoires dans au démarrage grâce à systemd. \nPlacer le script dans le dossier :\nCréez un fichier de service systemd pour exécuter votre script. Par exemple, dans :\nRechargez systemd pour prendre en compte le nouveau fichier de service : sudo systemctl daemon-reload\nActivez le service pour qu'il démarre au démarrage : sudo systemctl enable cleartmp.service\nVérifiez que le service est bien configuré et actif : sudo systemctl status cleartmp.service Avec cette configuration, votre script sera exécuté automatiquement au démarrage du système, et vous pourrez suivre son état et les journaux d'erreur avec les commandes de systemd."},"score":0.75,"snippet":"Le dossier sur un système Linux contient des fichiers temporaires qui sont utilisés par les programmes en cours d'exécution. Ces fichiers sont créés pour stocker des données temporaires, comme les fichiers de traitement…","tier":2},{"article":{"uuid":"0fa732ec-4033-413f-85c5-0efc89bb68f6","slug":"bash-history","title":".bash_history","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-09 15:22:30","created_at":"2023-02-09 15:22:30","updated_at":"2023-02-09 15:22:30","plain":"Le fichier est un fichier qui contient l'historique des commandes que vous avez entrées dans un terminal Bash. Cela peut être utile pour vous rappeler des commandes que vous avez utilisées récemment ou pour résoudre des problèmes en consultant l'historique des commandes. Il est stocké dans votre répertoire personnel (), et est enregistré pour chaque utilisateur séparément. Le fichier est automatiquement mis à jour chaque fois que vous exécutez une commande dans un terminal. Vous pouvez afficher le contenu de ce fichier en utilisant la commande ou pour naviguer dans le fichier, et utiliser la commande pour afficher l'historique de commande dans le terminal. Vous pouvez désactiver l'enregistrement de l'historique de commandes avec la commande . Il est important de noter que l'historique de commandes enregistrées dans ce fichier ne peut être vu que par l'utilisateur qui a exécuté les commandes. Si vous voulez que d'autres utilisateurs puissent voir l'historique de commandes, vous devrez utiliser une méthode de partage différente, comme un fichier de journal de commandes partagé. Le fichier est utilisé par les systèmes d'exploitation basés sur Linux pour enregistrer l'historique des commandes entrées par l'utilisateur dans un terminal. Il est généralement utilisé par les distributions basées sur les shells bash, comme Fedora, Ubuntu, Debian, Red Hat, CentOS, etc. A noter que la plupart des distributions basées sur Linux utilisent le shell Bash comme shell par défaut, donc il est très probable que le fichier est utilisé dans presque toutes les distributions Linux, mais il peut y avoir des exceptions. Il est possible que d'autres shells (comme zsh, fish, etc) utilisent des fichiers d'historique différents ou des méthodes différentes pour enregistrer l'historique des commandes."},"score":0.75,"snippet":"Le fichier est un fichier qui contient l'historique des commandes que vous avez entrées dans un terminal Bash. Cela peut être utile pour vous rappeler des commandes que vous avez utilisées récemment ou pour résoudre des…","tier":2},{"article":{"uuid":"d7f137b7-4624-474a-8273-63932a2a30ff","slug":"hda-intel-alsa","title":"High Definition Audio - Alsa","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-09 11:28:14","created_at":"2023-02-09 11:28:14","updated_at":"2023-02-09 11:28:14","plain":"HDA Intel remplace le codec AC97 codec. Cette spécification utilise une puce Intel, mais elle est aussi utilisée par d'autres fabricants comme Realtek, Analog Devices et C-Media. lspci | grep -i audio cat /proc/asound/pcm alsa-info.sh --no-upload alsactl --no-ucm"},"score":0.75,"snippet":"HDA Intel remplace le codec AC97 codec. Cette spécification utilise une puce Intel, mais elle est aussi utilisée par d'autres fabricants comme Realtek, Analog Devices et C-Media. lspci | grep -i audio cat /proc/asoun…","tier":2},{"article":{"uuid":"71b6fe1f-3aa7-4a8e-baab-ae9e20ac3480","slug":"comma-separated-values-csv","title":"Comma-Separated Values CSV","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-06 11:51:38","created_at":"2023-02-06 11:51:38","updated_at":"2023-02-06 11:51:38","plain":"CSV signifie \"Comma-Separated Values\" (Valeurs séparées par des virgules) et est un format de fichier simple pour stocker des données tabulaires. Les données sont stockées en lignes et en colonnes, avec chaque ligne représentant un enregistrement et chaque colonne représentant un champ dans cet enregistrement. Les colonnes sont séparées par une virgule, ce qui permet de les distinguer les unes des autres. Les fichiers CSV sont souvent utilisés pour transférer des données entre différents systèmes, car ils peuvent être lus et écrits par de nombreux logiciels différents, y compris les feuilles de calcul et les bases de données. Caractéristiques\nIl n'y a pas de versions officielles de CSV. Le format CSV est un standard ouvert qui n'a pas été développé par une organisation ou une entreprise en particulier. Cependant, il existe plusieurs implémentations du format CSV, qui peuvent varier en ce qui concerne les séparateurs de colonnes, les encodages de caractères et les règles de gestion des valeurs enveloppées dans des guillemets. Par exemple, certaines implémentations peuvent utiliser des tabulations plutôt que des virgules pour séparer les colonnes, ou peuvent utiliser des guillemets doubles plutôt que simples pour envelopper les valeurs contenant des virgules. Les caractéristiques communément admises d'un fichier CSV sont les suivantes :\nSéparateur de colonnes : Les colonnes sont séparées par une virgule, ce qui permet de distinguer les différentes valeurs dans une même ligne.\nEncodage : Les fichiers CSV sont généralement encodés en UTF-8, qui est un encodage de caractères universel qui peut gérer de nombreuses langues et scripts.\nValeurs enveloppées : Les valeurs qui contiennent des virgules, des sauts de ligne ou des guillemets sont généralement enveloppées dans des guillemets doubles. Les guillemets doubles à l'intérieur de ces valeurs sont échappées en utilisant un double guillemet.\nSaut de ligne : Les lignes sont séparées par un saut de ligne. Cela permet de stocker plusieurs enregistrements dans un même fichier CSV.\nValeur vide : Les valeurs vides sont généralement représentées par une chaîne vide entre deux virgules. Ces caractéristiques constituent une définition commune pour les fichiers CSV, mais il est important de vérifier les spécifications précises de chaque implémentation pour être sûr de leur utilisation correcte. Les sauts de lignes\nLes fichiers CSV utilisent généralement des sauts de ligne pour séparer les enregistrements. Il existe deux types de sauts de ligne couramment utilisés :\nSaut de ligne UNIX (LF) : Ce type de saut de ligne est utilisé sur les systèmes d'exploitation UNIX et Linux et est représenté par un simple retour chariot (\\n).\nSaut de ligne Windows (CRLF) : Ce type de saut de ligne est utilisé sur les systèmes d'exploitation Windows et est représenté par un retour chariot suivi d'un avance de ligne (\\r\\n). Il est important de s'assurer que le fichier CSV utilise le type de saut de ligne correct pour le système d'exploitation cible, afin d'éviter les erreurs lors de la lecture des données. Certaines applications peuvent automatiquement détecter et gérer les deux types de sauts de ligne, mais d'autres peuvent nécessiter un type spécifique. Il est possible de convertir les sauts de ligne sous Linux. Il existe plusieurs moyens de le faire, notamment en utilisant des outils en ligne de commande tels que ou . Voici un exemple de conversion de sauts de ligne Windows (CRLF) en sauts de ligne UNIX (LF) à l'aide de la commande sed : sed 's/\\r//' nomdufichier.csv > nomdufichierconverti.csv Cela remplacera tous les retours chariot (\\r) dans le fichier d'origine par des sauts de ligne (\\n), produisant ainsi un fichier converti avec des sauts de ligne UNIX. Il existe également de nombreux outils en ligne de commande et graphiques pour convertir les sauts de ligne, ainsi que des bibliothèques et des API pour des langages de programmation tels que Python, qui peuvent être utilisés pour automatiser ce processus. Voici un exemple de conversion de sauts de ligne UNIX (LF) en sauts de ligne Windows (CRLF) à l'aide de la commande sed : sed 's/$/\\r/' nomdufichier.csv > nomdufichierconverti.csv Cela ajoutera un retour chariot (\\r) à la fin de chaque ligne du fichier d'origine, produisant ainsi un fichier converti avec des sauts de ligne Windows. La première ligne\nEn ce qui concerne la première ligne des fichiers CSV, elle est généralement utilisée pour les en-têtes de colonnes, qui décrivent les différents champs de données dans le fichier. Il n'y a pas de règle de nommage strictement admise pour les en-têtes de colonnes dans les fichiers CSV, mais il existe quelques pratiques courantes pour les rendre claires et informatives :\nUtiliser des noms de colonnes significatifs : Les noms de colonnes devraient décrire le contenu des colonnes associées. Par exemple, \"nom\", \"adresse\", \"ville\" sont des noms de colonnes significatifs pour une table de contacts.\nÉviter les espaces et les caractères spéciaux : Les espaces et les caractères spéciaux peuvent poser des problèmes lors de la lecture des fichiers CSV, il est donc préférable d'utiliser des caractères alphanumériques pour les noms de colonnes.\nRespecter la casse : Il est courant d'utiliser la casse Camel pour les noms de colonnes, avec la première lettre en minuscule et les mots suivants en majuscules. Cependant, il est important de suivre une convention de nommage cohérente pour éviter les erreurs. En fin de compte, l'utilisation d'en-têtes de colonnes clairs et informatifs peut rendre les données plus faciles à comprendre et à utiliser pour les personnes qui les lisent. La casse désigne la distinction entre les lettres majuscules et minuscules dans une chaîne de caractères. Il existe plusieurs conventions de casse couramment utilisées pour les noms de variables, de fonctions et de colonnes dans les fichiers CSV :\nCamelCase : La première lettre de chaque mot est en minuscules, sauf la première, qui est en majuscules. Par exemple : \"firstName\", \"lastName\", \"postalCode\".\nsnakecase : Les mots sont séparés par des tirets bas et toutes les lettres sont en minuscules. Par exemple : \"firstname\", \"lastname\", \"postalcode\".\nALLCAPS : Toutes les lettres sont en majuscules. Par exemple : \"FIRSTNAME\", \"LASTNAME\", \"POSTALCODE\".\nPascalCase : La première lettre de chaque mot est en majuscules. Par exemple : \"FirstName\", \"LastName\", \"PostalCode\". Il est important de choisir une convention de casse pour les noms de colonnes dans un fichier CSV et de la suivre de manière cohérente. Cela peut aider à éviter les erreurs et les confusion lors de la lecture des données."},"score":0.75,"snippet":"CSV signifie "Comma-Separated Values" (Valeurs séparées par des virgules) et est un format de fichier simple pour stocker des données tabulaires. Les données sont stockées en lignes et en colonnes, avec chaque ligne repr…","tier":2},{"article":{"uuid":"b9f0369a-2823-4af4-819c-3a1fc0cf2b8c","slug":"symbole-double-et-commercial-2","title":"Paramètre && - retour du PID","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-01-09 22:35:09","created_at":"2023-01-09 22:35:09","updated_at":"2023-01-09 22:35:09","plain":"Affiche le numéro de process de l’exécution de la ligne de commande en cours. Synonyme de PID, Process IDentification en cours. Dans un programme BASH, on peut récupérer le numéro du process de l'enfant avec la variable $BASHPID"},"score":0.75,"snippet":"Affiche le numéro de process de l’exécution de la ligne de commande en cours. Synonyme de PID, Process IDentification en cours. Dans un programme BASH, on peut récupérer le numéro du process de l'enfant avec la variable …","tier":2},{"article":{"uuid":"8c0a15f3-ad50-4ea9-8e72-59778b6c4953","slug":"2012-11-01-la-video-youtube-virale","title":"Gangnam Style : La vidéo Youtube virale","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-01-07 19:23:10","created_at":"2023-01-07 19:23:10","updated_at":"2023-01-07 19:23:10","plain":"Numéro un dans la progression\nAlors qu'elle a été seulement publiée le 15/07/2012, la clip phénomène PSY - GANGNAM STYLE (강남스타일) M/V a vue son nombre de vues de manière spectaculaire. 109 jours après, ce chiffre atteint la 3ème place du podium des vidéos les plus vues sur Youtube avec 612 258 366 lectures, juste derrière Jennifer Lopez et plus loin derrière Justin Bieber. En regardant le graphe de progression, on peut fort parier qu'en fin d'année, la vidéo aura été vue plus de 1 000 000 000. J'avoue que j'ai eu du mal à l'écrire ce chiffre, mais tu as bien lu : 1 Millard de fois. Et ben voilà, c'est fait ! 653 323 322 pour PSY contre 617 185 829 pour J-Lo. Le GANGNAM STYLE est aujourd'hui le second titre le plus lu sur Youtube. Prochaine étape, Justin avec ces 796 479 362 lectures. A suivre... Doit-on faire une rédaction sur le fait qu'il ait dépassé le millard : 1 015 729 399"},"score":0.75,"snippet":"Numéro un dans la progression\nAlors qu'elle a été seulement publiée le 15/07/2012, la clip phénomène PSY - GANGNAM STYLE (강남스타일) M/V a vue son nombre de vues de manière spectaculaire. 109 jours après, ce chiffre atteint …","tier":2},{"article":{"uuid":"87a982e5-05e9-4766-965c-ed5288cdb89e","slug":"rechercher","title":"Rechercher sous Linux Terminal","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2022-11-18 07:53:20","created_at":"2022-11-18 07:53:20","updated_at":"2022-11-18 07:53:20","plain":"Sommaire\nUn petit mémo sur les recherches de fichiers en ligne de commande sous Linux avec find et grep. Pour tous les exemples de find j’utilise l’option -exec qui permet d’appliquer une autre commande (ls, rm, etc…) aux résultats de la recherche. Évidemment on n’est pas obligé.\nRecherche de fichiers et répertoires sur le nom Lister les fichiers dont le nom est « toto » à partir du répertoire courant :\n-- Pour ce type de recherche simple il ne faut pas oublier la commande locate, très rapide car elle va lire une base d’indexation au lieu de parcourir l’arborescence des répertoires. Par contre les fichiers trop récents ne seront pas forcément indexés. La commande suivante recherche tous les fichiers dont le chemin contient « toto » :\n-- Pour faire une recherche insensible à la casse on utilise -iname à la place de -name :\n-- Lister les fichiers dont l’extension est « .log » à partir du répertoire courant :\n-- Lister les répertoires dont le nom est « toto » à partir du répertoire courant :\n-- Lister les répertoires où se trouve le fichier de nom « toto » à partir du répertoire courant : ou\n-- Lister les répertoires dont le chemin contient « /local/bin » à partir du répertoire courant :\n-- On peut combiner les critères avec les opérateurs -a pour et, -o pour ou et ! pour la négation. Lister les répertoires dont le nom est « toto » qui ne sont pas un sous-répertoire de « /scripts/bash »\n--\nRecherche de gros fichiers Pour lister les fichiers de plus de 500Mo à partir du répertoire courant : Pour supprimer ces mêmes fichiers avec confirmation :\nRechercher par la date Lister les fichiers qui n’ont pas été modifiés depuis 2 mois, à partir du répertoire courant :\nComptage de fichiers Compter le nombre de fichiers du répertoire courant : Compter le nombre de fichiers pdf dans le répertoire courant et ses sous-répertoires :\nRechercher dans le contenu des fichiers avec grep Recherche les fichiers contenant « toto » dans le répertoire courant, affiche le nom du fichier et la ligne correspondante :\n-- La même chose avec une recherche récursive dans les sous-répertoires :\n-- Recherche sans tenir compte de la casse : — *Ta vie on s'en fout ! 2021/11/07 12:38:21//\nRecherche dans le contenu des fichiers ODT / LibreOffice avec grep Script à écrire dans : Puis rendre executable le script : Appeler le script dans un dossier :\nRechercher des dossiers vides Effacer les dossiers et sous-dossiers vides.\nVoir aussi\nRechercher dans des fichiers :"},"score":0.75,"snippet":"Sommaire\nUn petit mémo sur les recherches de fichiers en ligne de commande sous Linux avec find et grep. Pour tous les exemples de find j’utilise l’option -exec qui permet d’appliquer une autre commande (ls, rm, etc…) au…","tier":2},{"article":{"uuid":"647bc630-babd-4cbb-95a9-f3570eab2cb2","slug":"magazines-selection","title":"Sélection de magazines","category":"Loisirs","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2022-08-27 21:11:29","created_at":"2022-08-27 21:11:29","updated_at":"2022-08-27 21:11:29","plain":"Titre | URL | Langue | Fréquence |\n----- | --- | ------ | --------- |\nLinux Pratique\\\\ . | https:connect.ed-diamond.com/linux-pratique | Français |\nHackable\\\\ . | https:connect.ed-diamond.com/hackable | Français |\nProgrammez\\\\ . | https:www.programmez.com/ | Français | GNU/Linux Magazine https:connect.ed-diamond.com/gnu-linux-magazine\\\\ Français - Bi-Mensuel GNU/Linux Magazine 258 - juillet/août 2022\n-\nÉdito : Cache-caméra ou cache-misère ?\nPourquoi utilise-t-on GNU/Linux ? Vraiment ?\nCréer un Escape Game VR avec Godot\nDaC ou pas DaC : comment vont vos diagrammes ?\nTests unitaires avec Jest\nDécouverte et prise en main de Kivy\nLe namespace cgroup ne sera pas le dernier de la lignée Elektor https:www.elektormagazine.fr/magazine/\\\\ Français - Bi-Mensuel elektor - septembre 2022 - 497\n- Bluetooth Low Energy avec ESP32-C3 et ESP32 Vous n’avez pas toujours besoin de choisir le wifi ! Contrairement à l’ESP8266, l’ESP32-C3 est équipé d’une liaison de communication RF Bluetooth Low Energy. Si vous n’avez besoin d’envoyer que de petites quantités de données sur de courtes distances, cette norme est une alternative économe en énergie au Wi-Fi. Nous le démontrons ici avec un petit projet : un capteur de température/humidité avec un ESP32-C3 transmet ses données à un ESP32 et à un petit écran OLED. Full Circle Mag https:www.fullcirclemag.fr/\\\\ Français - Mensuel Full Circle Mag FR 183 : Juillet 2022 Mag Pi France https:www.magpi.fr/magazine Français - Mensuel MagPi N° 25 : Juillet/Août 2022 \n- The Mag Pi https:magpi.raspberrypi.com/ \\\\\nhttps:magpi.cc/ Anglais - Mensuel The MagPi magazine #121 Septembre 2022\n-\nLearn Electronics with Pico W. Pair a new Raspberry Pi Pico W with a breadboard and some components and start prototyping circuit boards.\nHaunted Halloween Party. Use Raspberry Pi and Pico to power up your party with petrifying creations.\nBuild a Raspberry Pi Radio. Use Raspberry Pi with a speaker system to play your songs and create your stings and audio indents.\nCode your Virtual Pet. Use Python to make a game based on Tamogatchi’s from the 1990s craze.\nBig Mouth Billy Bass. Use Raspberry Pi Pico to bring an interactive 3D plastic fish to life.\nPlus! Win a CrowPi L laptop kit HackSpace https:hackspace.raspberrypi.com/ Anglais - Mensuel HackSpace #58 Septembre 2022\n- As children we were told not to play with our food. As adults, we can do whatever the heck we like. Join us this month to celebrate the joy of messing around with food, whether that’s grilling cheese, making coffee, or automating the construction of tacos.\nFind things to make and do with polystyrene\nDrool over a 3D printed chocolate Jean-Luc Picard\nMake magical curiosities with double hinges\nKeep food fresh with 3D printed teeth"},"score":0.75,"snippet":"Titre | URL | Langue | Fréquence |\n----- | --- | ------ | --------- |\nLinux Pratique\\\\ . | https:connect.ed-diamond.com/linux-pratique | Français |\nHackable\\\\ . | https:connect.ed-diamond.com/hackable | Français |\nProgra…","tier":2},{"article":{"uuid":"3332dec0-2ece-4f31-8fbe-5f5aace4be55","slug":"creer-un-point-d-acces-wifi-et-routage","title":"Créer un point d'accès Wifi et routage","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2022-02-05 12:58:47","created_at":"2022-02-05 12:58:47","updated_at":"2022-02-05 12:58:47","plain":"https://thepi.io/how-to-use-your-raspberry-pi-as-a-wireless-access-point/"},"score":0.75,"snippet":"https://thepi.io/how-to-use-your-raspberry-pi-as-a-wireless-access-point/","tier":2},{"article":{"uuid":"ab80312d-1483-4187-bbe6-54bcaed793a9","slug":"specifications-esp-01","title":"ESP-01 : présentation et premiers pas","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2022-01-28 10:03","created_at":"2022-01-28 10:03:16","updated_at":"2026-05-13 18:26:30","plain":"Présentation\r\n\r\nL'ESP-01 est un module Wi-Fi compact construit autour du microcontrôleur ESP8266EX d'Espressif. Sur un PCB d'environ 24 × 14 mm, il rassemble :\r\nun microcontrôleur ESP8266EX (cœur Tensilica L106 32 bits cadencé à 80/160 MHz) ;\r\nune mémoire SPI Flash externe (généralement 1 Mo sur les versions courantes, parfois jusqu'à 4 Mo) ;\r\nune antenne PCB d'environ 2 dBi, gravée directement sur le circuit imprimé ;\r\nun connecteur 2 × 4 broches au pas de 2,54 mm.\r\nLien d'achat : ESP-01 basé sur ESP8266\r\n\r\nESP8266EX vs ESP-01 : ne pas confondre\r\n\r\nUne confusion fréquente porte sur la dénomination du produit :\r\nESP8266EX désigne le circuit intégré (le SoC) produit par Espressif. C'est la puce qui contient le processeur, la radio Wi-Fi, la RAM et les périphériques.\r\nESP-01 désigne un module : un petit PCB qui embarque l'ESP8266EX, sa mémoire flash, son antenne et un connecteur d'accès. Il est conçu et vendu par AI-Thinker, pas par Espressif.\r\n\r\nPlusieurs autres modules existent autour du même SoC (ESP-02, ESP-05, ESP-07, ESP-12, etc.). Ils diffèrent par le nombre de broches exposées, la taille de la flash, le type d'antenne et le facteur de forme. L'ESP-01 est le plus simple et le plus économique de la famille, mais aussi le plus contraint en nombre d'entrées/sorties accessibles.\r\n\r\nPourquoi un adaptateur USB est nécessaire\r\n\r\nL'ESP-01 n'expose qu'un port série UART à 3,3 V — pas d'interface USB, pas de régulateur, pas de bouton. Pour le programmer ou dialoguer avec lui depuis un ordinateur, il faut un adaptateur USB-série capable de :\r\nconvertir les niveaux USB en niveaux série logiques ;\r\nfournir une alimentation 3,3 V stable (l'ESP-01 ne tolère pas le 5 V).\r\n\r\nLes adaptateurs courants utilisent une puce CH340, CP2102 ou FT232. Certains sont des dongles spécialement formés pour accueillir l'ESP-01 directement sur leur connecteur.\r\nAttention : on lit parfois la référence « CH360 ». Il s'agit en réalité de la CH340 (de WCH). Aucune puce « CH360 » n'existe dans cette gamme.\r\n\r\nBrochage de l'ESP-01\r\n\r\n\r\n\r\nLe connecteur 8 broches est directement câblé sur les pins de l'ESP8266EX :\r\nBroche | Nom | Rôle |\r\n---|---|---|\r\n1 | GND | Masse |\r\n2 | GPIO2 | E/S générique. Doit être à l'état haut (ou flottante) au démarrage pour booter normalement. |\r\n3 | GPIO0 | E/S générique. Forcée à GND au démarrage pour entrer en mode programmation (flash). Laissée libre, elle permet un boot normal. |\r\n4 | RX | Réception série (UART0). À relier au TX de l'adaptateur USB-série. |\r\n5 | TX | Émission série (UART0). À relier au RX de l'adaptateur USB-série. |\r\n6 | CHPD (aussi noté EN) | Chip enable. Doit être maintenue à 3,3 V pour que le module fonctionne. |\r\n7 | RST | Reset, actif à l'état bas. |\r\n8 | VCC | Alimentation 3,3 V uniquement. |\r\n\r\nPoints de vigilance :\r\nl'alimentation 3,3 V est impérative ; le 5 V détruit le SoC instantanément ;\r\nles pics de courant en émission peuvent atteindre 300 mA. Une alimentation sous-dimensionnée provoque des resets aléatoires ;\r\nles niveaux logiques sont également à 3,3 V : interfacer un Arduino Uno (5 V) sans pont diviseur ou level shifter peut endommager l'ESP.\r\n\r\nBranchement avec un adaptateur USB-CH340\r\n\r\n\r\n\r\nUne fois l'ESP-01 enfiché dans l'adaptateur, ce dernier joue le rôle de pont entre le port USB de l'ordinateur et l'UART de l'ESP8266EX :\r\nl'ordinateur voit un port série virtuel ( sous Linux, sous Windows) ;\r\nl'adaptateur fournit le 3,3 V à l'ESP-01 et relaie les octets dans les deux sens ;\r\nla plupart des adaptateurs d'entrée de gamme ne gèrent pas le passage en mode flash : voir l'article dédié à la modification de l'adaptateur USB vers ESP-01 pour ajouter un jumper GPIO0 / GND.\r\n\r\nDatasheet\r\n\r\nLa documentation officielle est très succincte pour ce module. Les deux références utiles sont :\r\nla datasheet de l'ESP8266EX (Espressif) — caractéristiques électriques, brochage du SoC, consommation : <https://www.espressif.com/sites/default/files/documentation/0a-esp8266exdatasheeten.pdf>\r\nla datasheet AI-Thinker de l'ESP-01 (sommaire) — dimensions et brochage du module : disponible sur le mirroir du fabricant.\r\n\r\n\r\n\r\nLe fichier joint à cet article reprend la version condensée diffusée par AI-Thinker : esp01.pdf\r\n\r\nConfigurer l'IDE Arduino\r\n\r\n\r\n\r\nL'IDE Arduino ne sait pas, par défaut, compiler pour l'ESP8266. Il faut au préalable installer le board package correspondant.\r\n\r\n1. Ajouter l'URL du gestionnaire de cartes\r\n\r\nDans , ajouter dans URL de gestionnaire de cartes supplémentaires :\r\n\r\n\r\n\r\n2. Installer le support ESP8266\r\n\r\nOuvrir , rechercher esp8266 et installer le paquet esp8266 by ESP8266 Community.\r\n\r\n3. Sélectionner la carte et les paramètres\r\n\r\nPour un ESP-01, choisir , puis vérifier les paramètres suivants :\r\nParamètre | Valeur recommandée pour ESP-01 |\r\n---|---|\r\nFlash Size | pour les ESP-01 noirs ; pour les anciens ESP-01 bleus |\r\nFlash Mode | (compatible avec la majorité des modules ; éviter qui plante au boot sur certains lots) |\r\nFlash Frequency | |\r\nCPU Frequency | |\r\nUpload Speed | baud (vitesse fiable ; possible de monter à 230400 ou 460800 si l'adaptateur suit) |\r\nReset Method | si l'adaptateur câble DTR ; sinon (reset manuel) |\r\nPort | port série de l'adaptateur (, …) |\r\n\r\nEn pratique, sur un ESP-01 récent acheté avec un adaptateur basique, seul le port série doit être ajusté. Les valeurs par défaut conviennent.\r\n\r\n4. Premier téléversement\r\n\r\nUn programme de test minimal pour valider la chaîne complète :\r\n\r\n\r\n\r\nAvant de lancer le téléversement :\r\n\r\n1. placer l'ESP-01 en mode flash** (GPIO0 à GND au démarrage) ;\r\n2. brancher l'adaptateur sur le PC ;\r\n3. lancer le téléversement depuis l'IDE Arduino.\r\n\r\nSi l'opération échoue avec un message du type , c'est que la mise en mode flash n'a pas été effective. Voir là encore l'article sur la modification de l'adaptateur.\r\n\r\nPour aller plus loin\r\nAdaptateur USB vers ESP-01 : activer le mode programmation\r\nESP8266 : commandes AT\r\nRéinitialisation d'un ESP-01 : restauration du firmware AT\r\n```"},"score":0.75,"snippet":"Présentation\r\n\r\nL'ESP-01 est un module Wi-Fi compact construit autour du microcontrôleur ESP8266EX d'Espressif. Sur un PCB d'environ 24 × 14 mm, il rassemble :\r\nun microcontrôleur ESP8266EX (cœur Tensilica L106 32 bits c…","tier":2},{"article":{"uuid":"4e324edd-23cb-4b11-9a52-4256171d701e","slug":"tos-di","title":"Talend Open Studio","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2021-01-16 05:23:10","created_at":"2021-01-16 05:23:10","updated_at":"2021-01-16 05:23:10","plain":"Talend est un éditeur de logiciel Open Source4 spécialisé dans l'intégration et la gestion des données. Installer TOS sous Fedora\nL’installation de TOS requiert la Package XULRunner. 1. Install Talend Open Studio\n 1. Download Talend Open Studio from ourwebsite and install it as described in the Installation Guide. \n2. Install XULRunner\nOn 32bit machines\nDownload, for example, XULRunner 1.9.2 from the Mozilla FTP\nExtract this file into /usr/local/lib using the following commands (let's assume we are logging in as a common user): Open TalendOpenStudio-linux-gtk-x86.ini and add the last line as below: \nOn 64bit machines\nInstall the dependency tools and Oracle JDK if not yet installed. \\\\\nFor more information see https:developer.mozilla.org/En/DeveloperGuide/BuildInstructions/LinuxPrerequisites.\nDownload the source code of your XULRunner package from the Mozilla FTP and install it into /usr/local/lib.\nOpen TalendOpenStudio-linux-gtk-x8664.ini and add the last line as below: 3.Create a script\nIn the installation directory, create a script to start up TOS, for example: start.sh 4.Execute the script to launch Talend Open Studio Problèmes rencontrés\nLes problèmes rencontrés sont résolus en suivant scrupuleusement la documentation ci-dessus. Lors du lancement de TOS, par le terminal, on peut rencontré ce message d'erreur :\n-- 2012/12/01 09:39\\\\"},"score":0.75,"snippet":"Talend est un éditeur de logiciel Open Source4 spécialisé dans l'intégration et la gestion des données. Installer TOS sous Fedora\nL’installation de TOS requiert la Package XULRunner. 1. Install Talend Open Studio\n …","tier":2},{"article":{"uuid":"4ffd0894-7913-4288-ba98-ff6590fd23b0","slug":"mkv-tool-nix","title":"MKVToolNix -- Cross-platform tools for Matroska","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2021-01-16 04:07:49","created_at":"2021-01-16 04:07:49","updated_at":"2021-01-16 04:07:49","plain":"MKVToolNix is a set of tools to create, alter and inspect Matroska files under Linux, other Unices and Windows. Installer Fedora 24–25 I host i386/i686 and x86_64 binaries for Fedora 24 and 25 of MKVToolNix in dnf repositories. I do not provide binaries for libEBML and libMatroska anymore as they're already part of the official distribution. If those are too old MKVToolNix even bundles the current version of both libraries. In order to add the repository all you have to do is to execute the following two commands: sudo rpm -Uhv https://mkvtoolnix.download/fedora/bunkus-org-repo-2-3.noarch.rpm Afterwards you can install MKVToolNix with the following command: sudo dnf install mkvtoolnix My GPG key's ID is 16D2F5DC 10C052A6, and the fingerprint is EB24 BCA1 4BA6 A24F 1427 6FEE 16D2 F5DC 10C0 52A6. You can also browse the download directories for your version: Fedora 23, Fedora 24 and Fedora 25."},"score":0.75,"snippet":"MKVToolNix is a set of tools to create, alter and inspect Matroska files under Linux, other Unices and Windows. Installer Fedora 24–25 I host i386/i686 and x86_64 binaries for Fedora 24 and 25 of MKVToolNix in dnf repos…","tier":2},{"article":{"uuid":"c2c9e483-0987-48bf-a154-5a7b78053062","slug":"man","title":"man","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2021-01-16 04:03:21","created_at":"2021-01-16 04:03:21","updated_at":"2021-01-16 04:03:21","plain":"La commande permet d'accéder au manuel de la documentation d'une commande. Pour appeler le manuel de la commande touch, il faudra appeler la commande . Le défilement du manuel se gère avec les flèches de directions haut et bas,\\\\\nla recherche de texte s'effectue avec la commande suivi du texte recherché.\\\\\nPour sortir du manuel, il suffit de taper la touche Pour aller plus loin avec man\n n'est pas limité aux commandes, il comprend de la documentation sur d'autres sections :\n1. Programmes exécutables ou commandes de l'interpréteur de commandes (shell)\n1. Appels système (fonctions fournies par le noyau)\n1. Appels de bibliothèque (fonctions fournies par les bibliothèques des programmes)\n1. Fichiers spéciaux (situés généralement dans /dev)\n1. Formats des fichiers et conventions. Par exemple /etc/passwd\n1. Jeux\n1. Divers (y compris les macropaquets et les conventions), par exemple man(7), groff(7)\n1. Commandes de gestion du système (généralement réservées au superutilisateur)\n1. Sous-programmes du noyau [hors standard] Par exemple est à la fois une commande () et une fonction de la bibliothèque stdio ()."},"score":0.75,"snippet":"La commande permet d'accéder au manuel de la documentation d'une commande. Pour appeler le manuel de la commande touch, il faudra appeler la commande . Le défilement du manuel se gère avec les flèches de directions haut…","tier":2},{"article":{"uuid":"8034b0de-574b-4ec9-87a2-0162f0bc888c","slug":"20201130-une-petite-annonce-pole-emploi-suscite-la-polemique","title":"Une petite annonce Pôle emploi suscite la polémique","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2021-01-01 15:06:32","created_at":"2021-01-01 15:06:32","updated_at":"2021-01-01 15:06:32","plain":"L'académie de Versailles recrute. Le rectorat a posté sur Pôle emploi ce dimanche 29 novembre 2020 une petite annonce (qui a été retirée vers 14 heures) qui n'est pas passée inaperçue. En effet, était recherché une ou un professeur d'histoire/géographie « pour enseigner […] au collège du Bois-d'Aulne, à Conflans-Sainte-Honorine », dans les Yvelines. Il s'agissait là d'un CDD de dix mois et il était demandé une « licence d'histoire ou de géographie minimum », « ou de science politique ». La « gestion du stress » était notamment un savoir-être professionnel requis. Ce qui a fait réagir, c'est que le collège du Bois-d'Aulne est l'établissement où travaillait Samuel Paty, le professeur assassiné le 16 octobre dernier. Et l'histoire-géographie, ce sont les matières qu'il enseignait. L'Éducation nationale a-t-elle tenté de pourvoir le poste du défunt professeur en tentant un recrutement de contractuel ? Non, a indiqué à l'Agence France-Presse le rectorat de l'académie de Versailles, dimanche, dans la soirée. « Deux enseignants expérimentés, titulaires et volontaires ont été nommés depuis deux semaines pour prendre en charge les élèves de Samuel Paty au collège du Bois-d'Aulne », a indiqué le rectorat, tout en reconnaissant que « cette annonce inappropriée » était une « maladresse ». Le rectorat a précisé également que « certains personnels du collège sont actuellement en arrêt de travail » mais que « la quasi-totalité d'entre eux ont été remplacés », dans cet établissement encore très marqué par l'assassinat de Samuel Paty. Dans ce contexte, et « pour anticiper d'éventuels nouveaux besoins sur l'établissement, le recrutement d'un autre enseignant d'histoire-géographie est en cours ». Le retrait de l'annonce a été salué par le syndicat Snes-FSU, syndicat d'enseignants du secondaire. L'annonce a fait réagir sur les réseaux sociaux : certains ont souligné qu'un profil débutant n'est pas adapté au collège. « Le nombre de postes offerts est tellement bas et la profession si disqualifiée (image et salaire) qu'on recrute (sans doute le remplaçant de Samuel Paty) sur Pôle emploi », a tweeté, par exemple, l'enseignante-chercheuse Laurence de Cock. Un élu socialiste du conseil régional d'Île-de-France, Maxime des Gayets, a évoqué un « procédé choquant ». Interrogée par Ouest-France, avant que le rectorat ne s'explique, la secrétaire générale du Snes-FSU s'est demandé pourquoi le poste n'a pas été pourvu par un enseignant remplaçant. « Normalement, quand un enseignant est absent pour cause de maladie ou d'accident, on fait appel à un titulaire sur zone de remplacement. Que l'académie n'en ait pas trouvé paraît bizarre : on n'est qu'en décembre ! » a déclaré Frédérique Rolet. Elle indique que, généralement, l'académie passe une annonce plus vague, qui précise la discipline, mais pas l'établissement.\n-- LePoint.fr & AFP//"},"score":0.75,"snippet":"L'académie de Versailles recrute. Le rectorat a posté sur Pôle emploi ce dimanche 29 novembre 2020 une petite annonce (qui a été retirée vers 14 heures) qui n'est pas passée inaperçue. En effet, était recherché une ou un…","tier":2},{"article":{"uuid":"3f750a3a-fad0-4089-98e5-79c8b4287ea2","slug":"esp8266ex-restore-commandes-at","title":"Réinitialisation d'un ESP-01 : restauration du firmware AT","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-12-13 14:35","created_at":"2020-12-13 14:35:26","updated_at":"2026-05-13 18:15:11","plain":"Introduction\r\n\r\nL'ESP-01 est un petit module Wi-Fi très répandu, construit autour du microcontrôleur ESP8266EX fabriqué par Espressif. À sa sortie d'usine, il est livré avec un firmware (le programme interne du circuit) qui permet de le piloter à l'aide de commandes textuelles simples appelées commandes AT. Ce firmware peut être effacé ou corrompu, par exemple après avoir téléversé un programme Arduino ou MicroPython sur le module. Ce document explique comment remettre l'ESP-01 dans son état d'origine afin de retrouver l'usage des commandes AT.\r\n\r\nQuelques notions préalables\r\n\r\nAvant de commencer, il est utile de clarifier quelques termes.\r\n\r\nUn firmware est le logiciel embarqué dans un composant électronique. Contrairement à un programme installé sur un ordinateur, il s'écrit directement dans la mémoire flash du microcontrôleur et s'exécute au démarrage du circuit.\r\n\r\nUn fichier binaire (extension ) est le résultat de la compilation d'un code source écrit dans un langage évolué, généralement le C. Une fois compilé, le fichier ne contient plus que des instructions destinées au processeur, illisibles directement par un humain. Il n'est pas nécessaire de les modifier : ils se téléversent tels quels dans le microcontrôleur.\r\n\r\nLa mémoire flash de l'ESP8266EX est divisée en zones. Chaque binaire doit être écrit à une adresse mémoire précise, sans quoi le module ne saura pas où trouver le code à exécuter au démarrage. Sur l'ESP-01, la mémoire est généralement organisée en 512k + 512k, ce qui signifie que la flash totale de 8 Mbit (1 Mo) est partagée en deux zones de 512 ko : l'une pour le programme actif, l'autre réservée aux mises à jour à distance (OTA).\r\n\r\nÉtape 1 — Télécharger le firmware AT officiel\r\n\r\nLe firmware est mis à disposition par Espressif sur son site officiel :\r\n\r\nhttps://www.espressif.com/en/products/socs/esp8266ex/resources\r\n\r\n\r\n\r\nDans la section , choisir la version ou plus récente. L'archive ZIP téléchargée contient plusieurs binaires destinés à l'ESP8266EX.\r\n\r\nQuatre fichiers sont particulièrement importants :\r\nbootv1.7.bin — le chargeur de démarrage (bootloader), premier programme exécuté à la mise sous tension ;\r\nuser1.1024.new.2.bin — le programme AT proprement dit, qui interprète les commandes envoyées par la liaison série ;\r\nespinitdatadefaultv08.bin — les données d'initialisation (paramètres radio, calibration) ;\r\nblank.bin — un fichier rempli de zéros, utilisé pour réinitialiser certaines zones de la flash.\r\n\r\nUne copie de ces binaires pour la configuration ESP8266EX 512k+512k est disponible ici :\r\n\r\nhttps://gitlab.com/cedricAbonnel/esp/-/tree/master/esp01/esp8266exatbin\r\n\r\nÉtape 2 — Identifier le port série de l'ESP-01\r\n\r\nL'ESP-01 ne se connecte pas directement à un port USB : il faut passer par un adaptateur USB-série (souvent un module FTDI ou CH340). Une fois branché, l'ordinateur expose ce périphérique sous la forme d'un fichier dans .\r\n\r\nPour repérer ce fichier, exécuter dans un terminal :\r\n\r\n\r\n\r\nParmi les entrées affichées, celle qui nous intéresse est généralement /dev/ttyUSB0 (parfois si plusieurs adaptateurs sont branchés, ou selon le modèle).\r\n\r\nUne astuce utile : exécuter la commande une première fois sans l'adaptateur, puis une seconde fois après l'avoir branché. La nouvelle entrée qui apparaît est celle du module.\r\n\r\nÉtape 3 — Préparer le téléversement avec esptool.py\r\n\r\nesptool.py est l'outil officiel d'Espressif, écrit en Python, qui permet de communiquer avec la mémoire flash de l'ESP8266EX. S'il n'est pas déjà installé, on peut l'obtenir via :\r\n\r\n\r\n\r\nAvant le téléversement, l'ESP-01 doit être placé en mode programmation : la broche GPIO0 doit être reliée à la masse (GND) au moment de la mise sous tension. Sans cette manipulation, le module démarre normalement et refuse l'écriture en flash.\r\n\r\nÉtape 4 — Téléverser les binaires\r\n\r\nLa commande suivante écrit les quatre binaires aux bonnes adresses mémoire :\r\n\r\n\r\n\r\nDécortiquons les options :\r\nindique le port série identifié à l'étape précédente ;\r\nest la sous-commande d'écriture en mémoire flash ;\r\nprécise le mode d'accès à la flash (Quad I/O, le plus rapide, supporté par l'ESP-01).\r\n\r\nChaque valeur hexadécimale (, , etc.) qui précède un nom de fichier indique l'adresse mémoire à laquelle l'écriture doit commencer. La table de correspondance officielle pour une flash de 8 Mbit organisée en 512k+512k est la suivante :\r\n\r\n\r\n\r\nL'adresse correspond aux paramètres système, et à la zone RF système : les remplir de zéros () garantit un démarrage propre.\r\n\r\nSi tout se passe bien, esptool affiche la progression du téléversement et confirme la réussite de l'opération. C'est le moment d'apprécier le travail accompli :\r\n\r\n\r\n\r\nÉtape 5 — Vérifier le bon fonctionnement\r\n\r\nAprès le téléversement, retirer la connexion entre GPIO0 et la masse, puis redémarrer le module. Ouvrir une console série (par exemple avec , ou la console série de l'IDE Arduino) à la vitesse 115200 bauds :\r\n\r\n\r\n\r\nTaper la commande suivie d'un retour à la ligne. Le module doit répondre . La commande retourne la version du firmware installé, ce qui permet de confirmer la réussite de la réinitialisation.\r\n\r\n\r\n\r\nEn cas de problème\r\n\r\nQuelques pistes si la procédure échoue :\r\nAucune réponse d'esptool : vérifier que GPIO0 est bien reliée à GND au moment de l'alimentation, et que l'adaptateur USB-série fournit assez de courant (l'ESP-01 demande des pics jusqu'à 300 mA).\r\nRéponses illisibles dans la console série : la vitesse par défaut a pu changer selon la version du firmware. Essayer 9600, 74880 ou 115200 bauds.\r\nErreur de checksum ou de mode flash** : essayer à la place de , certains clones d'ESP-01 ne supportent pas le mode Quad I/O.\r\n\r\nConclusion\r\n\r\nCette procédure restaure un ESP-01 dans son état d'origine, prêt à recevoir des commandes AT depuis n'importe quel système capable de dialoguer en série : ordinateur, Arduino, Raspberry Pi, etc. Elle constitue également un bon exercice d'introduction aux notions de firmware, de mémoire flash et de programmation bas-niveau des microcontrôleurs."},"score":0.75,"snippet":"Introduction\r\n\r\nL'ESP-01 est un petit module Wi-Fi très répandu, construit autour du microcontrôleur ESP8266EX fabriqué par Espressif. À sa sortie d'usine, il est livré avec un firmware (le programme interne du circuit) …","tier":2},{"article":{"uuid":"6f2639a5-58ed-4102-a6a2-0acbecf01de5","slug":"esp8266-commandes-at","title":"ESP8266 : prise en main des commandes AT","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-12-13 08:51","created_at":"2020-12-13 08:51:55","updated_at":"2026-05-13 18:23:54","plain":"Présentation\r\n\r\nL'ESP8266 est un microcontrôleur Wi-Fi développé par Espressif. Lorsqu'il sort d'usine, ou lorsqu'il est flashé avec le firmware AT officiel d'Espressif, il accepte un jeu d'instructions textuelles appelées commandes AT (ou commandes Hayes, du nom du fabricant de modems qui les a popularisées dans les années 1980).\r\n\r\nLe module ESP-01, le plus répandu pour découvrir l'ESP8266, est généralement livré avec ce firmware AT préchargé. Il est donc utilisable immédiatement, sans programmation, simplement en lui envoyant des commandes texte sur sa liaison série.\r\nPrérequis matériel : un ESP-01 connecté à un PC via un adaptateur USB-série, et un terminal série (moniteur série de l'IDE Arduino, , , PuTTY…) configuré à 115200 bauds avec fin de ligne CR+LF.\r\nNote sur les versions : la syntaxe et les codes retour des commandes AT varient selon la version du firmware. Les exemples ci-dessous correspondent à un firmware AT v1.x typique sur ESP-01. Pour les firmwares plus récents (AT v2.x sur ESP32), certaines commandes prennent des paramètres supplémentaires.\r\n\r\nTravaux pratiques\r\n\r\nL'enchaînement ci-dessous permet de mettre l'ESP-01 sur un réseau Wi-Fi, puis de le transformer en serveur HTTP minimaliste. Chaque commande est envoyée depuis le terminal série ; les lignes préfixées par représentent la réponse du module.\r\n\r\n1. Vérifier le mode Wi-Fi courant\r\n\r\n\r\n\r\nLe module répond avec un chiffre indiquant son mode courant (voir glossaire plus bas).\r\n\r\n2. Passer en mode dual (client + point d'accès)\r\n\r\n\r\n\r\nLe mode 3 active simultanément le mode station (le module se connecte à un Wi-Fi existant) et le mode AP (le module expose son propre point d'accès). C'est le mode le plus polyvalent pour expérimenter.\r\n\r\n3. Se connecter à un réseau Wi-Fi\r\n\r\n\r\n\r\nTrois événements sont remontés successivement :\r\nWIFI CONNECTED : association réussie au point d'accès ;\r\nWIFI GOT IP : adresse IP obtenue via DHCP ;\r\nOK : la commande est terminée avec succès.\r\n\r\n4. Lister les adresses IP et MAC du module\r\n\r\n\r\n\r\nEn mode dual, le module possède deux interfaces réseau :\r\nAP (point d'accès) : adresse fixe par défaut, sur laquelle se connectent les clients du Wi-Fi exposé par l'ESP ;\r\nSTA (station/client) : adresse attribuée par le routeur du réseau auquel l'ESP s'est connecté.\r\n\r\n5. Activer les connexions multiples\r\n\r\n\r\n\r\nPar défaut, l'ESP n'accepte qu'une seule connexion TCP simultanée. Le mode multi-connexion est obligatoire pour faire fonctionner le module en serveur (étape suivante).\r\n\r\n6. Démarrer un serveur TCP sur le port 80\r\n\r\n\r\n\r\nLe module écoute désormais sur le port 80 de son adresse STA. Un simple navigateur pointé sur (l'adresse retournée par ) déclenche une connexion HTTP.\r\n\r\n7. Observer une requête entrante\r\n\r\nLorsqu'un client se connecte, l'ESP recopie sur la liaison série l'événement de connexion, puis la requête HTTP brute, et enfin la fermeture de la connexion :\r\n\r\n\r\n\r\nLecture :\r\n: un client vient de s'associer ; est l'identifiant de connexion (link ID), utile en mode multi-connexion ;\r\n: l'ESP a reçu 341 octets sur la connexion ; ces octets suivent immédiatement (ici, l'en-tête HTTP envoyé par Firefox) ;\r\n: le client a fermé la connexion (ou un timeout est intervenu).\r\n\r\nÀ ce stade, l'ESP ne répond rien au client : il faut explicitement envoyer une réponse avec (voir glossaire). Le navigateur affichera donc une page vide ou un message d'erreur.\r\n\r\nPour aller plus loin : répondre au client\r\n\r\nPour renvoyer une page HTML minimale au client :\r\n\r\n\r\n\r\nLe module affiche et attend exactement le nombre d'octets annoncé, puis envoie le tout sur la connexion . Il faut ensuite fermer la connexion avec :\r\n--\r\n\r\nGlossaire des commandes AT\r\n\r\nConventions\r\n\r\nTrois formes coexistent pour la plupart des commandes :\r\nForme | Syntaxe | Rôle |\r\n---|---|---|\r\nInterrogation | | Lire la valeur courante |\r\nTest | | Lister les valeurs autorisées |\r\nAffectation | | Modifier la valeur |\r\n\r\nLes chaînes de caractères (SSID, mot de passe…) sont toujours encadrées par des guillemets droits.\r\n\r\nCommandes Wi-Fi\r\n\r\n— Mode de fonctionnement Wi-Fi\r\n\r\n\r\n\r\nValeurs de :\r\nValeur | Mode | Description |\r\n---|---|---|\r\n1 | STA | Station/client : le module se connecte à un Wi-Fi existant |\r\n2 | AP | Point d'accès : le module expose son propre Wi-Fi |\r\n3 | STA+AP | Mode dual : les deux à la fois |\r\n\r\nExemple :\r\n\r\n\r\n\r\n— Lister les points d'accès visibles\r\n\r\n\r\n\r\nRetourne une ligne par réseau détecté, sous la forme :\r\nChamp | Signification |\r\n---|---|\r\n| Chiffrement : ouvert, WEP, WPA-PSK, WPA2-PSK, WPA/WPA2-PSK |\r\n| Nom du réseau |\r\n| Puissance du signal en dBm (plus la valeur est proche de 0, plus le signal est fort) |\r\n| Adresse MAC du point d'accès (BSSID) |\r\n| Canal Wi-Fi (1 à 13 en Europe sur 2,4 GHz) |\r\n\r\nExemple :\r\n\r\n\r\n\r\nPrérequis : doit inclure le mode station (1 ou 3).\r\n\r\n— Se connecter à un point d'accès\r\n\r\n\r\n\r\nCodes d'erreur retournés en cas d'échec via :\r\nCode | Signification |\r\n---|---|\r\n1 | Délai de connexion dépassé |\r\n2 | Mot de passe incorrect |\r\n3 | SSID introuvable |\r\n4 | Échec de connexion (autre) |\r\n\r\nExemple d'échec :\r\n\r\n\r\n\r\nExemple de réussite :\r\n\r\n\r\n\r\n— Se déconnecter du point d'accès\r\n\r\n\r\n\r\nÀ ne pas confondre avec une commande de sauvegarde : signifie Quit AP, c'est-à-dire déconnexion. Les paramètres de connexion (SSID, mot de passe) sont en revanche automatiquement mémorisés en flash par les commandes et dans les versions classiques du firmware AT — le module se reconnectera donc au démarrage suivant.\r\n\r\n— Adresses IP et MAC locales\r\n\r\n\r\n\r\nRenvoie les adresses IP et MAC du module pour chaque interface active :\r\n/ : interface point d'accès (toujours par défaut) ;\r\n/ : interface station (attribuée par le DHCP du réseau rejoint).\r\n\r\nEn mode , seule la partie STA est retournée ; en mode 2, seule la partie AP.\r\n\r\nCommandes TCP/IP\r\n\r\n— Activer les connexions multiples\r\n: connexion unique (mode par défaut) ;\r\n: jusqu'à 5 connexions simultanées, chacune identifiée par un link ID de 0 à 4.\r\n\r\nPrérequis pour passer en mode 1 : aucune connexion ne doit être active, et le module ne doit pas déjà être en mode serveur.\r\n\r\n— Démarrer un serveur TCP\r\n: pour démarrer, pour arrêter ;\r\n: port d'écoute, optionnel (par défaut 333).\r\n\r\nPrérequis : doit avoir été exécuté au préalable.\r\n\r\nAprès un arrêt (), un redémarrage du module est nécessaire () pour libérer complètement le port.\r\n\r\n— Envoyer des données sur une connexion\r\n\r\n\r\n\r\nLe module affiche un prompt et attend exactement octets, puis transmet le bloc au client. Indispensable pour répondre à une requête HTTP entrante.\r\n\r\n— Fermer une connexion\r\n\r\n\r\n\r\nCommandes générales utiles\r\nCommande | Rôle |\r\n---|---|\r\n| Test de présence du module (doit répondre ) |\r\n| Redémarrer le module |\r\n| Afficher la version du firmware AT |\r\n| Changer le débit série (non persistant) |\r\n/ | Désactiver / activer l'écho des commandes |\r\n--\r\n\r\nRécapitulatif : déclarer un serveur HTTP minimal\r\n\r\nSéquence complète depuis un ESP-01 vierge :\r\n\r\n\r\n\r\nÀ partir de cet instant, toute connexion entrante sur est remontée sur le port série sous forme d'événements , à charge pour le programme côté PC (ou pour un firmware personnalisé) de les analyser et de répondre via .\r\n\r\nLimites du firmware AT\r\n\r\nLe firmware AT est pratique pour découvrir et tester l'ESP8266, mais il montre vite ses limites :\r\nlatence importante (chaque commande passe par le port série) ;\r\npas de TLS correct dans les anciennes versions ;\r\ncomplexité pour gérer plusieurs clients simultanés ;\r\ndépendance à un hôte qui pilote l'ESP en permanence.\r\n\r\nPour des projets plus aboutis, il est préférable de flasher l'ESP avec un firmware personnalisé (Arduino, ESP-IDF, MicroPython, Tasmota, ESPHome…) qui exécute directement la logique applicative sur le microcontrôleur, sans intermédiaire série.\r\n```"},"score":0.75,"snippet":"Présentation\r\n\r\nL'ESP8266 est un microcontrôleur Wi-Fi développé par Espressif. Lorsqu'il sort d'usine, ou lorsqu'il est flashé avec le firmware AT officiel d'Espressif, il accepte un jeu d'instructions textuelles appelé…","tier":2},{"article":{"uuid":"d3e748aa-9cce-4758-81d6-e495ea79c3c7","slug":"radiateur-carlotec-1000w","title":"Radiateur Caroltec 1000 W","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-08-06 11:16:05","created_at":"2020-08-06 11:16:05","updated_at":"2020-08-06 11:16:05","plain":"Article en cours de rédaction. Avant de continuer, je dois élaborer le protocole de communication entre Arduino/ESP8266.\nDéfaillance : témoin clignote rouge et ne le radiateur ne chauffe pas\nJ'ai rencontré à deux reprises, sur deux radiateurs différents, le dysfonctionnement suivant. Le témoin lumineux, en dessous du thermostat clignote rouge. De plus, le radiateur ne chauffe plus. J'ai essayé de disjoncter un long moment et j'ai même essayé de supprimer le fil pilote. Rien n'y fait. En démontant le radiateur, j'ai constaté plusieurs choses.\n1. Malgré le thermostat à fond, le sortie vers la résistance est toujours à 0 Volt. J'ai testé sur un radiateur qui fonctionne, et je devrais avoir 230 V.\n1. La référence de la carte électronique est ERD10001 220/24011A\n1. En branchant le 230 Volts sur la résistance, le radiateur fonctionne : il chauffe.\n1. En consultant le forum de Futura Sciences, une des personnes indique qu'il s'agit d'un défaut de sonde de température. Prix de la carte électronique : trop chère ! Sur le site age86.fr, il est affiché à 159€ ce 8 avril 2020. Je n'ai pas cherché à remplacer la sonde de température seule. J'imagine qu'il s'agit d'un capteur de température que l'on peut trouver à pas cher.\n> Que faire ?\n \nJe peux court-circuiter la carte électronique en alimentant directement la résistance chauffante. A moi de trouver le moyen de piloter l'alimentation électrique de la résistance. La puissance de radiateur est de 1000 W, alimenté à 230 V**. Par calcul, l'<u>intensité</u> demandé est de 1000 / 230 = <u>4,35 A</u>. Un relais électrique permettrait de piloter la résistance, comme un interrupteur. Il a l'avantage d'être un isolant entre la partie commande (circuit basse tension), et la résistance électrique (partie haute tension). Par contre, un relais comporte une partie mécanique qui provoque un peu de bruit lors du changement d'état (ouvert/fermé). Cela peut être gênant dans une pièce à dormir.\nReste à faire dans cet article\n09/04/2020\nNous voyons que le transistor peut remplacer facilement un relai. nous voyons bien que nous allons mettre derrière un Arduino qui permettra de piloter ce transistor. La question de s'avoir où positionner cet arduino pour se pose entièrement. Il peut être positionné juste à côté du radiateur, où se trouve dans l'armoire électrique ce qui permettrait de mutualiser un Arduino pour piloter plusieurs transistor, donc plusieurs radiateurs. J'y reviendrai un peu plus bas.\nLa partie capteur se pose également. doit-on mettre un capteur de température tel qu'il avait été conçu initialement c'est-à-dire juste derrière le radiateur avec une sonde, dans quel cas on aurait un système autonome et non connecté. ou plutôt un capteur de température dans la pièce qui permettrait de piloter plusieurs radiateur elle disait la valeur de cette température pour d'autres usages.\nMettre la partie intelligente dans une armoire électrique donc mutualiser l'arduino et mettre un capteur de température par piece, permet de faire des économies. toutefois cela enlève une partie intelligente au radiateur en lui-même étant donné qu'il doit être dépendant de la partie centrale. L'objectif global reste quand même d'avoir une domotique centralisée à la maison, donc cette réflexion n'est pas dénué de bon sens, malgré que la centralisation n'est pas forcément toujours une bonne chose. Toutefois je vais faire un mix entre les deux. je vais installer un capteur de température par piece, et ajouter une partie commande pas radiateur. La relation entre la commande et le température s'effectuera par un serveur intelligent. cela se traduit donc par le montage d'un Arduino connecté. Arduino qui permettra de servir d'interrupteur à la réception d'un ordre.\nESP 32 permet de faire un réseau mesh bluetooth"},"score":0.75,"snippet":"Article en cours de rédaction. Avant de continuer, je dois élaborer le protocole de communication entre Arduino/ESP8266.\nDéfaillance : témoin clignote rouge et ne le radiateur ne chauffe pas\nJ'ai rencontré à deux reprise…","tier":2},{"article":{"uuid":"1c421222-2f3c-4f50-9b08-aa35f5eb670b","slug":"numero-episode-titre","title":"Quelques explications sur les Metadata des Podcasts Apple","category":"Podcasts","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-04-17 18:07:32","created_at":"2020-04-17 18:07:32","updated_at":"2020-04-17 18:07:32","plain":"Courrier original\nDear Podcast Provider, We’ve received a lot of questions about metadata best practices on Apple Podcasts. We want to provide more details and clarification as you think about improving your show’s metadata. Your Show Won’t Be Removed for Having Episode Numbers in Episode Titles Starting with iOS 11 in September 2017, we introduced modern RSS tags to improve podcast metadata. These tags include support for seasons, trailers, and episode numbers. The new tags help us present your show to your listeners on Apple Podcasts and present listening data to you in Podcast Analytics. We encourage you to use the tag to send us your episode numbers. If you decide to include episode numbers in your episode tag, you should also provide an episode title without an episode number in the tag. Remember that should not contain episode or season numbers. Your show won’t be removed only for including episode numbers in episode titles, but we encourage you to use the episode tag as a best practice. We do want to discourage spam or irrelevant content in show metadata, including episode numbers in your podcast title. This is part of our overall standard of high-quality metadata, which improves discovery and listener experience. Our list of Apple Podcasts Hosting Partners contains more information on hosting service providers. Check out Podcasts Connect Help for more information on our tags and content guidelines. Contact us if you have questions. Regards,\nThe Apple Podcasts team Traduction\nCher fournisseur de podcast, Nous avons reçu de nombreuses questions sur les meilleures pratiques en matière de métadonnées sur les podcasts Apple. Nous souhaitons fournir plus de détails et d’éclaircissements lorsque vous songez à améliorer les métadonnées de votre émission. Votre émission ne sera pas supprimée pour avoir eu des numéros d'épisode dans les titres d'épisode Depuis iOS 11 en septembre 2017, nous avons introduit des balises RSS modernes pour améliorer les métadonnées de podcast. Ces balises incluent la prise en charge des saisons, des bandes-annonces et des numéros d'épisodes. Les nouveaux tags nous aident à présenter votre émission à vos auditeurs sur des podcasts Apple et à vous présenter des données d'écoute dans Podcast Analytics. Nous vous encourageons à utiliser l'étiquette pour nous envoyer vos numéros d'épisode. Si vous décidez d'inclure des numéros d'épisode dans votre balise d'épisode, vous devez également fournir un titre d'épisode sans numéro d'épisode dans la balise. Rappelez-vous que ne devrait pas contenir de numéro d'épisode ou de saison. Votre émission ne sera pas supprimée uniquement pour inclure des numéros d’épisodes dans les titres des épisodes, mais nous vous encourageons à utiliser la balise épisode comme meilleure pratique. Nous voulons décourager le spam ou le contenu non pertinent dans les métadonnées du spectacle, y compris les numéros d'épisode dans le titre de votre podcast. Cela fait partie de notre norme globale en matière de métadonnées de haute qualité, ce qui améliore la découverte et l'expérience de l'auditeur. Notre liste de partenaires d'hébergement Apple Podcasts contient plus d'informations sur les fournisseurs de services d'hébergement. Consultez l’aide de Podcasts Connect pour plus d’informations sur nos balises et nos directives de contenu. Contactez-nous si vous avez des questions. Cordialement,\nL'équipe Apple Podcasts"},"score":0.75,"snippet":"Courrier original\nDear Podcast Provider, We’ve received a lot of questions about metadata best practices on Apple Podcasts. We want to provide more details and clarification as you think about improving your show’s metad…","tier":2},{"article":{"uuid":"f61e15e6-c276-4c2d-af97-3c8d2d590e84","slug":"conseil-metadata-podcast","title":"Optimisez les metadata de vos émissions et soummettez de nouveau vos RSS depuis Podcasts Connect","category":"Podcasts","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-04-17 18:07:32","created_at":"2020-04-17 18:07:32","updated_at":"2020-04-17 18:07:32","plain":"Optimize your show's metadata and resubmit RSS feeds in Podcasts Connect Courrier original\nDear Podcast Provider, To improve your experience with Apple Podcasts, we want to share the following information and updates. Optimize Your Show’s Metadata The metadata of your show is your product packaging. It includes all of the details about your show — such as title, author name, description — that potential listeners will see on Apple Podcasts. High-quality metadata can help your show be discovered and grow your audience, as it ultimately determines whether it appears in relevant user searches. Conversely, poor-quality podcast metadata may affect new submissions as well as active shows to ensure our platform meets Apple’s quality standards. Here are some things to avoid:\nIncluding placeholder text from your hosting provider. For example, descriptions such as “Podcast by [author name],” “New podcast weblog,” “Cover art photo provided by [name],” or “Description goes here.”\nVerbatim repetition of the title or author name in the description. For example, “The Very Hungry Tourists by Dr. María Sánchez and John Appleseed.”\nIncorporating irrelevant content or spam. For example, show titles like “The Very Hungry Tourists | Travel | Explore | Learn” or author names like “Dr. María Sánchez, coach and travel enthusiast.”\nAdding episode numbers in titles. For example, show titles like “The Very Hungry Tourists Episode 01” or episode titles like “01 Broken Heirloom.” These practices could result in your show being rejected or removed from Apple Podcasts. Review the resources below to learn more:\nPodcasts Partner Search\nPodcasts Connect Help\nApple Podcasts Marketing Best Practices Resubmit RSS Feeds in Podcasts Connect Users now have the ability to resubmit rejected feeds. Should your show fail our review process or be removed from our catalog for the reasons described above, review your RSS fields to ensure compliance. Then, revalidate the feed and resubmit it via Podcasts Connect. Traduction\nCher fournisseur de podcast, Pour améliorer votre expérience avec Apple Podcasts, nous souhaitons partager les informations et les mises à jour suivantes. Optimiser les métadonnées de votre spectacle Les métadonnées de votre spectacle sont les emballages de vos produits. Il inclut tous les détails de votre émission - tels que le titre, le nom de l'auteur, la description - que les auditeurs potentiels verront sur les podcasts Apple. Des métadonnées de haute qualité peuvent aider votre émission à être découverte et à élargir votre auditoire, car elles déterminent finalement si elle apparaît dans les recherches d'utilisateurs pertinentes. Inversement, des métadonnées de podcast de mauvaise qualité peuvent affecter les nouvelles soumissions ainsi que les émissions actives, afin de garantir que notre plate-forme respecte les normes de qualité d’Apple. Voici quelques choses à éviter:\nY compris le texte de substitution de votre fournisseur d'hébergement. Par exemple, des descriptions telles que \"Podcast par [nom de l'auteur]\", \"Nouveau blog en podcast\", \"Photo d'art de la couverture fournie par [nom]\" ou \"Description va ici\".\nRépétition exacte du titre ou du nom de l'auteur dans la description. Par exemple, «Les touristes très affamés du Dr. María Sánchez et John Appleseed».\nIncorporer du contenu non pertinent ou du spam. Par exemple, montrez des titres tels que «Les très affamés | Voyage | Explorer | Savoir »ou des noms d’auteurs tels que« Dr. María Sánchez, entraîneure et passionnée de voyages. ”\nAjout de numéros d'épisodes dans les titres. Par exemple, diffusez des titres tels que «L'épisode 01 des touristes très affamés» ou des titres d'épisodes tels que «01 Broken Heirloom». Ces pratiques pourraient entraîner le rejet ou la suppression de votre émission des podcasts Apple. Consultez les ressources ci-dessous pour en savoir plus:\nRecherche de partenaires de podcasts\nAide Podcasts Connect\nMeilleures pratiques de marketing pour les podcasts Apple Soumettre à nouveau des flux RSS dans Podcasts Connect Les utilisateurs ont maintenant la possibilité de soumettre à nouveau les flux rejetés."},"score":0.75,"snippet":"Optimize your show's metadata and resubmit RSS feeds in Podcasts Connect Courrier original\nDear Podcast Provider, To improve your experience with Apple Podcasts, we want to share the following information and updates. Op…","tier":2},{"article":{"uuid":"61d79aaa-2111-4a39-96e5-963970d088d6","slug":"5508","title":"5508 - Boîte de briques de luxe","category":"Loisirs","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-04-17 18:07:08","created_at":"2020-04-17 18:07:08","updated_at":"2020-04-17 18:07:08","plain":"Article: 5508 Année: 2010 Âges:7-12 Nb de Pièces:704 La construction créative LEGO® commence ici ! Cette boîte de rangement, solide et réutilisable dotée d’un couvercle détachable contient tout ce dont tu as besoin pour t’amuser en imaginant des constructions LEGO® ! Elle contient plus de 700 éléments, dont des briques classiques LEGO et de nombreux éléments spéciaux comme des roues, des fenêtres, des portes, une plaque de base et deux figurines, pour des heures de construction ! Comprend un séparateur de briques, et un livret de montage et d’idées de construction. Cette boîte de luxe contient des briques, des fenêtres, des portes et un tas d’autres éléments, pour des heures de contruction !\nUne boîte solide facilite le rangement !"},"score":0.75,"snippet":"Article: 5508 Année: 2010 Âges:7-12 Nb de Pièces:704 La construction créative LEGO® commence ici ! Cette boîte de rangement, solide et réutilisable dotée d’un couvercle détachable contient tout ce dont tu as besoin po…","tier":2},{"article":{"uuid":"93d5ef39-a989-49ca-b2ab-cd2770364e1f","slug":"les-liens-utiles-du-dimanche","title":"Les liens utiles du Dimanche","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-04-17 18:06:52","created_at":"2020-04-17 18:06:52","updated_at":"2020-04-17 18:06:52","plain":"Redshift Ne vous abimez plus les yeux la nuit http:geekfault.org/2010/06/30/redshift-ne-vous-abimez-plus-les-yeux-la-nuit/\nDNSSEC/TLSA Validator DNSSEC/TLSA Validator is a web browser add-on which allows you to check the existence and validity of DNSSEC and TLSA records related to domain names. https:www.dnssec-validator.cz/\nTiny Tiny RSS Tiny Tiny RSS is an open source web-based news feed (RSS/Atom) reader and aggregator, designed to allow you to read news from any location, while feeling as close to a real desktop application as possible https:tt-rss.org/gitlab/fox/tt-rss/wikis/home\nJitsi Web conferences https:jitsi.org/ Le coin de la production\nLe son\nPyPopro Jitsi Meet supports recording but it splits each speaker's track in different mp3 files.\\\\\nThis script can create a bash script which will use sox to make one file per speaker. https:github.com/nipsource/pypopro\\\\ Une vue globale d'un projet de production :\\\\\nhttps:github.com/nipsource/pypopro/wiki/Post-production et Quelques plugins ...\nuBlock\nContent. Not clutter. Your web experience has never been this fast and efficient. uBlock is completely free and open-source. uBlock est un plugin Chorme Firefox ou Safari afin de bloquer les publicités dans le navigateur. Elle permet d'afficher plus rapidement le contenu qui nous intéresse. Il permet également d’économiser de la bande passante et éviter également les publicités vraiment trop envahissante. C'est une bonne alternative à la solution AdBlock et AdBlock Plus. https:www.ublock.org/\nDisconnect\nA better, more private Internet. Private browsing lets you visualize and block the otherwise invisible websites that track your search and browsing history. Disconnect peut se présenter par un plugin dans votre navigateur afin de supprimer les pisteurs : cookies, sites espions.... C'est une bonne alternative à la solution Ghostery. Le coin des Webmaster\nLet's encrypt\nLet’s Encrypt is a new Certificate Authority : It’s free, automated, and open. SSL https:letsencrypt.org/\nAlternC http:demo.alternc.org/bromain.php Dégooglisons Internet\nhttp:sebsauvage.net/wiki/doku.php?id=php:shaarli https:roidelapluie.be/caldav-android.html Secure IMAP Server http:dovecot.org/ SOGo is fully supported and trusted groupware server with a focus on scalability and open standards. SOGo is released under the GNU GPL/LGPL v2 and above. http://www.sogo.nu/"},"score":0.75,"snippet":"Redshift Ne vous abimez plus les yeux la nuit http:geekfault.org/2010/06/30/redshift-ne-vous-abimez-plus-les-yeux-la-nuit/\nDNSSEC/TLSA Validator DNSSEC/TLSA Validator is a web browser add-on which allows you to check the…","tier":2},{"article":{"uuid":"dab119e8-93bb-46a6-a091-4b76481db710","slug":"11-2","title":"novembre","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-04-17 18:06:44","created_at":"2020-04-17 18:06:44","updated_at":"2020-04-17 18:06:44","plain":"Cours, vole, marche... mais ne t'arrête pas. Allons de l'avant ! Je suis une formation en ligne sur le Bash et la conception 3D avec FreeCAD. Install Party d'Automne de l'association Alpinux se tiendra le 23 novembre 2019 à Chambéry. Le podcast l'apéro des papas manchots devient orphelin."},"score":0.75,"snippet":"Cours, vole, marche... mais ne t'arrête pas. Allons de l'avant ! Je suis une formation en ligne sur le Bash et la conception 3D avec FreeCAD. Install Party d'Automne de l'association Alpinux se tiendra le 23 novembre 201…","tier":2},{"article":{"uuid":"096df1cd-df10-4134-b6b9-fb1dd420fdc4","slug":"15-2","title":"15/09/2019","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-04-17 18:06:42","created_at":"2020-04-17 18:06:42","updated_at":"2020-04-17 18:06:42","plain":"Private Network Firefox Les outils Mozilla s'agrandissent. Firefox Private Network propose désormais une protection pour votre protéger des curieux, pirates et méchants hackers sur des réseaux publics et ouverts.\nWhen requests are sent to the Cloudflare proxy, Cloudflare will observe your IP address (known as the source IP address), the IP address for the Internet property you are accessing (known as the destination IP address), source port, destination port, timestamp and a token provided by Mozilla that indicates that you are a Firefox Private Network user (together, “Proxy Data”). Cet outil est une extension Firefox et permet également de masquer les requêtes DNS effectuées par Firefox à votre gestionnaire de réseau (FAI, réseau d'entreprise, Wifi connecté, opérateur mobile...). Il s'agit ni plus, ni moins d'une solution VPN. Actuellement disponible pour les versions de Firefox Desktop, cette solution gratuite, est en version Beta et utilise les solutions Cloudflare. Cette solution confère également une solution de Proxy avec conservation des données durant 24 heures. <https:www.mozilla.org/en-US/privacy/firefox-private-network/> <https:www.cloudflare.com/mozilla/firefox-private-network-privacy-notice/> Suis-je obliger d’énumérer les points négatifs de cette solution ? Ben oui : unique opérateur, opérateur américain, intermédiaire, conservation des données hors de notre contrôle Liens\nJP m'a rappelé que de la lecture sur des magazines oubliés existait sur le site Abandonware Magazine. Il m'a avoué avoir un faible pour le ZX81. J'en connais un autre qui crackerait pour en avoir un de nouveau. Il m'a également rappelé au bon souvenir de mon montage de NAS et m'a indiqué que je pouvais également opter pour une solution toute prête avec le Synology DS1819 + 8 Bay Desktop NAS. 1027€, un peu cher. Enfin, un vieux logiciel qui traîne dans nos cartes SIM pourrait compromettre notre vie privée. Ces SMS « invisibles » pourraient géolocaliser plus d’un milliard de mobiles Retrouver la revue digitale du 16/09/2019 dans le podcast audio mindcast INFO."},"score":0.75,"snippet":"Private Network Firefox Les outils Mozilla s'agrandissent. Firefox Private Network propose désormais une protection pour votre protéger des curieux, pirates et méchants hackers sur des réseaux publics et ouverts.\nWhen re…","tier":2},{"article":{"uuid":"f8184dc2-72f0-408d-ac3c-47d117e0d04c","slug":"actualite-burger-tech-sinformer-sur-le-high-tech","title":"S'informer sur la technologie","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-04-17 18:06:16","created_at":"2020-04-17 18:06:16","updated_at":"2020-04-17 18:06:16","plain":"14 avril 2019\nLe Wi-Fi 6 met le cap sur la bande des 6 GHz\nTechnologie : La Wi-Fi Alliance a annoncé l'adoption d'une nouvelle terminologie, Wi-Fi 6E, pour les appareils pouvant fonctionner sur la bande des 6 GHz. Une bande qui promet un débit encore supérieur à ceux promis par le Wi-Fi 6.\nPierre Benhamou Par Pierre Benhamou | Lundi 06 Janvier 2020 Le Wi-Fi 6 met le cap sur la bande des 6 GHz Alors que le Wi-Fi 6 montre petit à petit le bout de son nez, la Wi-Fi Alliance, le consortium en charge de cette technologie, a annoncé en fin de semaine dernière avoir adopté une nouvelle terminologie pour les les appareils Wi-Fi 6 capables de fonctionner sur la bande des 6 GHz. Ces derniers porteront désormais le nom de Wi-Fi 6E, alors que les appareils compatibles avec la nouvelle norme Wi-Fi 6 mais fonctionnant uniquement sur les bandes des 2,4 GHz et 5 GHz continueront à se voir classifiés comme Wi-Fi 6. « La Wi-Fi 6E apporte un nom commun dans l'industrie pour les utilisateurs de Wi-Fi, afin d'identifier les appareils qui offriront les caractéristiques et les capacités de la Wi-Fi 6 - y compris une performance plus élevée, une latence plus faible et des débits de données plus rapides - étendues à la bande des 6 GHz », a fait savoir le consortium avant de vanter les multiples mérites de ces nouveaux appareils capables d'avoir recours à cette bande des 6 GHz, « une partie importante du spectre sans licence qui pourrait bientôt être mise à disposition par les régulateurs du monde entier ». Selon la Wi-Fi Alliance, la bande des 6 GHz a de multiples mérites. Elle dispose en effet d'assez de spectre contigu pour fournir 7 canaux de 160 MHz et 14 canaux de 80 MHz, a fait savoir l'organisation, qui relève qu'un tel spectre supplémentaire est nécessaire pour gérer les applications à large bande passante telles que la diffusion vidéo haute définition et la réalité virtuelle. En outre, cette bande « est bien adaptée pour faciliter la croissance continue du Wi-Fi dans les zones mal desservies en raison de sa proximité avec la fréquence de 5 GHz où le Wi-Fi fonctionne déjà, de la plus grande disponibilité de canaux de plus grande taille et de l'accessibilité à un spectre clair avec moins d'interférence des appareils Wi-Fi 4 ou Wi-Fi 5 existants », précise-t-elle. publicité\nDe quoi renforcer l'implantation du Wi-Fi 6 ? Les appareils avec la marque Wi-Fi 6E devraient apparaître une fois que les approbations réglementaires dans le monde entier commenceront à se produire. « Alors que l'application et la demande globale de Wi-Fi continuent à augmenter, l'accès au spectre sans licence du 6 GHz permettra au Wi-Fi de continuer à apporter les vastes innovations et les avantages socio-économiques qu'elle apporte aujourd'hui au marché, tout en contribuant à garantir que le Wi-Fi puisse répondre aux nouvelles promesses de l'ère de la 5G et au-delà », a indiqué Chuck Lukaszewski, le vice-président des normes et de la stratégie sans fil. « La bande des 6 GHz aidera à répondre au besoin croissant de capacité du spectre Wi-Fi pour que les utilisateurs de Wi-Fi continuent à bénéficier de la même excellente expérience d'utilisation avec leurs appareils », a de son côté appuyé le président de la Wi-Fi Alliance, Edgar Figueroa. Le Wi-Fi 6E devrait encore renforcer l'essor du Wi-Fi 6 qui fait, depuis septembre dernier, l'objet d'un programme de certification permettant à des entreprises comme Apple et Samsung de labelliser officiellement leurs appareils comme étant capables de prendre en charge le protocole IEEE 802.11ax, de plus grande capacité. Pour rappel, ce protocole, qui fonctionne dans les bandes 2,4 GHz et 5 GHz - à l'instar des générations précédentes de la technologie sans fil IEEE 802.11 - promet plus de capacité et de performances lorsque de nombreux périphériques se connectent au même routeur. S'il reprend les fréquences déjà adoptées par ses aînés, le Wi-Fi 6 - ou 802.11ax - promet en effet des débits entre 20 et 40 % supérieurs à la version précédente, le Wi-Fi 5, aussi connu sous l'appellation technique de 802.11ac. Comment ? Grâce à un meilleur encodage des données qui permet de faire transiter plus de datas sur une même fréquence et à des processus d'encodage et de décodage améliorés du côté des processeurs compatibles, à l'image du mode de modulation d'amplitude en quadrature 1024 (1024-QAM). Mais si l'utilisation de la bande des 6 GHz devrait encore amplifier la puissance du Wi-Fi 6, son effet sur la généralisation de cette nouvelle technologie reste encore à prouver dans les faits. Source : https:www.zdnet.fr/actualites/le-wi-fi-6-met-le-cap-sur-la-bande-des-6-ghz-39896751.htm\nLe Wifi de Google aux abonnés absents\nSi votre travail consiste à protéger l'infrastructure informatique, il pourrait bien valoir la peine de lire le nouveau livre gratuit de 500 pages de Google qui détaille les nombreuses défaillances affectant les systèmes internes de Google et des produits comme YouTube. Il est important de noter que ce nouveau livre révèle également comment ses équipes d'ingénierie et de sécurité des sites coopèrent pour protéger les systèmes clés de Google, d'Android à Chrome, en passant par Gmail, Search et Google Cloud. Une vue maison sur le SRE (Site Reliability Engineering) Peu d'entreprises dans le monde opèrent à l'échelle de Google, mais il y a néanmoins des leçons à tirer de ce document, qui est publié alors que la pandémie de Coronavirus COVID-19 rend plus important que jamais la fiabilité des systèmes en ligne. Le livre présente les points de vue d'équipes qui pratiquent ce qu'on appelle l'ingénierie de la fiabilité des sites (SRE - Site Reliability Engineering), l'approche de Google pour coordonner les ingénieurs en logiciels qui développent ses produits et ses systèmes, et les équipes opérationnelles qui assurent le fonctionnement du produit. Google, qui utilise les principes de l'ESR depuis près de deux décennies, le définit comme \"ce que vous obtenez lorsque vous traitez les opérations comme s'il s'agissait d'un problème de logiciel\". Le lien sécurité entre les développeurs et les équipes opérationnelles Le texte, intitulé 'Building Secure and Reliable Systems', se concentre sur la façon dont Google apporte une approche SRE à la sécurité, et le rôle de la sécurité dans le développement et les opérations de produits logiciels. Les précédents ouvrages de Google sur le SRE couvraient les meilleures pratiques en la matière, mais ne traitaient pas des liens entre fiabilité et sécurité. \"Pour de bonnes raisons, les équipes de sécurité des entreprises ont largement mis l'accent sur la confidentialité. Cependant, les entreprises reconnaissent souvent que l'intégrité et la disponibilité des données sont tout aussi importantes, et abordent ces domaines avec des équipes différentes\", explique Royal Hansen, l'un des premiers responsables SRE pour Gmail et l'actuel vice-président de l'ingénierie de la sécurité de Google. \"La fonction SRE est une approche de la fiabilité qui est la meilleure de sa catégorie. Toutefois, elle joue également un rôle dans la détection en temps réel des problèmes techniques et la réponse à ceux-ci - y compris les attaques liées à la sécurité sur les accès ou les données sensibles. En fin de compte, si les équipes d'ingénieurs sont souvent séparées sur le plan organisationnel en fonction de compétences spécialisées, elles ont un objectif commun : assurer la qualité et la sécurité du système ou de l'application\". Un système peut-il être fiable s'il n'est pas fondamentalement sûr ? Ou peut-il être sûr s'il n'est pas fiable ? Le livre s'ouvre sur les questions suivantes : un système peut-il être considéré comme vraiment fiable s'il n'est pas fondamentalement sûr ? Ou peut-il être considéré comme sûr s'il n'est pas fiable ? La première histoire mentionnée par Google est celle d'un échec en cascade en 2012, après que son service de transport ait annoncé que le mot de passe Wi-Fi de ses bus reliant ses campus de la baie de San Francisco avait changé. Le flot d'employés essayant de changer leur mot de passe a surchargé son gestionnaire de mots de passe et l'a mis hors ligne, ainsi que ses trois services de secours. Google avait besoin d'une carte à puce pour redémarrer le système et en disposait dans plusieurs bureaux à travers le monde, mais ne pouvait pas y accéder aux États-Unis. L'entreprise a donc fait appel à des ingénieurs en Australie pour en trouver une là-bas. Il s'est avéré qu'elle était enfermée dans un coffre-fort avec un code que l'ingénieur avait oublié. Google et le mystère de la carte à puce Et où le code avait-il été sauvegardé ? Bien sûr, dans le gestionnaire de mots de passe qui était désormais inaccessible. Mais il y a eu encore plus de problèmes lorsque les ingénieurs ont tenté de redémarrer le gestionnaire de mots de passe. \"Ce jour-là, en septembre, l'équipe des transports de l'entreprise a envoyé un courriel à des milliers d'employés pour leur annoncer que le mot de passe du WiFi avait changé. Le pic de trafic qui en a résulté était bien plus important que ce que le système de gestion des mots de passe - qui avait été développé des années auparavant pour un petit groupe d'administrateurs système - pouvait gérer\". \"La charge a fait que la réplique primaire du gestionnaire de mots de passe ne répondait plus, de sorte que l'équilibreur de charge a détourné le trafic vers la réplique secondaire, qui a rapidement échoué de la même manière. À ce stade, le système a bipé l'ingénieur de garde. L'ingénieur n'avait aucune expérience en matière de réponse aux pannes du service : le gestionnaire de mots de passe était supporté au mieux de ses capacités et n'avait jamais subi de panne au cours de ses cinq années d'existence. L'ingénieur a tenté de redémarrer le service, mais ne savait pas qu'un redémarrage nécessitait une carte à puce\". De l'avantage d'insérer correctement une carte dans un lecteur \"Ces cartes à puce étaient stockées dans plusieurs coffres-forts dans différents bureaux de Google à travers le monde, mais pas à New York, où se trouvait l'ingénieur de garde. Lorsque le service n'a pas pu redémarrer, l'ingénieur a contacté un collègue en Australie pour récupérer une carte à puce. À son grand désarroi, l'ingénieur australien n'a pas pu ouvrir le coffre-fort car la combinaison était stockée dans le gestionnaire de mots de passe désormais hors ligne. Heureusement, un autre collègue en Californie avait mémorisé la combinaison dans le coffre-fort sur place et a pu récupérer une carte à puce\". \"Cependant, même après que l'ingénieur californien ait inséré la carte dans un lecteur, le service n'a pas redémarré et affichait l'erreur incompréhensible suivante : \"Le mot de passe ne peut charger aucune des cartes protégeant cette clé\". Les ingénieurs australiens ont alors décidé qu'une approche de force brute était justifiée pour résoudre leur problème de sécurité et ont utilisé une perceuse électrique pour cela. Une heure plus tard, le coffre-fort était ouvert - mais les cartes récupérées dedans ont déclenché le même message d'erreur. \"Il a fallu une heure supplémentaire pour que l'équipe se rende compte que la carte n'avait pas été insérée correctement. Lorsque les ingénieurs ont retourné la carte, le service a redémarré et la panne a pris fin\". Source : \"ZDNet.com\" Source : https:www.zdnet.fr/actualites/google-comment-la-reinitialisation-de-mot-de-passe-wi-fi-a-paralyse-l-un-de-nos-systemes-39902079.htm\n06 avril 2019\nAttestation de déplacement sur mobile\nLe générateur de QR code est disponible depuis le 06 avril 2020. Il permet de générer un QR code qui devra être présenté en cas de contrôle. L’impression ou la version manuscrite de l’attestation dérogatoire est encore possible. Une seule adresse : https:media.interieur.gouv.fr/deplacement-covid-19/ Une fois sur la page, la personne remplit son formulaire de la même façon que la version papier (nom, prénom, adresse, date de naissance, lieu de naissance, date et heure de sortie, raison). Toutes les informations doivent être renseignées. Une fois cette démarche réalisée, un PDF sera généré. Il inclus un QR code qui devra être présenté aux policiers ou aux gendarmes en cas de contrôle. Les gendarmes et la police seront équipés de l’application Android sur des terminaux sécurisés. L'application nommée CovidReader, a été développée par le STI2S (service des technologies et des SI de la sécurité intérieure). A voir si celle-ci pourra être utilisée pour enregistrer les sorties et réaliser des statistiques. Exemple de sortie du QR code :\n<pre>\nCree le: 06/04/2020 a 20h38; Nom: Dupont; Prenom: Jean; Naissance: 01/01/1970 a Lyon; Adresse: 999 avenue de france 75001 Paris; Sortie: 06/04/2020 a 20h38; Motifs: \n</pre> Source : https:www.lemondeinformatique.fr/actualites/lire-attestation-de-deplacement-sur-mobile-le-generateur-de-qr-code-disponible-78675.html\nCovid-19 : Google libère les données de géolocalisation dans 131 pays\nQuelques jours après Orange, c'est au tour de Google de lâcher dans la nature les données de géolocalisation - anonymisées - des centaines de millions d'utilisateurs de son service Maps. « À partir d'aujourd'hui, nous publions une version anticipée de nos rapports sur la mobilité communautaire COVID-19 pour donner un aperçu de ce qui a changé en réponse au travail à domicile, au logement sur place et à d'autres politiques visant à aplanir la courbe de cette pandémie, a expliqué la société dans un billet de blog. Au total, une analyse de l'évolution des déplacements a été effectuée pour 131 pays dont la France, accessible depuis ce site. Les données pour la France sont assez représentatives des conséquences des mesures de confinement prises par le gouvernement pour faire face à la pandémie Covid-19 qui affecté 59 105 personnes et provoqué le décès de 4 503 d'entre elles d'après les données de Santé Publique France au 2 avril 2020. Parmi les principaux enseignements du rapport concernant l'Hexagone, Google fait état d'une chute de 88% des déplacements pour se rendre dans des magasins, restaurants, cafés ou encore des parcs de loisirs, musés, bibliothèques ou encore cinémas. Covid-19 Evolution des déplacements en France selon les données de géolocalisation anonymisées émanant de Google Maps. (crédit : Google) Concernant les commerces alimentaires et les pharmacies, la baisse est moindre (-72%) qui s'explique par la mise en place de dérogations pour permettre aux Français de se rendre dans des commerces pour répondre à des besoins de première nécessité. Les trajets vers les parcs et places publiques sont aussi en chute libre (-82%), tout comme les grands lieux de transits et de transports (stations, gares...) affichant un recul abyssal de 87%. En revanche, les déplacements vers les lieux de travail sont, certes, également touchés (-56%) preuve que le télétravail - ou la contrainte liée au chômage partiel et donc le fait de rester confiné à la maison - fonctionnent à plein mais aussi qu'une bonne partie de la population poursuit ses déplacements à titre professionnel vers leurs lieux de travail, bénéficiant également d'une possible dérogation. A noter que l'étude de Google s'intéresse aux évolutions des déplacements par régions. L'occasion de remarquer par exemple que l'Ile-de-France tient la palme en matière de recul des déplacements vers les lieux de travail (-63%), pouvant s'expliquer pour une prédisposition « naturelle » des salariés pour le télétravail. Source : https:www.lemondeinformatique.fr/actualites/lire-covid-19-google-libere-les-donnees-de-geolocalisation-dans-131-pays-78674.html\n3 000 machines avec SQL Server infectées par jour depuis 2018\nChaque jour depuis deux ans entre 2 à 3 000 serveurs dédiés à Microsoft SQL Server sont contaminés dans le monde. D'après une dernière étude de Guardicore, les principaux pays concernés sont la Chine, l'Inde, les Etats-Unis, la Corée du Sud et la Turquie. Les entreprises ayant des activités à l'international dans ces pays ont donc intérêt à redoubler de vigilance, leurs systèmes étant susceptibles d'être victimes d'attaques aussi variées que redoutables : DDoS, backdoors, exécution de logiciels malveillants de contrôle d'accès à distant, cryptomineurs en font parti. « Les victimes appartiennent à divers secteurs industriels, notamment les soins de santé, l'aviation, l'informatique et les télécommunications et l'enseignement supérieur », indique Guardicore Labs. Le premier incident de ce type a avoir été identifé par Guardicore Labs remonte à mai 2018 via son réseau de capteurs mondial (Global Sensors Network) servant d'honeypot. Depuis, un pic d'attaques ciblant les serveurs MS SQL Server a été enregistré en décembre dernier. En analysant de près les fichiers de logs, les chercheurs en sécurité du fournisseur ont été en mesure de déterminer que 60% des machines touchées restent infectées pour une période courte de temps, mais que près de 20% restent vulnérables pendant une semaine voire plus laissant le temps aux cyberattaquants d'agir. « Nous avons remarqué que 10% des victimes ont été re-infectés par un malware », indique Guardicore Labs. « Ce modèle de réinfection a déjà été observé dans l'analyse de la campagne Smominru, et suggère que la suppression des logiciels malveillants se fait souvent de manière partielle, sans enquête approfondie sur la cause profonde de l'infection ».\nEliminer la concurrence pour régner en maitre sur les systèmes infectés Au global, ces attaques baptisées « Vollgar » par Guardicore Labs émanent de plus de 120 adresses IP. La brèche initiale exploitée commence avec des attaques par force brute pouvant aboutir à des changements de configuration dans les bases de données permettant de préparer le terrain à de futures exécutions de commandes malveillantes. Par la suite, les pirates effectuent plusieurs étapes pour rendre le système le plus ouvert possible, en commençant par la validation de certaines classes COM (WbemScripting.SWbemLocator, Microsoft.Jet.OLEDB.4.0 et Windows Script Host Object Model. « Ces classes prennent en charge à la fois les scripts WMI et l'exécution de commandes via MS-SQL, qui seront ensuite utilisées pour télécharger le binaire malveillant initial », indique le fournisseur. « L'attaquant Vollgar s'assure également que les fichiers stratégiques tels que cmd.exe et ftp.exe disposent des autorisations d'exécution ». De quoi permettre l'installation de backdoors et des attaques par escalade de privilèges utilisateurs. Bien souvent les pirates essaient par tous les moyens d'éliminer la concurrence. Sans surprise, c'est également le cas ici encore avec des efforts réalisés en semant leur trace. Cela passe par l'effacement de la clé HKLM\\SOFTWARE\\Microsoft\\Command Processor\\Autorun utilisée pour des attaques persistantes ou encore de valeurs depuis Image File Execution Options. « En supprimant ces valeurs, Vollgar garantit qu'aucun autre malware n'est attaché aux processus légitimes, tels que cmd.exe, ftp.exe, net.exe et les hôtes de script Windows tels que wscript.exe et cscript.exe ». Des charges malveillantes peuvent ensuite être activées. « La charge utile initiale, nommée SQLAGENTIDC.exe ou SQLAGENTVDC.exe, commence par exécuter taskkill sur une longue liste de processus, dans le but d'éliminer les concurrents et de gagner plus de ressources informatiques. Ces processus incluent Rnaphin.exe, xmr.exe et winxmr.exe, pour n'en nommer que quelques-uns. Ensuite, la charge utile se copie dans le dossier AppData de l'utilisateur et exécute la copie. Le nouveau processus vérifie la connectivité Internet, puis interroge Baidu Maps pour obtenir l'IP et la géolocalisation de la victime qu'il envoie ensuite au C&C. Ensuite, quelques charges utiles supplémentaires sont téléchargées sur la machine infectée - plusieurs modules RAT et un cryptominer basé sur XMRig ».\nDeux serveurs C&C opérés depuis la Chine Deux serveurs de commande et de contrôle (C&C) ont été identifiés par Guardicore Labs en lien avec les attaques Vollgar, dotés de capacités en téléchargement de fichiers, installation de services Windows, enregistreurs de frappes, captures d'écran, exécution d'un terminal shell dynamique, activation des caméras et microphones, initialisation d'attaques DDoS... Pour se prémunir de ce type d'attaques, le fournisseur propose un script Powershell permettant de détecter ce vecteur d'attaque. Contrôler les communications réseau avec des serveurs distants et activer des blocages en conséquence est bien évidemment recommandé, en se basant par exemple sur un service de réputation adossé à son firewall. Source : https:www.lemondeinformatique.fr/actualites/lire-3-000-machines-avec-sql-server-infectees-par-jour-depuis-2018-78660.html\nLe ransomware visant Marseille perturbe le décompte des décès Covid-19\nLes dommages des ransomwares ont parfois des conséquences inattendues et celui qui a touché la ville de Marseille il y a quelques semaines refait ainsi parler de lui. Alors que la ville se remet petit à petit des impacts sur son système d'information de cette cyberattaque - à l'image d'Antibes et également de la Métropole Provence Alpes Côte d'Azur - l'INSEE a publié vendredi dernier les données de mortalité liées au coronavirus. Quel rapport ? En raison du ransomware, les services administratifs de la ville de Marseille n'ont pas pu faire remonter les informations requises à des fins de traitement statistiques demandées par l'institut. « La rapidité de remontée de ces informations varie également selon les départements et pourrait être perturbée par les mesures de confinement, de même que le choix des modalités de transmission (dématérialisé ou courrier postal). Les dernières données quotidiennes sont donc à prendre avec précaution ; elles seront révisées », a précisé l'INSEE dans une note méthodologique. « Depuis le 13 mars, la mairie de Marseille n’a pu transmettre aucun nouveau décès du fait d’un problème technique. C’est pourquoi les données des Bouches-du-Rhône sont pour le moment arrêtées au 11 mars ».\nUn retour temporaire au registre papier Contactée par notre confrère LCI, l'INSEE a apporté la précision suivante : « La comptabilisation des décès est, en effet, suspendue en raison d’un problème informatique à la mairie de Marseille [...] La seule commune de Marseille enregistrant la moitié des décès pour toutes les Bouches-du-Rhône, publier des résultats de ce département sans ses chiffres serait peu représentatif ». Et la mairie de Marseille d'indiquer de son côté : « L'attaque a mis à mal nos capacités et nous n'avons pas pu envoyer nos informations à l'Insee dans les délais requis. » En attendant la mise à jour du logiciel habituellement utilisé pour saisir et transmettre ses données à l'Insee et à la Préfecture, la ville de Marseille se résout en attendant à tenir à jour un registre papier. Ce problème intervient dans un contexte de tensions autour du protocole à base de chloroquine promue par la professeur Raoult de l'IHU Méditerranée. Source : https:www.lemondeinformatique.fr/actualites/lire-le-ransomware-visant-marseille-perturbe-le-decompte-des-deces-covid-19-78684.html\nles dépenses en infrastructure cloud ont dépassé les dépenses en infrastructure informatique traditionnelle\nSelon le cabinet de recherche IDC, le total des dépenses des utilisateurs finaux en produits d'infrastructure informatique (serveur, stockage d'entreprise et commutateur réseau) pour les environnements cloud, y compris le cloud public et privé, a renoué avec la croissance au quatrième trimestre 2019 après deux trimestres consécutifs de baisse. La croissance de 12,4 % d'une année sur l'autre au 4T19 a généré 19,4 milliards de dollars de dépenses. Les résultats du quatrième trimestre ont également permis de faire passer l’année au vert avec une croissance annuelle de 2,1 % et des dépenses totales de 66,8 milliards de dollars pour 2019. Parallèlement, le marché global des infrastructures informatiques a éprouvé de la difficulté après sa solide performance en 2018, en hausse de 3,3 % à 38,1 milliards de dollars au 4T19 mais en baisse de 1,1 % à 134,4 milliards de dollars pour l'ensemble de l'année. L'infrastructure informatique non cloud a baissé de 4,6 % à 18,7 milliards de dollars pour le trimestre et a baissé de 4,1 % à 67,7 milliards de dollars pour l'année. Au 4T19, la croissance des dépenses en infrastructure informatique cloud a été tirée par le segment du cloud public, qui a augmenté de 14,5 % d'une année sur l'autre pour atteindre 13,3 milliards de dollars; le cloud privé a augmenté de 8,2 % pour atteindre 6,1 milliards de dollars. Comme le segment global est généralement à la hausse, il a tendance à être plus volatil au niveau trimestriel, car une partie importante du segment informatique du cloud public est représentée par quelques fournisseurs de services à grande échelle. Après un milieu d'année plus faible, le cloud public a terminé 2019 à peine en hausse de 0,1 % à 45,2 milliards de dollars. Le cloud privé a augmenté de 6,6 % en 2019 pour atteindre 21,6 milliards de dollars. Alors que les investissements dans l'infrastructure informatique cloud continuent d'augmenter, avec des fluctuations durant les trimestres intermédiaires, IDC note que ce secteur approche le point où les dépenses en infrastructure informatique cloud dépassent systématiquement les dépenses en infrastructure informatique non cloud. Le quatrième trimestre 2019 a marqué le troisième trimestre consécutif de leadership informatique cloud avec une part annuelle légèrement inférieure au point médian (49,7 %). Désormais, IDC s'attend à ce que l'infrastructure informatique cloud reste au-dessus de 50 % du marché de l'infrastructure informatique aux niveaux trimestriel et annuel, atteignant 60,5 % par an en 2024. Dans les trois domaines technologiques de l'infrastructure informatique, les plateformes de stockage ont connu la croissance la plus rapide d'une année sur l'autre au 4T19 à 15,1 %, les dépenses atteignant 6,6 milliards de dollars. Les plateformes de calcul ont augmenté de 14,5 % d'une année sur l'autre avec 10,8 milliards de dollars de dépenses, tandis que les commutateurs réseau ont diminué de 3,9 % pour s'établir à 2,0 milliards de dollars. Pour l'ensemble de l'année 2019, les commutateurs réseau ont dominé avec une croissance d'une année sur l'autre de 5,0 % et 8,2 milliards de dollars de dépenses, suivis des plateformes de stockage avec une croissance de 1,9 % et des dépenses de 23,1 milliards de dollars, et des plateformes de calcul avec une croissance de 1,5 % et des dépenses de 35,5 milliards de dollars. Prévisions du marché de l'infrastructure informatique cloud Après avoir pris en comptes les répercussions de la pandémie COVID-19 et de la crise économique qui s’en est suivi, IDC estime qu’en 2020 les dépenses en infrastructure informatique cloud vont s’élever à 69,2 milliards de dollars, soit une augmentation annuelle prévue de 3,6 % par rapport à 2019. Les dépenses d'infrastructure informatique non cloud sont devrait reculer de 9,2 % pour atteindre 61,4 milliards de dollars en 2020. Ensemble, les dépenses globales en infrastructure informatique devraient reculer de 2,9 % pour s'établir à 130,6 milliards. La pandémie de COVID-19 représente une grave menace pour la croissance mondiale. Avant l'épidémie, la croissance mondiale prévue était de 2,3 % (aux taux de change du marché) en 2020. L'émergence de l'épidémie en Chine change la donne et la croissance attendue pour 2020 est désormais de -0,2 %, la plus lente depuis la crise financière mondiale. L'effet négatif sur la croissance proviendra à la fois des canaux de demande et d'approvisionnement. D'une part, les mesures de quarantaine, la maladie et le sentiment négatif des consommateurs et des entreprises vont supprimer la demande dans des domaines spécifiques, tandis que certaines poches de demande feront surface, telles que les plateformes cloud pour les charges de travail de communication et de collaboration. Dans le même temps, la fermeture de certaines usines et la perturbation des chaînes d'approvisionnement créeront des goulots d'étranglement. IDC s'attend à ce que ces effets soient répartis de manière inégale dans le paysage du marché. « Alors que le début de 2020 a été marqué par des problèmes de chaîne d'approvisionnement qui devraient être résolus avant la fin du deuxième trimestre, l'impact économique négatif affectera les dépenses en CAPEX des entreprises », a déclaré Kuba Stolarski, directeur de la recherche, Infrastructure Systems, Platforms and Technologies. chez IDC. « Alors que les budgets informatiques des entreprises se resserrent tout au long de l'année, le cloud public verra une augmentation de la demande de services. Cette augmentation proviendra en partie de la montée en puissance des employés travaillant à domicile utilisant des outils de collaboration en ligne, mais aussi de la migration de la charge de travail vers le cloud public tandis que les entreprises cherchent des moyens d'économiser de l'argent pour l'année en cours. Une fois la pandémie passée, IDC s'attend à ce qu'une partie de cette nouvelle demande de services cloud reste constante à l'avenir ». Les nouvelles prévisions quinquennales d'IDC prévoient que les dépenses d'infrastructure informatique cloud atteindront 100,1 milliards de dollars en 2024 avec un taux de croissance annuel composé (TCAC) de 8,4 %. Les dépenses d'infrastructure informatique hors cloud diminueront légèrement à 65,3 milliards de dollars avec un TCAC de -0,7 %. L'infrastructure informatique totale devrait croître à un TCAC de 4,2 % et produire des dépenses de 165,4 milliards de dollars en 2024. Source : IDC Source : https:cloud-computing.developpez.com/actu/299145/IDC-les-depenses-en-infrastructure-cloud-ont-depasse-les-depenses-en-infrastructure-informatique-traditionnelle-pour-le-troisieme-trimestre-consecutif/\nZoom a routé des appels vers la Chine\nZoom a routé des appels vers la Chine. Le 3 avril, Eric Yuan, CEO de Zoom, a admis que des appels dans son application avaient été routés par erreur vers la Chine. Cela s’est déroulé au démarrage de la pandémie, quand l’entreprise a augmenté sa capacité à gérer la demande, en commençant par Wuhan. Dans la précipitation, l’Américain avoue ne pas avoir appliqué ses habituelles bonnes pratiques de géo-fencing. Les chercheurs canadiens qui ont identifié le problème ont également découvert que le contenu de conversations Zoom entre deux utilisateurs nord-américains pouvait être chiffré avec des clés venant de serveurs situés en Chine. De nouveaux problèmes pour l’Américain déjà fortement critiqué pour ses failles de sécurité. Source : https:www.lemondeinformatique.fr/actualites/lire-telex-ap-hp-imprime-des-equipements-en-3d-zoom-a-route-des-appels-vers-la-chine-edge-detrone-firefox-78687.html\nChrome : face au coronavirus, Google fait marche arrière vis-à-vis des cookies\nAfin d’assurer la stabilité des sites web en ces temps de crise, Google a décidé de suspendre une importante mesure de sécurité introduite en février dernier. Face à la crise du Covid-19, Google rétropédale sur une nouvelle mesure de sécurité introduite en février dernier avec l’arrivée de Chrome 80. A savoir le blocage par défaut des cookies de tiers. Ces derniers, en effet, peuvent représenter un risque de vol de données personnelles ou de piratage (attaques de type Cross-Site Request Forgery). Pour éviter le blocage de cookies tiers, les éditeurs de site sont désormais contraints de les identifier explicitement, et donc de donner d’une certaine manière leur approbation. Concrètement, cela revient à rajouter un tag baptisé « SameSite » dans le code du site web pour l’ensemble des cookies utilisés.\nA découvrir aussi en vidéo Mais avec la crise du coronavirus, beaucoup d’organisations n’ont pas eu le temps d’appliquer ces changements. Et dans certains cas, cela risque de casser le fonctionnement de leur site. C’est le cas, par exemple, si elles utilisent des services d’identification tiers tels que Facebook Login. Afin de préserver la stabilité des sites, Google a donc décidé de suspendre cette mesure de sécurité. Source : Google Source : https:www.01net.com/actualites/chrome-face-au-coronavirus-google-fait-marche-arriere-vis-a-vis-des-cookies-1889721.html\nAu Royaume-Uni, des antennes 5G incendiées à cause d’une théorie du complot\nBirmingham, Liverpool, Melling (Meyerside)… au cours de la semaine écoulée, trois antennes téléphoniques ont été incendiées au Royaume-Uni, rapporte la presse britannique. Au moins quatre antennes ont été visées par des tentatives de dégradations durant le week-end du 4 et 5 avril, rapporte l’opérateur Vodafone — un départ d’incendie a également été signalé à Belfast, en Irlande du Nord. Ces trois incendies, dont l’origine criminelle ne fait guère de doute, se sont produits alors qu’une théorie du complot très populaire outre-Manche fait le lien entre l’apparition du coronavirus et le déploiement des antennes 5G dans le pays. Particulièrement fantasque, cette hypothèse, dont il existe plusieurs variantes, prétend soit que l’épidémie a été « inventée » pour « couvrir » les conséquences sur la santé de la 5G, soit que les ondes 5G « chassent » l’air des poumons et ont facilité ou provoqué les contaminations de Covid-19. Ces théories ont également été propagées par certaines célébrités britanniques, dont Amanda Holden, la juge de l’émission de télé-réalité « Britain’s got talent », qui a diffusé, à ses presque deux millions d’abonnés Twitter, une pétition liant la 5G à l’épidémie. Dans un communiqué, le régulateur des télécommunications britannique précise : « Nous avons reçu plusieurs rapports de vandalisme visant des antennes téléphoniques, mais aussi d’agressions d’employés des télécommunications, inspirées par des théories cinglées du complot qui circulent sur Internet. Les responsables de ces actes seront poursuivis avec la plus grande sévérité. » Des salariés d’une filiale de British Telecom (BT) chargés d’installer les raccordements à Internet dans les foyers britanniques ont également publié plusieurs appels au calme sur les réseaux sociaux, après plusieurs incidents au cours desquels des employés ont été menacés dans la rue. Le maire de Liverpool, Joe Anderson, a dit avoir reçu des menaces après avoir dénoncé ces théories.\nDes limitations sur les réseaux sociaux Certains réseaux sociaux, dont YouTube, ont annoncé qu’ils mettraient en place de nouvelles mesures pour limiter la diffusion des vidéos complotistes liant la technologie 5G à l’épidémie de Covid-19 : « Nous avons commencé à diminuer la place des vidéos qui promeuvent les théories du complot sur la 5G et l’épidémie, qui désinforment nos utilisateurs de manière dangereuse. » Les vidéos devraient désormais apparaître moins fréquemment dans les suggestions de vidéos à regarder, qui sont une gigantesque source de trafic sur la plate-forme. Sur Facebook, une recherche « 5G coronavirus » affiche, dans ses premiers résultats, plusieurs messages défendant cette théorie du complot, avant ceux des autorités sanitaires, a pu constater Le Monde, lundi matin. Mais le problème ne touche pas que les réseaux sociaux : le régulateur des médias britannique a également sanctionné une radio locale qui avait donné une large place sur son antenne à une personne propageant cette théorie.\nLire aussi Facebook, YouTube… les grandes plates-formes d’Internet face au défi du coronavirus Ces attaques contre le réseau téléphonique inquiètent également les responsables du réseau de santé britannique. Stephen Powis, le directeur médical du National Health Service, le service de santé britannique, a vivement dénoncé ces actes de vandalisme : « La réalité est que les réseaux mobiles sont absolument critiques pour nous tous, alors que nous demandons à tous les citoyens de rester chez eux et de ne pas voir leurs parents et amis. Mais plus particulièrement, ces réseaux sont utilisés par nos services de secours et les travailleurs du système de santé, et je suis totalement furieux, totalement dégoûté de voir qu’il y a des attaques contre les infrastructures mêmes qui nous permettent de répondre à cette urgence sanitaire. » Les antennes incendiées ces derniers jours n’étaient pas toutes des antennes 5G. Selon la BBC, au moins l’une des tours incendiées semblait ne pas contenir d’antenne 5G. Source : https://www.lemonde.fr/pixels/article/2020/04/06/au-royaume-uni-des-antennes-5g-incendiees-a-cause-d-une-theorie-du-complot-sur-le-coronavirus60357184408996.html"},"score":0.75,"snippet":"14 avril 2019\nLe Wi-Fi 6 met le cap sur la bande des 6 GHz\nTechnologie : La Wi-Fi Alliance a annoncé l'adoption d'une nouvelle terminologie, Wi-Fi 6E, pour les appareils pouvant fonctionner sur la bande des 6 GHz. Une ba…","tier":2},{"article":{"uuid":"4e94ad54-b79b-40e2-8d6c-14c546719606","slug":"plus-de-bruit-de-fond","title":"Un peu de bruit de fond","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-04-17 18:05:21","created_at":"2020-04-17 18:05:21","updated_at":"2020-04-17 18:05:21","plain":"Bruit de fond. C'est à la fois du silence et du bruit sourd.\\\\\nRelaxant, et doux, comme le bruit du vent dans une grotte. A essayer quand on souhaite ne rien écouter. Pas trop fort, pas trop bas, juste le niveau qu'il faut pour resentir sa peau frissonner à attendre ses sons selestes, ses bruits provenant de la Nature."},"score":0.75,"snippet":"Bruit de fond. C'est à la fois du silence et du bruit sourd.\\\\\nRelaxant, et doux, comme le bruit du vent dans une grotte. A essayer quand on souhaite ne rien écouter. Pas trop fort, pas trop bas, juste le niveau qu'il fa…","tier":2},{"article":{"uuid":"9710aeae-eadf-4f2e-b776-c6e1c2f10d33","slug":"l-assurance-maladie-me-doit-l-argent","title":"L'Assurance Maladie me doit de l'argent » : anatomie d'une arnaque par hameçonnage","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-04-17 18:05","created_at":"2020-04-17 18:05:20","updated_at":"2026-05-12 20:26:45","plain":"Un beau matin, un courriel atterrit dans la boîte de réception. L'expéditeur affiche fièrement « Assurance Maladie », l'objet annonce un remboursement à percevoir, et un lien promet d'expliquer la marche à suivre pour récupérer la somme due. Tout semble en ordre. Et pourtant, à peine la souris approchée du lien, plusieurs garde-fous se déclenchent les uns après les autres : Thunderbird signale une tentative de fraude, Firefox refuse de charger la page, et le site cible n'a rien à voir avec . Bienvenue dans le monde du phishing, ou hameçonnage en français.\r\n\r\n\r\n\r\nCe billet revient sur l'anecdote en détail, mais surtout l'utilise pour décortiquer le mécanisme général de ce type d'arnaque, comprendre pourquoi elle fonctionne sur tant de personnes, et adopter quelques réflexes simples qui suffisent à s'en prémunir dans la quasi-totalité des cas.\r\n\r\n1. Qu'est-ce que le phishing ?\r\n\r\nLe terme phishing est un mot-valise construit sur l'anglais fishing (la pêche) et phreaking (piratage téléphonique). L'image est exacte : l'escroc lance un appât — un message crédible — et attend qu'une victime morde. Sa cible n'est pas un ordinateur ni une faille technique, c'est un humain. Plus précisément, c'est la confiance, l'inattention ou l'envie de cette personne.\r\n\r\nConcrètement, une attaque par hameçonnage consiste à se faire passer pour un organisme légitime (banque, impôts, Assurance Maladie, opérateur télécom, service de livraison, etc.) afin d'obtenir de la victime qu'elle livre d'elle-même des informations sensibles : identifiants de connexion, numéro de carte bancaire, copie de pièce d'identité, parfois même un virement direct.\r\n\r\nTrois ingrédients reviennent à chaque fois :\r\nUne marque connue dont l'identité visuelle est imitée (logo, couleurs, ton du message).\r\nUn prétexte émotionnel qui pousse à agir vite : remboursement à percevoir, colis bloqué, compte suspendu, amende impayée.\r\nUn lien qui paraît légitime mais redirige en réalité vers un site contrôlé par l'attaquant.\r\n\r\nL'arnaque ameli.fr coche les trois cases.\r\n\r\n2. Décorticage du courriel reçu\r\n\r\nLe message annonce un versement de l'Assurance Maladie. Le scénario est habilement choisi : recevoir de l'argent flatte, intrigue, et désarme la vigilance. Personne ne se méfie d'un cadeau. Pourtant, en regardant de plus près le lien embarqué dans le message, on découvre une adresse pour le moins surprenante :\r\n\r\n\r\n\r\nTrois éléments doivent immédiatement alerter :\r\n\r\n1. Le domaine n'est pas . Le vrai domaine, lu de droite à gauche en partant du dernier point, est — un hébergeur sud-coréen. Le reste () est un sous-domaine, et le mot n'est qu'un nom de fichier choisi pour tromper. Aucun service public français n'héberge ses pages chez un hébergeur étranger commercial.\r\n2. Le protocole est , pas . Toute page officielle traitant de données personnelles ou bancaires utilise aujourd'hui une connexion chiffrée. Un site qui demande des informations sensibles en clair signe son illégitimité.\r\n3. Les segments sont des marqueurs typiques de campagnes de phishing automatisées : chaque destinataire reçoit un identifiant unique, ce qui permet à l'attaquant de suivre qui a cliqué et d'affiner ses prochaines vagues.\r\n\r\nLire l'adresse d'un lien avant de cliquer dessus est donc la première compétence à acquérir. Sur un ordinateur, il suffit de survoler le lien sans cliquer : l'adresse réelle apparaît en bas de la fenêtre du navigateur ou du client de messagerie.\r\n\r\n3. Les garde-fous techniques font (parfois) leur travail\r\n\r\nDans le cas raconté ici, les outils ont parfaitement joué leur rôle. Thunderbird, le client de messagerie, a détecté que le texte affiché du lien ne correspondait pas à sa destination réelle et a affiché un avertissement clair.\r\n\r\n\r\n\r\nCette détection repose sur une règle simple mais efficace : si le texte visible du lien ressemble à une URL (par exemple ) mais que la destination effective pointe ailleurs, c'est un signal extrêmement fort de tentative de tromperie. Aucun site légitime ne fait cela.\r\n\r\nLe second rempart est intervenu côté navigateur. Firefox, en suivant malgré tout le lien, a interrogé une base de sites malveillants connus (le service Google Safe Browsing, partagé entre les principaux navigateurs) et a bloqué l'accès.\r\n\r\n\r\n\r\nCes protections sont précieuses, mais il faut bien comprendre leurs limites :\r\nElles arrivent toujours en retard. Une nouvelle campagne de phishing fonctionne pendant plusieurs heures, parfois plusieurs jours, avant d'être signalée et ajoutée aux listes noires. Les premières victimes ne sont jamais protégées par ces filtres.\r\nElles peuvent être contournées. L'utilisateur a la possibilité d'ignorer l'avertissement, comme dans l'exemple où la curiosité l'a emporté.\r\nElles ne couvrent pas tous les canaux. Un SMS, un appel téléphonique, un message sur les réseaux sociaux ne déclenchent pas ces alertes.\r\n\r\nLa vigilance humaine reste donc l'ultime ligne de défense, et c'est précisément sur elle que mise l'escroc.\r\n\r\n4. Pourquoi ça marche aussi bien\r\n\r\nComprendre pourquoi tant de personnes se font piéger malgré les avertissements aide à mieux résister. Plusieurs ressorts psychologiques sont systématiquement exploités.\r\n\r\nL'argument d'autorité\r\n\r\nLe message émane d'un organisme officiel, dont la légitimité ne se discute pas. L'Assurance Maladie, les impôts, la banque, La Poste : la marque seule impose le respect et désamorce le doute. L'escroc le sait et choisit toujours une institution familière de sa cible.\r\n\r\nL'urgence ou l'opportunité\r\n\r\nLe cerveau humain traite mal les décisions rapides. Soit le message annonce une catastrophe imminente (« votre compte sera suspendu sous 24 h »), soit il fait miroiter un gain immédiat (« un remboursement de 38,47 € vous attend »). Dans les deux cas, la fenêtre de réflexion se réduit, et c'est exactement l'effet recherché.\r\n\r\nLe mimétisme visuel\r\n\r\nLogos, couleurs, polices, pieds de page : tout est copié à l'identique depuis le vrai site. Pour un œil non entraîné, rien ne distingue le faux du vrai. Et pour cause, le faux a souvent été fabriqué en quelques minutes à partir du code source du vrai.\r\n\r\nLe coût de la vérification\r\n\r\nVérifier prend du temps : ouvrir un onglet, taper l'adresse, se connecter, retrouver son mot de passe. Cliquer ne coûte rien. À court terme, le cerveau choisit toujours la voie la moins coûteuse — et c'est par là que l'escroc s'invite.\r\n\r\n5. La règle d'or : ne jamais cliquer sur un lien d'argent\r\n\r\nDe cette anecdote se dégage un principe qui mérite d'être affiché en grand au-dessus de chaque boîte de réception :\r\nLorsqu'un organisme annonce un versement, un remboursement, un trop-perçu ou tout autre mouvement d'argent en sa faveur, on ne clique jamais sur le lien du courriel. On accède au site par ses propres moyens.\r\n\r\nConcrètement, cela signifie :\r\nOuvrir un nouvel onglet du navigateur.\r\nTaper l'adresse à la main dans la barre d'adresse, ou la sélectionner dans ses favoris.\r\nSe connecter à son espace personnel comme on le fait d'habitude.\r\nVérifier si l'information annoncée par le courriel s'y retrouve réellement.\r\n\r\nDans neuf cas sur dix, l'espace personnel ne mentionne aucun remboursement, et l'origine frauduleuse du message est confirmée. Dans le dixième cas, le remboursement est bien réel, et il sera traité depuis la source officielle sans avoir suivi le moindre lien suspect.\r\n\r\n\r\n\r\nCette règle vaut pour tous les organismes : Assurance Maladie, banques, impôts, CAF, opérateurs, plateformes de commerce. Elle ne demande aucune compétence technique et bloque l'écrasante majorité des tentatives.\r\n\r\n6. Les autres signaux qui doivent éveiller le doute\r\n\r\nAu-delà du lien lui-même, plusieurs détails trahissent souvent un courriel d'hameçonnage. Aucun n'est rédhibitoire à lui seul, mais leur cumul ne trompe pas.\r\n\r\nL'adresse de l'expéditeur. Le nom affiché peut être falsifié à volonté, mais l'adresse email réelle est plus difficile à maquiller. Une adresse en n'a rien d'officiel : seules les adresses se terminant par ou le sont. La règle se généralise : le domaine légitime de chaque organisme est un et un seul, et il s'apprend une fois pour toutes.\r\n\r\nLes fautes d'orthographe et de syntaxe. Une administration française dispose de relecteurs. Un escroc traduit souvent depuis une autre langue, parfois à l'aide d'outils automatiques. Tournures bancales, accents oubliés, fautes d'accord doivent mettre la puce à l'oreille. À noter cependant : avec la généralisation des modèles de langue, ces erreurs disparaissent et ce critère perd progressivement de sa fiabilité.\r\n\r\nUne formule de politesse impersonnelle. « Cher client », « Madame, Monsieur », « Cher utilisateur » : une administration qui dispose de l'état civil de ses assurés s'en sert. Un escroc qui a acheté une liste d'adresses email ne dispose, lui, que de l'adresse.\r\n\r\nUne demande d'informations qu'on ne devrait jamais avoir à fournir. Aucun service public ne demande par courriel un numéro de carte bancaire complet, un mot de passe, un code reçu par SMS, ou la photo d'une pièce d'identité. Si la page d'arrivée réclame ce genre de données, c'est le moment de fermer l'onglet.\r\n\r\nUne pièce jointe inattendue. Une « facture » au format ou envoyée par un organisme public est presque toujours malveillante. Les administrations mettent leurs documents à disposition dans l'espace personnel, pas en pièce jointe.\r\n\r\n7. Que faire en cas de doute, ou en cas d'erreur\r\n\r\nRecevoir un courriel suspect n'est ni grave ni rare. Cliquer dessus par mégarde l'est davantage, mais reste rattrapable. Quelques gestes simples permettent de limiter la casse et de protéger les autres.\r\n\r\nSignaler le message. Le dispositif officiel français s'appelle Signal Spam et permet, via une extension de navigateur ou de client mail, de transmettre les courriels frauduleux aux autorités compétentes et aux fournisseurs d'accès. Pour les SMS, le numéro 33700 joue le même rôle. Pour les tentatives plus sophistiquées, la plateforme Pharos recueille les signalements.\r\n\r\nPrévenir l'organisme usurpé. L'Assurance Maladie dispose d'une adresse dédiée pour transférer les courriels suspects : . La plupart des grandes administrations et entreprises ont une adresse équivalente.\r\n\r\nEn cas de clic accidentel, ne rien saisir et fermer la page. Tant qu'aucune donnée n'a été tapée, le risque est limité au chargement du site, qui peut éventuellement tenter d'exploiter une faille du navigateur. Maintenir son navigateur à jour suffit à neutraliser l'essentiel.\r\n\r\nEn cas de saisie de données, agir vite. Si un mot de passe a été tapé sur le faux site, le changer immédiatement sur le vrai site, et partout ailleurs s'il était réutilisé. Si des données bancaires ont été communiquées, appeler sa banque pour faire opposition. Si une pièce d'identité a été transmise, déposer plainte et demander un signalement auprès de FranceConnect pour surveiller toute usurpation.\r\n\r\n8. Le réflexe à long terme\r\n\r\nAu fil des années, un principe simple et robuste s'impose : considérer par défaut qu'un courriel non sollicité demandant une action en ligne est suspect, et le vérifier par un canal indépendant. Cette posture coûte quelques secondes par message. Elle a évité, chez la plupart de ceux qui l'adoptent, l'écrasante majorité des arnaques en circulation.\r\n\r\nL'anecdote racontée ici se termine bien : les outils ont alerté, la curiosité s'est arrêtée à temps, et l'absence de la moindre saisie sur le faux site a évité tout dégât. Mais elle illustre parfaitement combien le scénario est crédible et combien il est facile, dans un moment de distraction, de baisser la garde.\r\n\r\nLa meilleure protection contre le phishing n'est ni un antivirus, ni un filtre anti-spam, ni un navigateur particulièrement vigilant : c'est l'habitude, lentement acquise, de séparer le messager du message. Un courriel n'est qu'une invitation à vérifier. La vérification, elle, se fait toujours à la source."},"score":0.75,"snippet":"Un beau matin, un courriel atterrit dans la boîte de réception. L'expéditeur affiche fièrement « Assurance Maladie », l'objet annonce un remboursement à percevoir, et un lien promet d'expliquer la marche à suivre pour ré…","tier":2}] |