L’administration française est particulièrement friande des sigles et acronymes. Elle les utilise absolument partout. Le problème c’est que parfois ces abréviations entrent en collision avec d’autres, ce qui peut mener à des situations assez amusantes. Voici une sélection des perles en la matière.
Connaissez-vous le « Paris Poche » ? Il s’agit d’un petit dépliant de 10 cm × 5 cm édité par la RATP et qui est distribué gratuitement, sur demande, aux guichets physiques. On y retrouve le plan des lignes de métro, RER, transilien, tramway et bus pour Paris et sa proche banlieue. Pour information, il existe également une version grand format ainsi qu’une version grand format avec nom des rues, également disponibles gratuitement sur demande, mais c’est clairement le format poche qui est le plus pratique.
Aujourd’hui se tient la cérémonie de panthéonisation de Robert Badinter, célèbre juriste français connu pour ses différentes lutes en faveur des droits humain, notamment pour l’abolition de la peine de mort et la dépénalisation de l’homosexualité. À cette occasion, je ne pouvais pas résister à l’envie de partager une petite anecdote s’étant déroulée en 1940 qui inclue Robert Badinter et Karl Hotz.
Dès lors qu’on administre des serveurs à distance, SSH devient la norme. Le problème c’est que bien souvent la configuration par défaut n’est pas suffisamment sécurisée. Voyons donc comment configurer OpenSSH de manière à avoir quelque chose de vraiment solide côté serveur.
Depuis quelques années, afin de notamment représenter du texte, nous utilisons quasi-exclusivement les standards Unicode et UTF-8. Cependant, peu de gens connaissent la différence entre les deux ainsi que les subtilités sous-jacentes. Je vous propose donc une petite initiation à cet univers bien trop méconnu.
Même si, comme moi, toutes vos machines fonctionnent avec un système d’exploitation libre, il peut arriver que parfois vous ayez tout de même besoin d’utiliser Microsoft Windows. Personnellement je m’en sert principalement pour la compilation d’applications. Oui, je sais, sur GitHub il est possible d’utiliser les actions avec le runner windows-latest mais je ne trouve ça pas toujours pratique ou souhaitable, et surtout il y a également d’autres usages que la compilation. Voyons donc comment mettre en œuvre une machine virtuelle Windows 11 avec VirtualBox.
Les sujets en apparence simple cachent souvent une certaine complexité, ou du moins peuvent être la porte d’entrée vers un univers beaucoup moins simple. C’est par exemple le cas des piles, accumulateurs et batteries ainsi que des chargeurs. Tout le monde sait globalement ce que c’est mais lorsqu’on se retrouve au rayon du supermarché du coin on ne sait généralement pas trop quoi choisir. Réalisons donc un petit topo sur le sujet afin de l’éclaircir et de prendre conscience de l’énorme domaine qu’il cache.
Encore de nos jours, beaucoup d’organismes utilisent Microsoft Active Directory (AD) afin de centraliser la gestion des comptes de leurs personnels. Si en soit ce genre de mécanisme est une bonne chose, il semblerait que, pour des raisons historiques, un aspect pourtant quasi-systématique de la mise en œuvre d’un AD est devenu obsolète voir même contre-productif. Voyons donc cela avec une une petite mise en perspective historique.
Si vous me connaissez vous savez certainement que j’aime bien bricoler. En conséquent, il m’arrive de temps en temps de faire quelques recommandations sur le sujet à des amis. Dans la mesure où non seulement ça me fait me répéter et qu’en plus il est difficile de tout noter ou retenir, voici donc un billet de blog qui recense tous ces conseils d’une manière facilement accessible. Si vous n’avez pas besoin de tout acheter d’un coup (pour ma part j’ai mis des années à accumuler tout ça), je recommande tout de même d’avoir un minimum de matériel de dépannage de base. Notez que je n’aborderai pas tout ce qui est relatif à des domaines spécialisés (travail du bois, électricité, plomberie, carrelage,…).
Dans le précédent article traitant de l’USB, j’ai parlé des câbles disposant d’un connecteur de type A, ce qui était plutôt simple. Il est désormais temps de nous attaquer à quelque chose de bien plus intéressant, à savoir les câbles disposant d’un connecteur de type C.
Afin de changer un peu des sujets tech, je vous propose un article sur une autre de mes passions : le vélo. Aujourd’hui, je vais donc parler d’un sujet qui peut sembler un peu de niche mais qui en vrai intéressera les cyclistes, à savoir les valves de chambres à air.
Si tout le monde connaît déjà plutôt bien les principaux types de cables USB ainsi que leurs connecteurs, rares sont les personnes qui en maîtrisent les subtilités. Ce billet a donc vocation à rappeler les bases, principalement autours des câbles disposant d’un connecteur USB type A, afin de se préparer à un futur billet qui, lui, sera destiné e à la présentation des câbles disposant d’un connecteur USB type C. Compte tenu de la grande complexité des connecteurs de type C, ce billet d’introduction plutôt simple ne me paraît pas être du luxe, et en prime je suis a peu près certain que nous apprendrez tout de même quelque chose.
Bien que je dispose d’un serveur dédié loué chez un fournisseur de service ayant pignon sur rue, j’ai tout de même bien souvent eu un serveur à la maison, la plupart du temps un vieil ordinateur que je préfère réutiliser plutôt que de jeter. C’est ainsi que jusqu’à très récemment j’hébergeai certains de mes services sur un laptop qui m’a été donné par mon employeur de l’époque car à la fois d’un modèle trop ancien et dont une touche du clavier était cassée. Cependant, même les meilleurs choses ayant une fin, un ami m’a récemment fait découvrir l’univers des racks 10" et j’ai finalement succombé à la tentation d’acheter neuf.
Bien que notre quotidien soit de plus en plus numérisé, nous utilisons encore régulièrement des documents papier pouvant contenir des informations plus ou moins sensibles. Il se pose alors la question de leur destruction afin d’éviter que les informations ne tombent entre de mauvaises mains. Parce que oui, avec une copie de votre carte d’identité et quelques bulletins de salaire il est possible de transformer votre vie en enfer comme en atteste ce témoignage. Je vous propose donc de découvrir le monde merveilleux des destructeurs de documents.
Savez-vous précisément ce qu’est une signature électronique et quel est son cadre légal ? Le sujet étant plus complexe qu’il n’y parait, c’est assez flou pour la plupart des gens, ce qui est fort dommage car ce mode de signature permet généralement d’économiser du papier, du temps et bien d’autres choses. Voyons donc ensemble ce qu’il en est vraiment.
Dans la vie, il arrive malheureusement des imprévus pas très réjouissants, notamment des accidents entraînant des blessures plus ou moins graves. Si l’on pense principalement aux activités sportives à risque où à des professions dangereuses, les accidents arrivent également dans la vie de tous les jours. Afin de s’y préparer, il est donc toujours utile d’être formé aux premiers secours et de disposer d’une trousse de secours adaptée. Ayant moi-même été formé, je me suis mis en quête d’une trousse de secours assez généraliste. N’ayant pas trouvé mon bonheur dans les trousses du commerce, je me suis mis à créer la mienne, que je vous détaille donc dans ce billet. C’est quelque chose que j’ai déjà fait sur d’autres réseaux, alors je le refait ici de manière à ce que ce soit plus simple à retrouver et à mettre à jour.
Début 2024, Redis a annoncé changer de licence, passant ainsi de licence libre BSD 3 clauses aux licences non libres « Redis Source Available License » (RSALv2) et « Server Side Public License » (SSPLv1). Ce tournant a généré son lot de controverses et poussé à la créations de forks ainsi qu’au regain d’engouement pour les forks déjà existants. Cependant, pour un de mes projets personnel, j’ai décidé de changer mon fusil d’épaule et de partir sur PostgreSQL.
De nos jours, quasiment tout le monde dispose d’au moins une adresse de courrier électronique (email). Élément central pour nous contacter voir souvent élément d’identification à un service, nous sommes amenés à la confier à de nombreuses entités. Son rôle central dans nos communications modernes fait qu’elle est l’objet de nombreuses convoitises. Quelques précautions d’usage s’imposent donc si l’on souhaite éviter quelques ennuis.
Depuis quelques années nous voyons régulièrement revenir un tableau, quelques fois mis à jour, qui indique le temps que met un pirate à trouver un mot de passe en fonction de la longueur et de la complexité de ce dernier. Ce tableau est même relayé par des institutions ainsi que par des influenceurs police/justice. Mais est-il vraiment fiable ?
Notre vie numérique repose sur les mécanisme d’authentification. Grâce à ces derniers, nous pouvons être reconnu sur les services distants où nous nous sommes inscrit afin qu’ils puissent nous mettre nos informations à disposition. Mais lorsque le mécanisme d’authentification, souvent unique, se révèle insuffisant pour empêcher un tiers non-autorisé d’avoir accès à nos données, c’est le drame. Une première solution est de renforcer ce facteur d’authentification, ce qui se traduit bien souvent en la sélection d’un mot de passe robuste. C’est un bon début, mais malheureusement insuffisant : il faut alors penser à multiplier le nombre de ces facteurs.
D’un premier abord, il peut paraître saugrenu de définir des références circulaires entre deux tables d’une base de données. Cependant, dans certains cas, ça peut s’avérer fort pratique. Imaginons par exemple le cas où vous devez stocker des machines à état dans votre base de données et que chacune de ces machines a une liste d’états qui lui est propre. En toute logique, vous avez donc une table avec les machines et une autre avec ses états possibles :
Depuis longtemps j’administre mes serveurs personnels « à l’ancienne », c’est à dire en installant directement les logiciels dont j’ai besoin sur le système d’exploitation. Pour la plupart de mes usage cela fonctionne très bien car les paquets sont plutôt bien faits. Cependant, avec le temps, j’ai eu de plus en plus envie d’installer des applications web que, pour divers raisons (en particulier la sécurité), je souhaite isoler du reste de ma machine. Je me suis donc lancé à la recherche d’une solution de virtualisation ou de conteneurisation simple et performante.
Que nous le voulions ou non, l’argent est ce qui fait tourner l’immense majorités de nos sociétés contemporaines. Alors forcément, sa circulation fait l’objet d’enjeux sociétaux plus ou moins polémique. C’est ainsi que, voulant agir contre les entreprises qui utilisent le travail de bénévoles pour s’enrichir, un développeur de logiciels libres a pété un plomb.
Toute personne un temps soit peu versée dans la sécurité informatique le sait : il ne faut sous aucun prétexte stocker un mot de passe en clair. À la place, les applications (web ou non) stockent une empreinte numérique de ce mot de passe. Ainsi, lorsque vous vous connectez avec votre mot de passe, l’empreinte de ce dernier est calculée et, si elle correspond à l’empreinte enregistrée pour votre compte, la connexion s’effectue. Ces empreintes sont plus communément appelés des « hash ». Dans ce billet, nous nous intéresseront spécifiquement au stockage des mots de passe des comptes utilisateurs des systèmes de type UN*X.
L’électricité est un élément de notre quotidien qui peut, si les mesures élémentaire de protection ne sont pas respectées, s’avérer dangereux voir parfois mortel. C’est pour éviter des drames que les normes sont contraignantes et évoluent régulièrement. Mais en plus de ces normes et obligation divers, nous pouvons également individuellement améliorer nos comportements.
Contrairement aux versions précédentes qui nécessitaient l’utilisation d’une extension (Enigmail), Thunderbird 78 supporte nativement OpenPGP. Cependant, cette nouvelle intégration n’est pas sans conséquences sur certains usages que l’on pouvait avoir, en particulier le cas des cartes à puce OpenPGP.
Si vous hébergez vos projets sur GitHub ou GitLab, vous avez certainement envie d’utiliser l’outil de wiki intégré pour documenter vos projets. Malheureusement, de base il ne prévoit pas d’option pour l’édition communautaire. Voyons comment remédier à cela.
Les API REST, souvent basées sur du JSON transporté par HTTP, sont à la mode depuis bien longtemps. Et lorsque l’on en développe une, il est bien normal de vouloir authentifier les clients qui réalisent des requêtes. Pour cela beaucoup de solution existent, mais malheureusement toutes ne se valent pas. Nous verrons ainsi une première solution simple, sinon simpliste, puis une seconde solution qui, tout en restant simple, se trouve être bien plus robuste.
Récemment, j’ai participé à un meetup dans les locaux d’un grand hébergeur français connu pour son manque de support de l’IPv6. Forcément, je n’ai pas pu résister à l’idée d’aller troller discuter avec notre hôte sur ce sujet. C’est alors que, de la manière la plus innocente du monde, ce dernier m’a demandé pourquoi est-ce que j’ai besoin de l’IPv6 alors que l’IPv4 fonctionne très bien. Du coup, vu qu’il existe encore de nombreuses personnes qui, comme lui, pensent que l’IPv6 n’est rien de plus qu’un caprice de geek, je publie ici les raisons qui, personnellement, me marquent le plus.
Cette semaine, afin de répondre à un besoin bien précis, j’ai participé (avec grand succès !) à ma toute première vente aux enchères. C’est un moment que j’ai trouvé particulièrement intéressant et je ne peut m’empêcher de vous partager tout ce que j’ai appris de cette expérience nouvelle. Accrochez-vous car il y a énormément de choses à connaître si l’on souhaite y participer.
Dans un précédent article, nous avions vu comment se faire une carte à puce OpenPGP. L’utilisation de cette dernière étant bien plus complexe qu’il n’y parait, un nouvel article s’impose afin d’éviter les embûches.
Le 26 octobre 2018 sortait OpenSMTPD 6.4.0, suivie le 16 décembre d’un correctif, OpenSMTPD 6.4.1. Tout comme la version 5.4, elle se distingue par une importante refonte du fichier de configuration. Bien entendu, une fois de plus, mon tutoriel sur la mise en place d’un serveur email a été mis à jour pour tenir compte de cette évolution.
Comme vous le savez très certainement, la nuit dernière il s’est produit la plus longue éclipse lunaire totale du XXIème siècle. Bien entendu, je suis sorti avec mon appareil photo pour immortaliser l’événement.
Tout autant célèbre par sa puissance que par sa complexité d’emploi, OpenPGP est une référence en matière de chiffrement et d’authentification. S’il a tendance a être assez faiblement utilisé pour la sécurisation des emails, il reste cependant très populaire pour la signature de fichiers, en particulier des paquets pour différentes distributions GNU/Linux. Personnellement je l’utilise quotidiennement par l’intermédiaire de pass, un gestionnaire de mots de passe se basant dessus. Considérant donc ma clé privée OpenPGP comme un élément central de ma sécurité informatique, je me suis souvent demandé comment la conserver en sécurité tout en l’utilisant sur plusieurs terminaux dont parfois la confiance est relativement réduite (téléphone portable). C’est là que j’ai découvert les cartes OpenPGP…
IPv6, ça fait des années que tout le monde en parle, ça apporte plein de bonnes choses, mais on y migre que très lentement. Il faut dire que j’ai toujours détesté les différents guides que j’ai trouvé. Ces derniers étaient soit d’un niveau débutant et n’expliquaient que ce que je savais déjà, soit destinés aux experts et je n’y comprenais rien. Du coup voici comment j’ai mis en place IPv6 sur ma dedibox tournant sous Arch Linux.
Il existe bien des manières de configurer son serveur web sans qu’une soit nécessairement meilleure que les autres. Mais parce que l’on me demande régulièrement des conseils sur ce sujet et que je veux bien aider mais pas me répéter, j’explique ici ma manière de voir les choses. Copiez, modifiez, inspirez-vous, critiquez, c’est open-bar.
Il existe de nombreuses manières d’utiliser git, certains étant plus adaptées que d’autres dans certaines situations. Nous verrons ici une méthode générique bien connue qui fonctionne dans la plupart des cas. Il est à noter que cet article s’adresse principalement à un public débutant avec git ou n’ayant jamais pris le temps de vraiment s’y intéresser.
Afin de gérer mes mots de passe et autres données sensibles, j’ai choisi d’utiliser un logiciel spécialisé : pass. En quelques mots, c’est un script bash qui utilise GnuPG pour stocker vos mots de passe de manière chiffrée.
Il est rare que j’ai besoin d’écrire une lettre, mais quand je dois le faire j’ai envie que ce soit propre et en respect avec les conventions établies de longue date. Du coup, au lieux de faire comme mes contemporains pressés qui sortent leur éditeur graphique et se mettent à rédiger ce qui ressemble plus ou moins à une lettre, j’ai opté pour la rigueur et le professionnalisme de LaTeX qui propose un paquet spécifiquement dédié aux lettres françaises. Car oui, en France les conventions sont différentes que, par exemple, dans les pays anglo-saxons.
Il existe deux moyens pour obtenir (presque) uniquement des avis positifs de la part de ses utilisateurs ; soit vous vous investissez à fond afin de proposer un service irréprochable, soit vous empêchez les dits utilisateurs de se plaindre. La SNCF a choisi cette seconde option.
Un des premiers choix que l’on doit faire est sans aucun doute de choisir un appareil adapté à nos besoin. C’est un vrai problème car le choix est énorme et il y en a de toutes sortes, dans toutes les gammes de prix. Déjà mettez vous un truc bien dans la tête de manière ferme et définitive : le nombre de megapixels, on s’en fiche totalement (sauf si l’on fait des affiches publicitaires de 4x3 ou tout autre utilsiation très spécifiques). Maintenant que vous avez bien compris ce point, on peut classer les appareils photo dans deux catégories :
S’il y a une chose très importante que beaucoup méconnaissent au sujet du C, ce sont bien les flux. S’il est tout à fait normal que cette notion soit tout à fait inconnue à un débutant, il lui faudra un jour la découvrir. On notera également que plusieurs grandes écoles d’informatiques qui enseignent pourtant le C comme langage principal oublient totalement d’enseigner les flux à leurs élève. Ces dernières font ça par pédagogie, ce qui est totalement justifié dans leur programme afin de ne pas embrouiller l’élève. Cependant, le fait qu’elles n’en parlent pas du tout durant la scolarité de l’étudiant me semble être grave. Qu’importe, ce post est justement là pour palier à cette lacune.
Il y a quelques jours, sortait la très attendue version 5.4.1 d’OpenSMTPD. Cette nouvelle version se distingue de son aînée au travers de grosses modifications de la grammaire du fichier de configurations, cassant ainsi la compatibilité avec les versions précédentes (bonus: mon tutoriel a été mis à jour). Bien que casser ainsi la rétro-compatibilité ne soit pas toujours ni souhaitable ni apprécié, dans le cas présent c’était la seule manière d’éliminer de gros défauts. Et ça paye : OpenSMTPD est maintenant encore plus simple à configurer. Bref, voici une courte sélections des changements que je trouve les plus significatifs.
Si les emails sont quelque chose de courant sur internet, la mise en place d’un serveur d’emails n’est pas quelque chose de trivial. On trouve donc de nombreux tutoriaux sur le net, plus ou moins fiable, plus ou moins complets et plus ou moins obsolètes. Chacun ayant une manière de faire et ses logiciels préférés, voici la mienne.
Vous connaissez la blague « Un vrai geek, c’est un mec qui croit que dans 1 km, il y a 1024 mètres. » ? Et bien en fait un vrai geek sais très bien que c’est faux et ne supporte pas d’être associé à une pareille erreur.
Comme tout photographe le sais, les images contiennent, en plus de ce qui est nécessaire pour les afficher, des métadonnées qui permettent d’avoir des informations sur l’image en question. Ces données peuvent contenir énormément d’informations, par exemple le modèle de l’appareil photo, le temps d’exposition, la version du logiciel de retouche d’images et bien d’autres encore. Nous allons ici nous intéresser à l’édition des métadonnées des images jpeg à l’aide des outils jhead et exif.
Vous souvenez-vous de votre vieux modem dit « 56k » ? Vous ne vous en servez probablement plus à l’heure actuelle, mais ce n’est pas grave, je vais vous raconter ici son terrible secret : le 56kbps (kilo bits per seconds) n’existe pas, enfin pas vraiment.
Étant immergé aussi bien dans l’univers du logiciel libre que de la photographie amateur, je ne peux que constater une chose : le plupart des autres photographes amateurs ont peur qu’on leur « vole » leur travail et s’empressent de restreindre tout droit d’utilisation de leurs photographies. Lorsque l’on est libriste, un tel constat ne peux que rendre triste. Cependant, je comprend parfaitement cette inquiétude et je l’ai moi même ressentie lorsque j’ai débuté en programmation. Voici pourquoi aujourd’hui je publie cet article dont le but est de sensibiliser mes collègues photographes amateurs à la philosophie du libre.
Il existe des code (généralement mais pas exclusivement en deux lettres) afin de désigner les langues et les pays. Ces derniers sont tout deux très utilisés et relativement intuitifs… mais il existe des pièges.
Et oui, c’est un cas avéré, PHP est bien mal conçu sur certains points. Voici quelques uns des effets indésirables qui peuvent engendrer de jolis bugs si l’on y fait pas attention. Si vous avez d’autres jolis exemples de ce genre, n’hésitez pas à me les faire parvenir.
Assez régulièrement j’entends parler et parle moi même de l’optimisation des programmes, bien entendu à chaque fois ce genre de discussion débouche sur un bon nombre de petites « astuces » ou « hack » destinés à grappiller quelques mili ou micro secondes. Bien au delà de toutes ces techniques divers et variées qui ne sont bien souvent même pas perceptibles, je vous propose ici une démonstration par l’exemple de la règle d’or de l’optimisation d’un programme. Les différents codes d’exemple sont écrits en C ANSI, mais le propos reste vrai pour tous les langages de programmation.