xulops a écrit 303 commentaires

  • [^] # Re: ha...

    Posté par  (site web personnel) . En réponse au journal Manutan, cyberattaque et Windows/Linux . Évalué à 4.

    J'ai pertinenté car en effet je trouve bizarre que personne ne trouve ça choquant. Une entreprise de la taille de Manutan qui a besoin de 800 serveurs pour son activité, c'est qu'il y a un gros soucis décisionnel au niveau IT, qu'il y a eu du laissez-aller, qu'on a laissé s'empiler des trucs pour faire plaisir à un service ou à un autre sans vision globale du SI.
    Une refonte complète de leur système est à prévoir. Qu'ils embauchent donc un vrai responsable informatique et achètent de l'huile de coude … et au boulot ! Remettre tout à plat est une bonne occasion pour migrer ce qui peut l'être sous Linux.

  • [^] # Re: ha...

    Posté par  (site web personnel) . En réponse au journal Manutan, cyberattaque et Windows/Linux . Évalué à 10.

    Au boulot j'ai un serveur sous Windows (entre autres) que je considère non critique et pour les maj le reboot se fait la nuit vers 2h du mat car les 3min d'interruption n'impacteront personne.

    Ne jamais planifier un truc entre 2h et 3h du matin dans les pays qui ont un changement heure d'hiver/ heure d'été, c'est un coup à se demander pourquoi ça ne s'est pas fait, ou pourquoi ça s'est fait deux fois.

  • [^] # Re: hébergement @home

    Posté par  (site web personnel) . En réponse au message site internet, budget très faible. Évalué à 4.

    Un Pi, c'est bien, ça ne consomme pas grand chose, et c'est assez puissant pour le besoin.
    Mais faut aussi prendre en compte les moins dans son cas :
    - il (ou elle) n'a peut-être pas les connaissances et/ou le temps nécessaires à y consacrer ;
    - les Pi tournent sur des cartes SD dont la fiabilité dans le temps peut être problématique ;
    - faut prendre en compte la sauvegarde du Pi et la procédure pour remettre tout réinstaller rapidement en cas de besoin ;
    - faut avoir une bonne connexion (pas forcément très rapide, mais stable, avec IP fixe de préférence) et un petit onduleur pour les coupures EDF.

    Bref, un Pi peut rendre bien des services, mais ce n'est pas la réponse universelle.

    Je gère des serveurs, donc je peux héberger ça sans problème (sauvegardes incluses), juste me préciser le trafic estimé (en gros, car il y a une différence entre 100 connections/jour et 100000 connections/jour).

  • # Pour ceux qui veulent se lancer...

    Posté par  (site web personnel) . En réponse au journal Pourquoi Bloctel et les lois contre le démarchage téléphonique ne servent plus à rien. Évalué à 10.

    … et qui trouve que 2 cartes SIM dans le téléphone ce n'est pas assez :

    Titre de l'image

    avec 7.2 yuan pour un euro, l'investissement pour ajouter 10 emplacements SIM est faible (faut ajouter les cartes SIM avec les abonnements qui vont bien, bien entendu).

  • [^] # Re: Oulà

    Posté par  (site web personnel) . En réponse au message Bonnes pratiques pour un site web ?. Évalué à 1.

    Quelques minutes ?

    Oui.

  • [^] # Re: Oulà

    Posté par  (site web personnel) . En réponse au message Bonnes pratiques pour un site web ?. Évalué à 5.

    Bon, déjà, le choix du logiciel est à revoir…

    Et pas qu'un peu ! Un WP pour afficher une simple présentation et un formulaire de contact, et après on s'étonne du réchauffement climatique… Faut arrêter de prendre des fusils pour tuer des mouches !

    Un bête fichier html suffit (à la place du moteur de génération de pages de WP), un simple script PHP pour enregistrer les données saisies (et éventuellement envoyer un mail, pas besoin d'une base de données pour si peu), et tu auras non seulement un truc fiable (pas de plug-ins, pas de mise à jour tous les quatres matins), ultra léger, facile à sauvegarder et à remettre en place, et cerise sur le gâteau, bien plus rapide que n'importe quel WP avec cache.
    Faut juste trouver quelqu'un qui sait faire, ça se trouve assez facilement, il existe encore des "artisans" du web, qui font tout à la main au lieu de surconsommer. Je le sais car c'est mon coeur de métier de faire des trucs cousus-main pour mes clients.
    Soit tu connais quelqu'un qui sait faire, soit tu demandes de l'aide (ici ou ailleurs), suivant l'objet de l'asso en question, il y aura bien des artisans pour donner quelques minutes de leur temps.

  • # Améliorer la section lien

    Posté par  (site web personnel) . En réponse au lien Aidez-moi à dédier du temps pour rédiger le guide utilisateur de Sozi. Évalué à 9. Dernière modification le 06 novembre 2021 à 17:08.

    Je sais que c'est quelque chose qui est déjà venu sur le tapis, mais je remets le couvert : il serait pratique d'améliorer la section lien en permettant à l'auteur d'écrire une phrase explicative de son lien, genre 255 cars max (j'ai le varchar mariaDB en tête, mais ça peut être une autre longueur). Le titre ne permet pas d'être précis.

    Dans ce lien par exemple, l'auteur aurait pu écrire une phrase indiquant ce qu'est Sozi, évitant de cliquer sur le lien pour le savoir. Il aurait pu aussi préciser davantage que sa demande d'aide est essentiellement pécuniaire, et non pas une demande d'aide à la rédaction pure.
    Il aurait ainsi pu écrire une phrase du style : "Financez-moi pour que j'écrive le guide d'utilisation de Sozi, logiciel de création de présentations animées." (109 cars)

    Je prends cet exemple, mais je pense qu'il y a beaucoup de liens qui auraient mérité une phrase explicative, qui parfois ne m'aurait pas fait cliquer sur le lien, et parfois au contraire m'aurait inciter à passer outre la fainéantise de cliquer sur le lien et attendre que la nouvelle page s'affiche.

  • [^] # Re: arroseur arrosé ?

    Posté par  (site web personnel) . En réponse au journal EBCDIC n'est pas compatible avec la RGPD. Évalué à 10.

    Ca veut simplement dire que la machine n'avait pas un bon administrateur (qui, il est vrai, sont rares et coûtent cher aussi). Sur une machine de formation, ce n'est pas vraiment étonnant.
    Normalement les programmes sont exécutés dans des files d'exécutions (genre QBATCH, QINTER…) et ne peuvent pas prendre plus de ressources que ce qui est alloué à la file. Par exemple certains admins limitent la compilation dans une file batch (dont impossible d'interférer avec les sessions interactives) et encore en limitant l'utilisation CPU, donc ne peuvent pas impacter tout le système.
    Même les fichiers de base de données ont des limites du nombre d'enregistrements fixés dès la création, donc un programme qui part en quenouille et qui boucle en écriture ne peut en principe pas saturer le disque.
    Après, c'est comme tout système, si c'est administré comme un pied, que ce soit du windows, de l'unix ou autre, ça ne peut que mal tourner.

  • [^] # Re: arroseur arrosé ?

    Posté par  (site web personnel) . En réponse au journal EBCDIC n'est pas compatible avec la RGPD. Évalué à 10.

    J'ai longtemps bossé sur AS/400, dans différentes entreprises, et les accents sont très bien gérés en EBCDIC.

    Dans cette affaire, la banque a évidemment tort, car il est facile de gérer les accents sur AS/400. C'est facile, mais bien sûr pas instantané : il y a du boulot de recompilation, mais rien d'infaisable. La banque a simplement limité ses coûts en ne faisant pas évoluer son soft au regard de la législation.

    "La court d'appel ne considère pas qu'utiliser un système obsolète soit une excuse suffisante…" : ici système = soft de la banque, car j'espère que cette phrase ne donne pas à penser que les AS/400 sont des machines obsolètes en général, mais que c'est le soft de la banque qui est obsolète. Ces machines sont super-fiables, l'OS est d'une stabilité à toute épreuve, beaucoup d'entreprises (y compris des très grosses) ont leur business dessus, la saisie de données sans souris est redoutable de rapidité. Mais c'est bien entendu plus cher qu'un serveur x86, et moins à la mode que les clicodromes windowsiens.

  • [^] # Re: Mouais...

    Posté par  (site web personnel) . En réponse au journal Des panneaux solaires low-tech, ça existe ? Ils ont peut-être été inventés en… 1900 !. Évalué à 10.

    Je suis bien d'accord avec toi, les trucs soient-disant oubliés qui révolutionneraient la technologie actuelle, il y a forcément anguille sous roche.
    J'aurais juste évité d'utiliser le mot "complotiste" pour désigner ceux qui tout au plus sont une bande de farfelus.
    J'avoue en avoir un peu marre de lire partout ce mot "complotiste" utilisé à tort ou abusivement, ou encore péjorativement, pour discréditer des gens qui ont une opinion différente sur un sujet (d'autant que des exemples récents de l'actualité montrent que parfois les sombres prévisions de ses "complotistes" se réalisent finalement).

  • # log et parametrage de php-fpm

    Posté par  (site web personnel) . En réponse au message Nginx/PHP-FPM affole le system load (coeurs à 100%). Évalué à 1.

    Vu que le problème ne semble pas venir de Nginx mais de php-fpm, il semble judicieux de consulter la log correspondante : /var/log/php7.xxx-fpm.log par défaut.

    200000 accès par jour, je suppose que des accès sont souvent concurrents, donc jeter un oeil aux paramètres de php-fpm et du pool associé pour que le nombre de process suive la demande.

    Sinon, avec ma mémoire défaillante, avoir des problèmes avec le couple Nginx et NFS me dit quelque chose. A creuser. (au pire tester Apache avec mod_event couplé à PHP-FPM, au niveau perf c'est quasi pareil)

  • [^] # Re: Nom du script

    Posté par  (site web personnel) . En réponse au journal ApacheCheck, le retour (entre autres). Évalué à 1.

    Les commentaires du précédent journal se sont focalisés sur la manière de développer, alors que le code n'est vraiment pas le problème (pas pour moi en tout cas).
    Supporter beaucoup de web servers, c'est d'avoir le temps et l'énergie de les installer, de lire toutes les docs, comprendre tous les paramètres, faire beaucoup de tests (au repos, en charge, avec ou sans tel ou tel module…), etc.
    C'est du boulot, pour des parts d'utilisateurs de plus en plus faibles (Apache et Nginx couvrent environ 70% des web servers). Je ne dis pas que c'est inutile ou inintéressant, mais je ne vais pas me lancer là-dedans maintenant. Plus tard peut-être…

  • [^] # Re: Nom du script

    Posté par  (site web personnel) . En réponse au journal ApacheCheck, le retour (entre autres). Évalué à 1.

    httpdcheck est effectivement parlant.
    Mais si on laisse entendre que ça supporte tous les web servers, faudrait ajouter le support de :
    - Lighttpd
    - caddy
    - OpenLiteSpeed
    - Hiawatha
    - uhttpd
    - H2O
    - Cherokee
    - …

    J'ai du pain sur la planche ! Bon en fait non, je ne vais pas me lancer là-dedans, hein.

    Et si je faisais un genre de lien symbolique ? Le script pourrait ainsi avoir deux noms apachecheck et nginxcheck, peu importe celui qu'on lance puisque c'est le même et qu'il découvre lui-même lequel de Apache ou Nginx écoute sur le port indiqué (par defaut le port 80).

  • [^] # Re: test root

    Posté par  (site web personnel) . En réponse au journal ApacheCheck, le retour (entre autres). Évalué à 1.

    Oui, c'est moi ça marche® avec sudo.
    C'est peut-être la différence entre getenv("USER") et getenv("LOGNAME").

  • [^] # Re: Toutes les secondes ?

    Posté par  (site web personnel) . En réponse au message Surveillance de la latence d'une liste d'hôte. Évalué à 1.

    Je viens de mettre en ligne une version 1.1 qui permet de modifier le format du nom du fichier de sortie. Tu peux donc le télécharger et le lancer par la commande suivante :

    sudo php latencycheck.php -d 1 -m icmp -f list_address -o %DATE/%IP
    
  • [^] # Re: Toutes les secondes ?

    Posté par  (site web personnel) . En réponse au message Surveillance de la latence d'une liste d'hôte. Évalué à 1. Dernière modification le 05 septembre 2021 à 19:02.

    Donc je suppose que tes serveurs ne repondent pas sur le port 7. J'ai un routeur comme ça chez moi qui ne repond pas sur le port 7 aussi.
    Quand l'iP ne répond pas, le script met le timeout comme réponse.

    J'en ai fait un script bien plus complet là : https://xulops.net/forge/latencycheck.php
    Tu pourras changer le port, voir utiliser d'autres méthodes de mesure de la lantence (en simulant un ping ICMP en PHP, voire en utilisant la commande ping de la distro).

  • [^] # Re: test root

    Posté par  (site web personnel) . En réponse au journal ApacheCheck, le retour (entre autres). Évalué à 2.

    Merci pour ce retour.

    En fait, je n'ai pas utilisé les fonctions PHP posix_… suite à ce commentaire d'Andy sur php.net. Ce commentaire date de 11 ans, mais je n'ai aucun moyen de savoir si maintenant toutes les distribs compilent PHP avec ces fonctions, donc dans le doute je fais sans.

    Mais ce n'est pas grave, pas besoin des fonctions PHP posix_… pour récupérer l'uid d'un user, il y a déjà la fonction get_user_uid dans le script qui fait ça, donc j'ai modifié le script (v2.0.1) de la façon suivante pour tester si l'uid est égal à 0 au lieu du nom du user :

    // root ?
    $user = getenv("USER");
    $user_uid = get_user_uid($user);
    if ($user_uid != 0) {
        display("[!!] Fatal error : this script must run as root user");
        exit();
    }
  • [^] # Re: abuse

    Posté par  (site web personnel) . En réponse au message Orange ne prend pas (complètement) en charge le TLS - Comment les contacter quand on 'est pas client. Évalué à 2.

    Non, sinon le SPF ne sert plus à grand-chose… je ne considère pas que les serveurs Orange comme sources fiables pour mes mails.
    Je pourrais certes le mettre à ~all et laisser le serveur du client décider si c'est du spam ou pas. J'ai fait le fainéant, j'ai utilisé une autre adresse mail. C'est juste pour un seul client, je ne vais pas perdre trop de temps là-dessus.

  • # abuse

    Posté par  (site web personnel) . En réponse au message Orange ne prend pas (complètement) en charge le TLS - Comment les contacter quand on 'est pas client. Évalué à 5.

    abuse@orange.fr

    J'ai récemment eu un problème de mails aussi avec eux, mais d'une autre nature : mon enregistrement SPF est en -all, donc un client ayant un mail avec un nom de domaine refusait mes mails parce que les serveurs Orange font relay (vu dans l'avis de non-expédition), donc forcément le serveur final voit le mail venir d'un serveur d'Orange au lieu de mon serveur SMTP, donc refus.
    J'ai eu l'explication (que Orange faisait relay pour les mails de ce domaine) en contactant cette adresse abuse, qui a répondu plutôt vite (3 jours après).

  • [^] # Re: Toutes les secondes ?

    Posté par  (site web personnel) . En réponse au message Surveillance de la latence d'une liste d'hôte. Évalué à 5.

    Voila un script vite fait en PHP, il faut le nommer check_address.php (car il s'auto-lance pour chaque mesure) :

    <?php
    // check_address.php
    
    function latence($host, $port = 7, $timeout = 10) {
        $ts = microtime(true);
        $f = @fsockopen($host, $port, $errno, $errstr, $timeout);
        $result = microtime(true) - $ts;
        if (! $f) {
            $result = $timeout;
        } else {
            fclose($f);
        }
        return round($result * 1000, 0);
    }
    
    if (! isset($argv[1]) || ! isset($argv[2])) {
        // *******************************************************
        // daemon principal -> lance les pings toutes les secondes
        // *******************************************************
        $list_address = @file_get_contents("./list_address");
        $t_ip = explode("\n", $list_address);
        // nettoyage
        for ($i = 0; $i < count($t_ip); $i++) {
            $t_ip[$i] = trim($t_ip[$i]);
            if ($t_ip[$i] == "") unset($t_ip[$i]);
        }
    
        $time = time();
        while (true) {   // boucle infinie, il faudra killer le process pour terminer le programme
            while ($time == time()) usleep(10);
            $time = time();
            // lancement des mesures
            foreach ($t_ip as $ip) {
                echo date("Y-m-d H:i:s", $time)." : Mesure de $ip\n";
                system("php check_address.php ".escapeshellarg($ip)." $time > /dev/null 2> /dev/null &");
            }
        }
        exit();
    } else {
        // **********************************************************************
        // programme appelé par le daemon principal -> mesure latence de cette IP
        // **********************************************************************
        $ip = trim($argv[1]);
        $time = (int) $argv[2];
        // mesure de la latence de cette IP
        $latence = latence($ip);
        // enregistrement de la mesure dans ./jour/ip
        $jour = date("Y-m-d", $time);
        if (! is_dir("./$jour")) mkdir("./$jour");
        if ($f = @fopen("./$jour/$ip", "a")) {
            fputs($f, date("H:i:s", $time)." ".$latence."ms\n");
            fclose($f);
        }
    }
    
    ?>

    La latence est mesurée en faisant un fsockopen sur le port 7. On peut aussi facilement faire du vrai ICMP avec socket_connect et consorts si besoin (à voir ta définition de "latence").
    Le timeout est à 1s par defaut, pour éviter d'engorger la machine avec des process forkés qui se termineraient plus lentement qu'ils ne sont lancés, mais tu peux l'augmenter si tu surveilles un peu tout ça en cours d'execution.
    Si tu surveilles beaucoup beaucoup d'IP, faut voir aussi si la machine suit le rythme.

  • # Toutes les secondes ?

    Posté par  (site web personnel) . En réponse au message Surveillance de la latence d'une liste d'hôte. Évalué à 4.

    Mesurer la latence toutes les secondes, n'est-ce pas un peu excessif ? Ca va te faire 86400 mesures par jour et par IP ! Une mesure toutes les 30 secondes ne suffit pas ? En fait c'est quoi le but du jeu ?

    Vu que la mesure peut prendre du temps, si la latence est supérieure à 1 seconde, tu prévois quel comportement ? Il y a au choix :
    - faire le bourrin et lancer une mesure toutes les secondes, même si l'IP est aux fraises et met trois plombes à répondre, quitte à aggraver sa triste situation par tes mesures.
    - ne pas lancer d'autres mesures tant que la précédente n'a pas aboutie, ce qui donnera des trous dans les mesures, mais alors tu as aussi deux choix :
    -- lancer une mesure dès que celle qui a mis plus d'une seconde est terminée, donc on n'est plus calé sur des secondes pile-poil.
    -- attendre la prochaine seconde pile-poil pour lancer la mesure suivante pour être calé avec les mesures précédentes.

    Faut déjà que tu décides quel comportement adopter, cela en fonction de ton besoin. Ensuite faire le script ne sera pas difficile : un script principal qui lance autant de daemons que d'IP dans le fichier, chaque daemon fait la mesure (en fonction du comportement que tu as choisi) et stocke la valeur dans un fichier ou BDD.

  • [^] # Re: Heuristique

    Posté par  (site web personnel) . En réponse au journal PDF, mais que fait la police. Évalué à 2.

    Avoir les 10 polices n'est en effet déjà pas gagné, mais quid de leur contenu ? je doute qu'elles soient toutes unicodes complètes (en fait, je suis certain qu'elles ne le sont pas, même en laissant de côté Symbols et ZapgDingbats), donc s'il n'y a pas de problème pour l'anglais et quelques variations de charset proches, ça doit merdouiller copieusement pour l'arabe, le mongolien, le chinois, le japonnais, et bien d'autres…
    Bref, ce n'est pas une bonne idée de compter sur ces 10 polices, mieux vaux inclure les caractères utilisés, voire la police complète si c'est un roman.

  • [^] # Re: Heuristique

    Posté par  (site web personnel) . En réponse au journal PDF, mais que fait la police. Évalué à 10.

    Au passage, il me semble qu'il est possible d'embarquer les polices dans le PDF. Perso je préfère ça, justement pour éviter les surprises en changeant d'appareil.

    En fait, c'est même mieux que ça, il y a trois choix lors de la création :
    - ne pas inclure les polices (fichier léger)
    - inclure les polices utilisées (fichier lourd)
    - inclure uniquement les caractères utilisés (fichier assez léger)

    Perso je code en générant toujours la troisième option, qui est un bon équilibre entre la taille du fichier et l'assurance qu'il soit correctement affiché partout.

    Donc dans le cas du journal, "simplement" (pas toujours simple en réalité, faut savoir toucher les bonnes personnes) dire à l'organisme en question d'inclure les caractères utilisés dans le PDF.

  • [^] # Re: Pass sanitaire des la premiere dose

    Posté par  (site web personnel) . En réponse au lien Évaluez l’impact de la vaccination sur l’épidémie (résumé : en pratique risque individuel /4). Évalué à -4. Dernière modification le 18 août 2021 à 09:45.

    Je n'ai pas le covid, 47 cas par jour sur 1.4 milliard d'hab, faudrait ne pas avoir de chance… Je suis aussi doublement vacciné, incroyable hein.

    Que la Chine ait bien mieux géré cette épidémie que la France est un fait.
    Si tes "priorités politiques" t'empêche de regarder ce qui se fait de bien ailleurs, c'est bien dommage. Il y a un tas (pas toutes cela-dit) de mesures prises en Chine qui auraient pu être appliquées en France, avec une réelle efficatité sur cette pandémie, et sans rogner sur les libertés fondamentales dont la France est (était) porte-drapeau. Ce laissez-passer pour aller au resto ou au supermarché, ça fait bien rire les chinois qui m'en parlent : "finalement la France est pire que la Chine".
    M'enfin bref… que par principe la France ne regarde pas se qui se fait ailleurs, qu'elle continue à se regarder le nombril, divise son peuple, sombre économiquement, … et que ça t'aille bien comme ça, tant mieux pour toi, bisous.

  • [^] # Re: Pass sanitaire des la premiere dose

    Posté par  (site web personnel) . En réponse au lien Évaluez l’impact de la vaccination sur l’épidémie (résumé : en pratique risque individuel /4). Évalué à -3. Dernière modification le 18 août 2021 à 08:55.

    quand la Chine te tire dessus si tu oses mettre un pied dehors dans ce même cas.

    ha ? Depuis quand ? Pas de couvre-feu non plus en Chine.
    Je sors souvent la nuit, je n'ai jamais vu quelqu'un se faire tirer dessus. Je suis allé me faire un petit 宵夜 hier soir (petite collation : genre barbecue), je suis rentré vers deux heures du mat, et je n'étais pas le seul, ce genre de petite collation tard le soir, c'est culturel ici.
    Bref, il me semble que tu es plein d'a priori sur la vie en Chine, un petit voyage te ferait découvrir un autre mode de vie (sauf qu'en ce moment c'est mal-barré pour le voyage).

    tu as des préférences de régime politique, soit, n'hésite pas à donner l'image complète, donc, sois-en fier, dans son ensemble et pas une petite partie affichage!

    Pensées primaires, voire primitives…
    J'ai des préférences politiques (comme tout un chacun) qui ne sont d'ailleurs pas en accord avec celle du PCC chinois, et alors ? La Chine n'est pas une démocratie, certes, et parce que la Chine est hyper-capitaliste (ceux qui pensent que la Chine est communiste, faut arrêter de vivre en 1960), faudrait ne pas regarder ce qu'ils ont fait de judicieux contre cette épidémie ? Si les politiques français pensent comme toi, pas étonnant que la France en soit dans cet état.