Vue normale

Reçu aujourd’hui — 15 mai 2025
Reçu avant avant-hier

Btop++ - L'outil de monitoring système qui ridiculise votre vieux htop

Par :Korben
13 mai 2025 à 07:00

Si vous en avez marre de regarder votre terminal afficher des trucs moches pendant que vous traquez un processus qui bouffe tout votre CPU ou votre RAM, vous pouvez opter pour NeoHTop comme hier ou passer carrément à BTop ! Ce moniteur système codé en C++ va transformer cette traque en quelque chose de presque… agréable.

Btop (le nom vient de “bashtop++”) est donc le petit dernier d’une lignée d’outils de surveillance système qui a évolué de top à htop, en passant par bashtop et bpytop. La différence majeure, c’est cette implémentation en C++ qui offre des performances nettement supérieures et une interface qui ferait presque passer htop pour un reliquat de l’époque MS-DOS.

Codes de la Deuxième Pièce (Mai 2025) : Nokotan, Frieren et Guide du Système Arise

12 mai 2025 à 14:16

Mise à jour : 12 mai 2025 Vous cherchez les derniers codes ? Vous êtes au bon endroit ! Je suis récemment devenu accro à One Piece, donc essayer Second Piece était une évidence. Dans ce jeu plein d’action, vous combattrez des ennemis, monterez de niveau et vous engagerez dans des aventures palpitantes, tout en […]

Le post Codes de la Deuxième Pièce (Mai 2025) : Nokotan, Frieren et Guide du Système Arise est apparu en premier sur Moyens I/O.

NeoHtop - Enfin un moniteur système moderne et ultra-rapide

Par :Korben
12 mai 2025 à 09:42

Si votre machine rame comme un vieil escargot devant une commission d’enquête au sujet de l’affaire Bétharram, alors j’ai un super outil pour vous. Ça s’appelle NeoHTop et ça permet de visualiser l’ensemble des processus qui tournent sur votre système ainsi que les ressources disponibles, tout ça au travers d’une interface moderne, jolie, et surtout super rapide puisque c’est codé en Rust !

Donc si vous en avez marre des interfaces en mode années 90 de top ou htop, ou si le Moniteur d’activité de macOS vous donne envie de pleurer à chaque fois que vous devez trouver quel processus bouffe toute votre RAM, NeoHtop va vous réconcilier avec le monitoring système.

NanoKVM : prendre la main sur votre machine

Les serveurs dans le monde pro sont tous équipés de carte IPMI/BMC, qui permettent de gérer la machine depuis un réseau "out of band".

Quand on utilise une machine non pro pour un usage de lab ou de serveur à domicile, cette fonctionnalité peut manquer.  C'est dans cette optique qu'iMot3k nous présente le NanoKVM :

Vous connaissez sans doute DELL iDRAC, HP iLO, Lenovo Xclarity, IBM HMC, etc. Et bien l'idée est de proposer quelque chose qui s'en rapproche à un tarif accessible.

Vous n'aimez pas le RSS : abonnez-vous par email 📥
Vous devriez me suivre sur Twitter : @xhark

Article original écrit par Mr Xhark publié sur Blogmotion le 12/05/2025 | Pas de commentaire |
Attention : l'intégralité de ce billet est protégée par la licence Creative Commons

Cet article NanoKVM : prendre la main sur votre machine provient de : on Blogmotion.

« C’est quoi ce truc ? » : une caméra enregistre une créature si bizarre qu’elle trouble les experts

Une mystérieuse créature aux yeux brillants, captée par une caméra de surveillance dans le sud-ouest de la Floride, suscite la curiosité des experts et du public. L'association à but non lucratif South Florida Wildlands Association a partagé le cliché sur les réseaux sociaux, sollicitant l'aide...

BleachBit 5.0 - Il est temps de faire un grand ménage de printemps sur votre PC

Par :Korben
6 mai 2025 à 12:09

BleachBit 5.0 vient de débarquer et ça sent le grand ménage de printemps ! Si vous êtes du genre à accumuler plus de fichiers inutiles que Marvel n’accumule de bouses ciné, cette mise à jour va vous intéresser.

Hé oui, après plus d’un an sans update majeure, ce logiciel de nettoyage open source, capable de débarrasser votre OS de tous ses fichiers inutiles, revient avec une version qui étend ses capacités à Discord, Edge, et même aux fichiers .desktop cassés sous Linux. Pour les collectionneurs involontaires de fichiers temporaires et autres cookies périmés, c’est le bonheur !

Ils ouvrent une boîte de saumon périmée depuis 50 ans : la surprise est totale

Des boîtes de conserve oubliées depuis des décennies révèlent une surprenante histoire naturelle. Des parasites marins, préservés dans le saumon en boîte, offrent un aperçu fascinant de l'écologie marine de l'Alaska sur plus de 40 ans. Cette découverte inattendue soulève des questions...

yahi un agrégateur de statistiques dans l'esprit d'awstats

J’ai la nostalgie d’awstats : la possibilité de faire des statistiques web sans déployer des tonnes d’infrastructure (genre Grafana).

Pour cela, j’ai codé Yahi, un module Python qui agrège dans sa forme basique les statistiques web en format usuel (nginx, apache, lighthttpd, varnish) pour les présenter dans une page web « tout en un ».

Il se décompose pour sa partie utilitaire en deux scripts:
- un d'agrégation des statistique de journaux de serveurs webs dont l'écriture d'une version personnalisée ici celle que j'utilise pour faire des démos sans IP ou URLs est relativement simple;
- un de génération d'une page de visualisation HTML avec les données.

Certes cette page requiert du JavaScript pour fonctionner, mais elle requiert zéro dépendance vers des liens externes et inclut autant toutes les visualisations que les données dans une seule page (données, CSS, visualisations). Cela permet de l’avoir en marque-page grâce à quelques ruses de javascript, et cela rend son hébergement aisé pour les sysadmins. (NdM: goaccess (MIT en C) sait faire aussi).

Son API permet en outre de faire des agrégations plus compliquées.

Et, je recherche des bétas testeurs pour en faire un produit fini.

Commentaires : voir le flux Atom ouvrir dans le navigateur

🗑️ Supprimer les indésirables de Windows 11

J'utilise O&O Shutup pour supprimer les fonctionnalités, logiciels et autre bloatwares inutiles sur Windows 11/10. Et c'est dans cette même veine que l'outil WinScript fonctionne :

Il est open source et existe en version classique ou portable, et même directement en ligne.

⚠ N'activez pas des réglages que vous ne maitrisez pas, vous avez de grandes chances de casser des choses...

Merci à Florian d'IT-Connect pour la découverte!

Vous n'aimez pas le RSS : abonnez-vous par email 📥
Vous devriez me suivre sur Twitter : @xhark

Article original écrit par Mr Xhark publié sur Blogmotion le 02/04/2025 | Pas de commentaire |
Attention : l'intégralité de ce billet est protégée par la licence Creative Commons

Cet article 🗑️ Supprimer les indésirables de Windows 11 provient de : on Blogmotion.

Donnez moi un NixOS à ronger

NixOS

Petit aperçu de Nix : il y a plusieurs articles sympas ici, la récente revue de Seb95, à cause de laquelle je suis passé sur cette distribution il y a quelques jours (et sachant que visiblement lui n’y est pas resté!, peut-être qu’il me lit haha), ou cette revue plus ancienne, donc j’essaierai de mettre en avant d’autres aspects.

    Sommaire

    Mini histoire à zapper

    Dejà reprécisons - il faut remonter à 2003 pour que Eelco Dolstra développe le gestionnaire de paquets Nix, mais la distribution, elle, NixOS date de 2006. Il y a deux versions par an, nommée YY.MM, par ex. 13.05 pour version de mai 2013 - brillant.

    Pour la suite j’écrirai simplement Nix pour désigner la distribution.

    En 2010 un wiki démarre. En 2013, la distribution 13.05 passe de upstart à systemd et systemd-boot au démarrage (alors appelé gummiboot). La version 13.10 est la première version stable de NixOS.
    On peut noter chez la concurrence, en 2014 le lancement du projet Atomic de Red Hat.
    En 2016, le wiki Nix officiel est clos et un wiki non officiel démarre…
    Fedora Silverblue apparait 2018 comme projet de distinct de « Atomic ». En 2019 Open Suse démarre le projet Micro OS.
    Côté Nix, en 2020 ont été intégrés les Flakes (22.05). Un installateur graphique apparait en 2022, sur la 22.05.
    En 2024, le wiki Nix officiel redémarre (mais le non-officiel demeure…).

    Une distribution rétro-futuriste

    Dans Nix, il n’y a pas de répertoire /bin, de /sbin, de /lib ou de /usr. Tout est gardé dans un /nix/store.

    Enfin moi j’ai quand même un /usr/bin/env mais j’avoue ça fait peu, ou un /bin mais qui ne contient qu’un symlink pour bash. Mais bref

    Dans le /nix/store on va retrouver nos hiérarchies habituelles, rangées dans des « dérivations ». Prenons firefox : je ne l’aurai pas directement dans /usr/bin mais dans le store voici comment ça se présente

    $ ls -R /nix/store/lxgnpycfaac8w893wmka5hw3dad8w228-firefox-121.0
    /nix/store/lxgnpycfaac8w893wmka5hw3dad8w228-firefox-121.0:
    bin  lib  share
    
    /nix/store/lxgnpycfaac8w893wmka5hw3dad8w228-firefox-121.0/bin:
    firefox
    
    /nix/store/lxgnpycfaac8w893wmka5hw3dad8w228-firefox-121.0/lib:
    firefox  mozilla
    
    /nix/store/lxgnpycfaac8w893wmka5hw3dad8w228-firefox-121.0/lib/firefox:
    application.ini    defaults            firefox-bin   libgkcodecs.so        libmozavutil.so   libmozwayland.so   omni.ja        Throbber-small.gif
    browser            dependentlibs.list  fonts         libipcclientcerts.so  libmozgtk.so      libxul.so          pingsender     vaapitest
    crashreporter      distribution        glxtest       liblgpllibs.so        libmozsandbox.so  minidump-analyzer  platform.ini
    crashreporter.ini  firefox             gmp-clearkey  libmozavcodec.so      libmozsqlite3.so  mozilla.cfg        removed-files
    

    etc.
    Pour le reste c’est plus standard.

    $ ls /
    bin  boot  dev  etc  home  lib  lib64  lost+found  nix  proc  root  run  srv  sys  tmp  usr  var
    
    

    Déclaratif

    La configuration, utilisateurs réseaux paquets services saucisson fromage, tout est déclaré dans un fichier /etc/nixos/configuration.nix.
    Comme définir un point de montage pour un disque ou les règles du pare-feu, qui correspondraient à du /etc sur d’autres distributions, mais aussi par exemple créer un utilisateur - ce qui correspondrait plutôt à des commandes sur d’autres distributions, comme useradd.

    Quand vous « compilez » le fichier /etc/nixos/configuration.nix, Nix va s’occuper tout seul des /etc/fstab, iptables (*), /etc/group, et ainsi de suite ; en général on précise que l’on « switche » vers ce nouvel OS et Nix redémarre les services avec la nouvelle config (à vous de savoir si redémarrer des services est suffisant, ou si pour prendre en compte les changements vous préférez redémarrer la session voire reboot).

    (*nftables dispo)

    Exemple fstab, au lieu d’éditer fstab je mets ça dans /etc/nixos/configuration.nix

     # FSTAB
      fileSystems."/home" = {
        device = "/dev/disk/by-uuid/220260f3-a7b2-4387-9a0b-9d17c604aa18";
        fsType = "ext4";
       options = [ # If you don't have this options attribute, it'll default to "defaults" 
         # boot options for fstab. Search up fstab mount options you can use
         "users" # Allows any user to mount and unmount
         "nofail" # Prevent system from failing if this drive doesn't mount     
       ];
      };
    

    Ou encore ma fichue imprimante Samsung
    Sous Debian, j’aurai peut-être ajouté un dépôt dans /etc/apt, j’aurai rafraichi puis installé un paquet. Sous Nix j’édite le fichier.

      # Enable CUPS to print documents.
      services.printing.enable = true;
      services.printing.drivers = [ pkgs.samsung-unified-linux-driver ];
    

    On peut même se retrouver à configuration de manière abstraite… En effet, imaginons que je configure le pare-feu : quel pare-feu suis-je en train de configurer?

    networking.firewall.allowedTCPPorts = [ 80 443 ];
    

    La documentation vous apprendra que par défaut, Nix passe par iptables pour implémenter les règles que vous précisez. Avec la directive ci-dessous, les mêmes règles seraient implémentées en se basant sur nftables.

    networking.nftables.enable
    

    Immuable

    Est-ce que NixOS est immuable? On pourrait dire, comme Distro Watch, non, car on peut en réalité écrire sur la totalité du système de fichier. L’immuabilité est plutôt fonctionnelle - au sens où on ne lance pas de commande, on édite un fichier /etc/nixos/configuration.nix (que l’on peut scinder, au besoin), qui donnera toujours le même résultat. (spoil cf quand même plus bas : channel).

    Retour arrière

    Après construction du système, au démarrage, vous aurez le choix d’amorcer (booter) sur chaque version de l'OS que vous avez construite. On peut démarrer sur une ancienne version. Un peu comme démarrer sur une ancienne version du noyau mais appliqué à tout.

    Multi-utilisateurs

    Vous pouvez avoir plusieurs versions d’un paquet installées en même temps, en fonction des utilisateurs. Certainement très utile… et pas testé chez moi.

    En somme

    Cette page décrit bien les logiques différentes entre Nix et un système basé sur Debian pour quelques opérations courantes.

    Bon clairement si le besoin c’est installer firefox et qu’on doit éditer un fichier /etc puis rebuild le système, on ne ressent pas particulièrement d’avantage à utiliser Nix vs un autre système (mais en cas de souci, vous serez bien content d’avoir le rollback…)

    • À noter cela dit que l’installation de paquets n’est pas vraiment plus longue. Rebâtir le système n’est pas vraiment plus long qu’un apt-get ou équivalent. Ce qui m’étonne le plus c’est que par défaut il n’y a pas de commande pour chercher des paquets (… ??!!! …bon il y a le site officiel et on peut par exemple installer nix-search-cli) .
    • On peut bien sûr utiliser des Flatpak si on active cette option. Par défaut si on installe GNOME, cela vient d’ailleurs avec gnome-software qui n’inclut que les Flatpak. Au moins c’est un Gnome Software léger, ça change ahem ahem…
    • Pour les AppImage j’en parle plus bas

    Donc l’usage pour installer une application graphique ne changera pas vraiment la vie. À noter tout de même que le dépôt est particulièrement large.

    Mais quid de paquets un peu plus complexes? Quand j’ai voulu installer nginx avec le TLS, j’ai eu une bonne surprise. J’imaginais une tannée du fait de devoir « passer par Nix » pour gérer tout ce qui est configuration et certificats. En effet plus question de lancer des commandes pour acquérir ou renouveler des certificats. Comment faire? Pour le coup la doc me l’a indiqué rapidement.

          security.acme.acceptTerms = true;
          security.acme.defaults.email = "mon@email.example.com";
    
              services.nginx = {
                enable = true;
                  virtualHosts = {
                     "mon.domaine" = {
                         forceSSL = true;
                         enableACME = true;
                         root = "/var/www/mon.domaine";
                  };
    

    Et voilà! Nginx est installé, mon domaine pointe vers le bon dossier, le http redirige vers https, Nix acquiert les certificats (par défaut Let'sEncrypt mais se personnalise si on veut), et surtout Nix définit un systemd pour renouveler les certificats.

    Et là on voit que Nix c’est un peu l’opposé d’une ditribution minimaliste comme Arch… Les points forts de Arch sont les points faibles de Nix et réciproquement…

    À noter que /etc/nginx n’existe pas. Dans mon exemple ce sera nix/store/brxfza7n2hjy6n15ffdrb7wlr2fqygy8-nginx. conf…

    $ systemctl status nginx
    ● nginx.service - Nginx Web Server
         Loaded: loaded (/etc/systemd/system/nginx.service; enabled; preset: ignored)
         Active: active (running) since Sat 2025-03-29 09:45:55 CET; 1 day 10h ago
     Invocation: 84e49760dcee4e5ea0a6baa79dd6ceb2
        Process: 35568 ExecReload=/nix/store/alqjcv381xp2wawjc919h1qr6p4q8gvj-nginx-1.26.3/bin/nginx -c /nix/store/brxfza7n2hjy6n15ffdrb7wlr2fqygy8-nginx.conf -t>
        Process: 35569 ExecReload=/nix/store/9m68vvhnsq5cpkskphgw84ikl9m6wjwp-coreutils-9.5/bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)
    

    Oui tout est dans le nix store, bah oui logique.

    On voit aussi que cette distribution est aussi agréable qu’elle est

    • bien empaquetée
    • bien documentée (j’y reviens plus bas…)

    Je nixifie tu nixifies

    Définir des choses dans /etc/nixos en déclaratif plutôt que de taper des commandes ou éditer d’autres fichiers comme /etc/nginx, c’est ce qu’on appelle nixifier, qui vient du verbe galérer-de-ouf. Non je plaisante.

    Cela veut dire que pour tout ce que vous pouvez faire avec les services, le paquet Nix doit proposer des options pour le faire dans /etc/nixos… Un peu effrayant au premier abord? Par ex. si je veux utiliser une fonction plus exotique de Nginx, alors la config Nix doit inclure un moyen de le spécifier, et doit inclure chaque option Nginx ??

    En fait de nombreux services vont proposer d’ajouter des options « extra ». Par ex. si je veux utiliser la fonction Nginx « rate-limit » et que le paquet Nix n’a pas d’option pour ça… Eh bien je vais utiliser une directive « appendHttpConfig » qui va me permettre de directement écrire dans le nginx.conf. Comme cela je continue d’utiliser les avantages Nix, mais je peux profiter d’options non nixifiées.

         services.nginx = {
            enable = true;
        appendHttpConfig = " limit_req_zone $binary_remote_addr zone=mylimit:10m rate=5r/m; " ;
              virtualHosts = {
                 "mon.domaine" = {
                     forceSSL = true;
                     enableACME = true;
                     root = "/var/www/mon.domaine";
             extraConfig = "limit_req zone=mylimit;";
              };
    

    On peut même avoir le besoin de générer un fichier /etc. Pas de souci, exemple avec fail2ban, on peut générer un fichier /etc/fail2ban/filter.d

        # Defines a filter 
        "fail2ban/filter.d/nginx-py.local".text = pkgs.lib.mkDefault (pkgs.lib.mkAfter ''
          [Definition]
    failregex = ^.* \[error\] \d+#\d+: \*\d+ (\S+ )?\"\S+\" (failed|is not found) \(2\: No such file or directory\), client\: <HOST>, server\: \S*\, request: \"(GET|POST|HEAD) .*$
        '');
      };
    

    Interdit !

    Je ne vais pas rentrer dans le détail, car je suis encore débutant, mais on ne peut pas exécuter ce que l’on veut sous Nix.

    $ touch holalal.sh
    $ echo -e '#!/bin/sh \necho "toto"' >> holalal.sh
    $ chmod +x holalal.sh
    $ ./holalal.sh
    bash: ./holalal.sh: Permission denied
    $ bash holalal.sh 
    toto
    

    Appliqué aux AppImage, eh bien j’ai un peu galéré. Apparemment on lance $appimage-run . Pas de bol pour moi, ça ne passe pas. J’ai testé deux trois un million de trucs à l’aveuge pour le fun (extraire puis ajouter chmod+x, passer par exec, voire par du sudo oh la la pardonnez moi…) Comme Google n’était clairement pas mon ami, j’ai voulu tester d’empaqueter l’AppImage moi-même. C’était la bonne piste! Si j’étais familier avec Nix cela m’aurait pris 2s. Un petit fichier .nix de quelques lignes plus tard, je peux construire cette AppImage et cette fois la lancer.
    Dans de nombreux cas vous trouverez l’ppImage déjà empaquetée.

    Channel

    Vous souvenez vous, Nix propose une version tous les 6 mois. Mais dites-moi… Comment met-on à jour si on lance pas de commande dans Nix et qu’on n’utilise que vi /etc/nixos/configuration.nix ?
    Et là, voilà la vérité révélée : oui on utilise des commandes, et non Nix n’est pas que déclarative.
    (cf par exemple https://nlewo.github.io/nixos-manual-sphinx/installation/upgrading.xml.html )

    # nix-channel --add https://nixos.org/channels/*channel-name* nixos
    # nixos-rebuild switch --upgrade
    

    On peut également spécifier dans la config que l’on veut automatiquement passer sur les nouvelles versions. En attendant cela veut dire que deux fichiers /etc/nixos/configuration.nix ne correspondent pas forcément au même OS!

    Note sur les channels : similairement à Debian, il y a un channel unstable si on veut passer en mode rolling.

    Pour résoudre cette question des channels il y a les Flake. En gros l’idée est de préciser non seulement qu’un paquet est installé mais aussi quelle version.
    https://nixos-and-flakes.thiscute.world/nixos-with-flakes/introduction-to-flakes#nix-flakes-and-classic-nix
    Mais rien n’oblige à utiliser Flake.

    2 wikis et 2000 manuels

    • Deux wikis : un wiki officiel, qui a été suspendu, car il n’était pas super à jour, du coup un wiki non officiel est apparu, puis ils ont remis le wiki officiel :O !!! du coup on a plein de manuels (utilisateur, dev, celui du gestionnaire de paquets Nix…) et deux wikis et on se retrouve à jongler.
    • On a l’impression d’avoir atteint le point où toute tentative d’améliorer ne fait qu’empirer. Je propose « Tools that need a manual to find the manual » ! …
    • Mes premières recherches sur Internet sont simplement désastreuses, je tombe sur plein de versions différentes. Et souvenez-vous que Nix est à la fois un langage, un gestionnaire, un builder, une distribution…
    • Peut-être que des sites pour répertorier , comme https://nixos.org/learn/ peuvent un peu aider…

    xkcd

    Mais à l’heure qu’il est, si Nix a un défaut c’est bien la documentation chaotique.

    Et les autres bombes atomiques?

    Fedora Silverblue propose aussi le retour arrière. Toutes les applications graphiques sont des Flatpak, et les applis dév utilisent le module Toolbox. Cf la présentation par Renault, plutôt historique puis pratique.
    Silverblue semble avoir de larges défis à relever mais pourrait représenter l’avenir de Fedora.

    Côté Open Suse atomic, il y a eu Micro OS (2019), puis Aeon d’abord basé dessus puis devenu projet indépendant pour offir GNOME. (En parallèle le projet Kalpa se développe pour le bureau KDE.) Vous pouvez lire cette revue par LWN. Sur Aeon la méthode préférée d’installation de paquets est encore Flatpak, mais il y a aussi Distrobox.

    Voilà pour ce que je connais, cela mériterait bien plus!

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    ADSILLH : licence pro Administration et Développement de SI à base de Logiciels Libres et Hybrides

    Après une ouverture en septembre 2016 et neuf promotions, la licence professionnelle ADSILLH (Administrateur et Développeur de Systèmes Informatiques à base de Logiciels Libres et Hybrides) ouvre de nouveau ses portes à l’Université de Bordeaux à la rentrée 2025 !

    Cette licence professionnelle vise à former les étudiants à intégrer des logiciels libres en un ensemble cohérent répondant aux besoins des entreprises, un système d’information complet par exemple, en interopérant au besoin avec des logiciels propriétaires (hybridation). Il s’agit également de s’impliquer dans les communautés de développeurs de logiciels libres, pour remonter ou corriger les bogues, contribuer des fonctionnalités (c’est tout l’objet du projet tutoré).

    C’est une licence pro en un an (donc BAC + 3), elle est ouverte aux L2, DUT/BUT2, BTS, en formation initiale et en alternance, mais aussi en formation continue, reprise d’études et contrat professionnel (on peut faire une VAP — Validation des Acquis Professionnels — pour l’inscription). Des VAE (Validation des Acquis de l’Expérience) sont également possibles.

    Contenu

    • systèmes et réseaux :
      • programmation système,
      • programmation réseau,
      • installation et configuration des systèmes et réseaux ;
    • technologies logicielles :
      • bases de données,
      • développement Web,
      • logiciels de communication ;
    • progiciels CMS/ERP/BI ;
    • sûreté et sécurité ;
    • projet tutoré : contribution à un logiciel libre ;
    • droit et économie des logiciels libres ;
    • anglais ;
    • stage en entreprise.

    Prérequis

    Les prérequis sont l’utilisation d’Unix en général, la programmation de base en Python et en C et une touche d’algorithmie. Il est possible de s’auto‑former sur les éventuels quelques éléments manquants entre l’inscription et la rentrée. Le détail est disponible sur le site de la formation.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Sortie d’AgentJ en 2.1 - Une nouvelle version majeure depuis la 1.6

    AgentJ est une solution anti-spam utilisé pour filtrer et bloquer les messages indésirables (spams) en entrée et en sortie.
    Ce logiciel est une solution sous licence GNU Affero General Public License V3.

    Voici une description générale de ses fonctionnalités :

    • Filtrage du spam : Identifie les messages non sollicités ou suspects (spams) à l'aide d'algorithmes qui analysent le contenu, les adresses d'envoi, et d'autres facteurs.
    • Apprentissage automatique : Utilise des techniques d'apprentissage automatique pour s'adapter aux nouveaux types de spam et améliorer son efficacité au fil du temps.
    • Blocage des adresses : Peut bloquer ou mettre sur liste noire certaines adresses e-mail, domaines, ou adresses IP connues pour envoyer des spams.
    • Authentification humaine : La première fois qu'un nouvel expéditeur vous contacte, un mail de confirmation lui est envoyé pour vérification
    • Rapports et statistiques : Fournis des rapports pour suivre le nombre de spams bloqués, les tendances, et d'autres informations utiles pour les administrateurs.
    • Personnalisation : Permet de définir des règles spécifiques, de créer des listes blanches (whitelist) et noires (blacklist), et d'adapter le niveau de filtrage en fonction des besoins.
    • Gestion multi domaines mail distincts ou miroir.
    • Rapport quotidien pour les utilisateurs qui les informe des mails en attente de déblocage.

    Logo AgentJ
    Cette nouvelle version 2.1 amène son lot d’améliorations, mais elle est surtout marquée par une amélioration majeure : la gestion des mails envoyés / le filtrage de mail en sortie.

    Filtrage de mails en sortie

    Cela permet de gérer l’ensemble du flux de mails sortants.

    Apprentissage des mails sortants

    Cette fonctionnalité permet que, lors d’un envoi de mail par un utilisateur interne, les destinataires (to, cc et cci) soient automatiquement autorisés.
    Nous retrouverons les adresses autorisées comme les adresses actuelles avec comme précision « autorisée par envoi de mail ».

    Paramétrage du taux d’envoi de mail

    L’objectif est de permettre le paramétrage du nombre de mails par heure, par utilisateur. Le paramétrage pourra se faire soit pour le domaine mail, soit pour un groupe d’utilisateur, soit pour un utilisateur.
    Sur un compte utilisateur, il sera indiqué le taux en vigueur et l’usage actuel pour l’utilisateur.

    Alerte sur évènements indésirables

    Cette fonctionnalité permettra de paramétrer un envoi d’alerte à un ou des mails spécifiques.
    Les alertes pourront être envoyées lors des événements suivant :
    • Spam (le niveau considéré comme Spam sera réglable)
    • Virus
    • Dépassement du taux d’envoi

    Recherche de mail

    Nous avons ajouté une recherche de mail avancé pour l’administrateur.

    Recherche mail

    Libération depuis le rapport mail

    Maintenant, il n’est plus nécessaire de se loguer pour libérer un mail depuis le rapport quotidien envoyé par AgentJ un simple clique suffit.

    Amélioration du tableau de bord

    Nous avons amélioré le rendu du tableau de bord des statistiques

    Tableau de bord

    Prévisualisation sécurisée des emails

    Vous pouvez désormais prévisualiser vos emails bloqués avant de décider de les libérer (ou non).

    Prévisualisation mail

    Test de performance

    Nous avons effectué des tests de performance sur un VM avec 4 cœurs et 4 Go de RAM avec les paramétrages par défaut. AgentJ traite 10 000 mails en 11 min. Pour précision, les tests ont été effectués avec l’envoi de mail valides, car ils sont les plus longs en traitement comparé à des spams.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Comment monter son homelab (proxmox)

    Yves Rougy, que l'on ne présente plus, a lancé une nouvelle thématique de vidéos sur l'auto-hébergement / homelab.

    2 vidéos sont sorties dans lesquelles il parle des pré-requis et choix du matériel :

    Puis il enchaine sur proxmox et Incus (qui me fait bien envie!) :

    Des vidéos accessibles, y compris pour les débutants 👍

    Vous n'aimez pas le RSS : abonnez-vous par email 📥
    Vous devriez me suivre sur Twitter : @xhark

    Article original écrit par Mr Xhark publié sur Blogmotion le 14/03/2025 | 3 commentaires |
    Attention : l'intégralité de ce billet est protégée par la licence Creative Commons

    Cet article Comment monter son homelab (proxmox) provient de : on Blogmotion.

    [Tomato] Réinjecter la configuration après un upgrade 🍅

    A chaque mise à jour de firmware de Tomato le process est le même, il est conseillé de ne pas repartir de sa configuration, mais de tout reparamétrer à la main...

    Je vous explique pourquoi et comment faire pour transposer votre configuration (nvram) après une mise à jour de firmware.

    Déjà parce qu'on est des feignants, mais aussi parce que cela n'a rien de passionnant. Et que c'est important de rester sur une version récente pour des questions de sécurité.

    Pourquoi est-ce déconseillé de ré-injecter votre config

    Chaque version de firmware tomato vient avec une liste de paramètres possible, le tout étant stocké en nvram.

    Cela peut poser plusieurs problèmes :

    • paramètre qui n'existe plus (suppression)
    • paramètre qui a changé de nom
    • paramètre qui a changé de valeur possible
    • introduction d'un nouveau paramètre

    Dans le pire des cas le routeur ne démarrera pas, plantera ou aura un fonctionnement difficilement compréhensible.

    Dans le meilleur des cas vous consommerez de l'espace précieux en nvram au fur et à mesure des versions de firmwares que vous installerez.

    Plus vous sautez de versions lors de l'upgrade, plus le risque est important. Et le changelog ne donne pas plus d'information sur les attributs qui changent (malheureusement).

    Rappel du processus de mise à jour

    Admettons que je suis sur la version Tomato 2022.1 et que je veux migrer vers la version 2025.1.

    Avant de faire une mise à jour du firmware de mon FreshTomato, je fais un backup :

    • du fichier de configuration .cfg (cf tutoriel)
    • du fichier de configuration nvram (format texte) nvram_v2021.1.txt

    Ensuite je lance une réinitialisation complète de nvram, puis le routeur reboot.

    Je définis une IP fixe sur ma machine (192.168.1.123/24) puis je me connecte sur http://192.168.1.1 avec l'identifiant "root" et le mot de passe "admin"

    Puis je fais à nouveau un backup du fichier de configuration texte nvram (cf tutoriel) que je nomme :

    nvram_v2022.1_vide.txt

    C'est maintenant le moment de faire la mise à jour firmware de Tomato en v2025.1 à partir du fichier TRX sans oublier de cocher la case :

    " Erase all data in NVRAM. Optional. This is performed between the firmware upload and the reboot."

    Après quelques minutes le routeur revient à la vie, je me connecte sur http://192.168.1.1 avec l'identifiant "root" et le mot de passe "admin".

    Puis je fais à nouveau un backup du fichier de configuration texte nvram (cf tutoriel) que je nomme nvram_v2025.1_vide.txt.

    Nous disposons maintenant de 2 fichiers de configuration usine, une pour chaque version de firmware :

    • nvram_v2021.1_vide.txt
    • nvram_v2025.1_vide.txt

    Comparer les versions

    Maintenant que nous disposons de 2 fichiers de configuration usine, nous allons pouvoir comparer ces 2 fichiers.

    Pour que ce soit plus pratique, je crée une version triée par ordre alphabétique en bash (ma préférence).

    En bash (depuis WSL par exemple, ou directement depuis votre routeur Tomato) :

    cat nvram_v2021.1_vide.txt | sort > nvram_v2021.1_vide_SORTED.txt
    cat nvram_v2025.1_vide.txt | sort > nvram_v2025.1_vide_SORTED.txt

    Aussi possible en PowerShell :

    gc nvram_v2021.1_vide.txt | Sort-Object | sc nvram_v2021.1_vide_SORTED.txt
    gc nvram_v2025.1_vide.txt | Sort-Object | sc nvram_v2025.1_vide_SORTED.txt

    Je compare ces 2 fichiers triés dans WinMerge.

    A noter que le tri est aussi possible directement dans WinMerge : Menu Plugins > appliquer un script > trier les lignes par ordre croissant (je conseille de travailler sur une copie pour garder les fichiers cd conf nvrame non triés).

    Dès que je vois un paramètre qui a été supprimé dans le firmware plus récent, je le répercute dans mon fichier nvram_v2021.1.txt. Même chose pour les nouveaux paramètres, je les ajoute à la main. Je travaille toujours sur le fichier non trié pour modifier, les 2 fichiers triés sont là pour que la comparaison visuelle dans WinMerge soit plus facile.

    Exemple ici avec la suppression du paramètre "log_ftp", que je supprime également dans ma configuration perso s'il était également présent.

    Je dispose maintenant d'un nouveau fichier nvram tout beau tout propre, prêt à être injecté dans le routeur : nvram_2025.1.txt.

    Script d'injection du nouveau fichier nvram

    Je copie mon nouveau fichier nvram_2025.1.txt dans le /tmp du routeur via FTP (activez-le avant) ou directement avec vi en copier/coller.

    Puis j'utilise ce code bash pour injecter la nouvelle configuration nvram :

    #!/bin/sh
    input="/tmp/nvram_injected.txt"
    while IFS= read -r line
    do
    nvram set "$line"
    done < "$input"

    Si tout s'est bien passé, on valide la nouvelle configuration :

    nvram commit && reboot

    Patientez plusieurs minutes jusqu'à ce que le routeur redémarre. Si ce n'est pas le cas c'est que vous avez flingué quelque chose.

    Commandes utiles

    Si vous avez quelques paramètres à retirer et ne souhaitez pas réinjecter toute la nvram, procédez ainsi :

    nvram unset nom_du_parametre1
    nvram unset nom_du_parametre2
    nvram unset nom_du_parametre3
    nvram commit && reboot
    

    C'est un peu le même principe que chez Cisco, la configuration est lue au boot.

    Conclusion

    Et voilà ! Merci à ceux qui attendaient cet article depuis 2022 et qui se reconnaitront 🙂

    De mon côté j'utilise un second routeur pour mes tests, cela me permet de voir s'il y a eu des changements importants d'une version de firmware à une autre, sans péter le vrai. Si vous suivez chaque version il y a peu de changement d'une version à une autre, mais ça vaut le coup de vérifier (regardez les changelog de FreshTomato).

    Enfin : gardez toujours la nvram configuration usine de votre version de firmware actuelle, cela vous évitera de faire un reset configuration avant l'upgrade...

    Vous n'aimez pas le RSS : abonnez-vous par email 📥
    Vous devriez me suivre sur Twitter : @xhark

    Article original écrit par Mr Xhark publié sur Blogmotion le 09/03/2025 | Un commentaire |
    Attention : l'intégralité de ce billet est protégée par la licence Creative Commons

    Cet article [Tomato] Réinjecter la configuration après un upgrade 🍅 provient de : on Blogmotion.

    monasticacademy/httptap: View HTTP/HTTPS requests made by any Linux program

    8 mars 2025 à 15:51

    Je cherchais un moyen de "sniffer" les requêtes réseau d'un programme donné depuis des lustres, juste les afficher pour savoir qui fait quoi. Et enfin, j'ai trouvé mon bonheur :

    httptap -- COMMANDE

    Et pour afficher les informations envoyées et récues :

    httptap --head --body -- COMMANDE

    Permalink

    Comment distribuer des connexions web 🍌 (load balancer)

    Et si tous les SysAdmins étaient tous des imposteurs ? C'est la question à laquelle tente de répondre Thomas...

    Plus sérieusement, il aborde l'architecture d'une application web, la répartition de charge et la scalabilité (horizontale et verticale) :

    La vidéo est plutôt très bien faite, j'adore les animations ! C'est souvent des concepts qu'on apprend sur le tas, alors merci Thomas d'avoir synthétisé tout ça aussi bien 👏

    Vous n'aimez pas le RSS : abonnez-vous par email 📥
    Vous devriez me suivre sur Twitter : @xhark

    Article original écrit par Mr Xhark publié sur Blogmotion le 13/02/2025 | Pas de commentaire |
    Attention : l'intégralité de ce billet est protégée par la licence Creative Commons

    Cet article Comment distribuer des connexions web 🍌 (load balancer) provient de : on Blogmotion.
    ❌