[Optimisation de notre serveur Debian]

Les brèves du site et vos commentaires
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

Optimisation de notre serveur Debian

Message par Aurelienazerty »

Aurelienazerty a mis une breve ici
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

situation stabilisée

Message par Aurelienazerty »

Bon, la situation semble être stabilisée. Les dernières actions sont sur la brève. Je n'explique pas pourquoi on est arrivé à une situation où la page mettait 13s pour se générer, sachant que je n'avais fais aucune modif (la maj PHP 8.3 --> 8.4 date d'il y a un peu plus d'un mois, en même temps que la dernière MAJ du serveur)

J'ai quand même noté que en l'espace de 2s, la table phpbb_sessions prenait 2k d'enregistrement, correspondant à autant de visites.

Pour autant, les visites n'explosent pas :
Screenshot 2025-04-25 at 10-03-35 Team-azerty - 2025-04-24 - Rapports des statistiques web - Matomo.png
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

MAJ des modifs

Message par Aurelienazerty »

J'ai fais de nouvelles modifs au niveau du pool FPM. Les modifs sont dans la brève.
Avatar de l’utilisateur
Christophe
L’humanité parlementaire
LAN : 115
Réactions :
Messages : 8521
Inscription : septembre 27, 2002, 7:25 am

Réaction à la brève Optimisation de notre serveur Debian

Message par Christophe »

Heureusement que tout ceci est publié en actu sur le site! nos investisseurs sont maintenant rassurés!
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

Notes pour moi même

Message par Aurelienazerty »

C'est aussi un moyen pour moi de me souvenir de ce que j'ai fait. Enfin ce que l'ia m'a dit de faire. (elle a même écrit la news en mode "fait moi un résumé des actions faite sur un format d'un billet de blog")

Mais bon, ça merde encore, donc c'est encore autre chose. Fait chier putain.
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

Jouons avec les IA

Message par Aurelienazerty »

Vu qu'il y avait toujours des lenteurs, j'ai joué avec 4 IA :
  1. ChatGPT
  2. Claude.ai
  3. perplexity.ai
  4. mistral.ai
Pour faire un script d'optimisation de serveur, soumettant les ajouts de l'un à l'autre, si bien que les 4 étaient toutes d'accord sur la version finale.
Du coup, j'espère bien que ça va fonctionner, parce que moi en tout cas, j'ai rien compris.
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

Suite et fin ?

Message par Aurelienazerty »

En épluchant les logs, j'ai pu voir un accès intensif aux galeries zip des photos de lan. Le zip est un script super long car il y a vérification des droits photo par photo, donc forcément en masse, ça fait tomber le serveur. J'ai donc mis un test dès le départ : avoir un compte sur le site et ne pas être un robot, sinon tu sors directement. J'en ai profité pour rendre la grotesque barre accessible qu'aux personnes ayant un compte, pour les mêmes raisons.

En espérant que ce soit la bonne.
Avatar de l’utilisateur
Arken
Éleveur de srou
LAN : 96
Réactions :
Messages : 5343
Inscription : septembre 27, 2002, 12:55 pm

[Optimisation de notre serveur Debian]

Message par Arken »

Comme quoi, rien ne vaut un bon viei humain, bien joué 👍🏻
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

Robot.txt

Message par Aurelienazerty »

Merci, par contre je suis colère, j'avais fais un robot.txt qui évitait aux crawler d'aller sur ces parties du site, pour justement éviter ça. Force est de constater que les bots ne respectent rien.
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

Situation revenue à la normale

Message par Aurelienazerty »

Sous les conseils de l’IA, j’ai mis en place dès samedi un fichier /var/log/php8.4-fpm.slow.log qui, comme son nom l’indique, trace les scripts prenant plus de 3 secondes à s’exécuter.
J’ai ainsi pu repérer les scripts concernés, qui étaient non seulement lents mais surtout appelés en masse. Il y avait notamment le fameux fichier qui permet de récupérer les galeries photos en zip, la grotesque barre, mais aussi les stats des pronostiqueurs, la galerie des trophées, et les statistiques du forum.

Ce qui me désespère, c’est que tous ces fichiers étaient pourtant bien en Disallow dans le robots.txt… mais ça, visiblement, les bots s’en fichent.

Du coup, la solution a été de restreindre leur accès uniquement aux utilisateurs connectés.

J’ai fait une dernière passe ce matin, et je pense qu’il ne devrait plus rester d'autres cas problématiques. Il ne me reste plus qu’à vérifier que la rotation des logs est bien en place, pour éviter de me faire avoir comme l’an dernier avec les 19 Go de logs qui ont saturé le disque.
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

Avalanche de bot

Message par Aurelienazerty »

P'tain c'est la folie en ce moment, on a eu un pic à 5137 le 03 oct. 2025, 23:20
Sur les conseils de @KrenoDeno, j'ai tenté d'installer anubis, mais visiblement
Anubis est un bon outil mais nécessite une architecture spécifique (nginx en frontal) qui n'est pas adaptée à votre configuration Apache multi-domaines actuelle.
Du coup, j'ai rajouté mod_evasive, puis rajouté un bad-bots.conf, puis rajouté des règles sur fail2ban.

Il y a toujours du monde, mais ça a l'air de les jeter et donc ne plus défoncer notre CPU qui a morflé aujourd'hui :
Screenshot 2025-10-04 at 01-13-20 OVHcloud.png
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Avatar de l’utilisateur
Arken
Éleveur de srou
LAN : 96
Réactions :
Messages : 5343
Inscription : septembre 27, 2002, 12:55 pm

[Optimisation de notre serveur Debian]

Message par Arken »

On a combien de millions de visiteurs par jour pour saturer la cpu comme ça ?
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
LAN : 132
Réactions :
Messages : 26234
Inscription : septembre 27, 2002, 9:41 pm

Je me suis banni !

Message par Aurelienazerty »

1️⃣ Blocage Apache (première ligne de défense)

J’ai créé un fichier bad-bots.conf chargé par Apache :
  • 🚫 Bloque crawlers SEO agressifs : Ahrefs, MJ12, Semrush, DotBot, etc.
  • 🚫 Bloque User-Agent suspects : wget, curl, python-requests, Java, etc.
  • 🚫 Filtre User-Agent vides, trop courts ou impossibles
  • 🚫 Interdit navigateurs trop anciens : Chrome < 80, Firefox < 78 (sauf LTS pro)
  • 🌐 Applique la règle à tous les domaines / sous-domaines (/var/www)
Résultat : les bots reçoivent un 403 Forbidden immédiatement → aucune charge PHP/MySQL.
2️⃣ Fail2ban (deuxième ligne de défense)
  • Filtre apache-badbots créé dans /etc/fail2ban/filter.d/
  • Jail dédiée dans jail.local :
    • Ban IP après 5 erreurs 403 en <5 min
    • Ban actif pendant 1h via iptables
Résultat : un bot qui insiste malgré le 403 finit totalement banni.

3️⃣ CrowdSec (troisième ligne de défense)
  • Installe CrowdSec + firewall bouncer
  • Lit tous les logs Apache (access + error)
  • Détecte patterns suspects : HTTP, bots agressifs, CVE, brute-force
  • Applique bans automatiques via iptables
  • Base communautaire mondiale : IP malveillantes, réseaux de bots connus
  • Whitelist ajoutée : Googlebot, Bingbot, Slackbot, etc.
  • Scénario personnalisé bot-aggressive : 5 requêtes en 10s → ban 5min
Résultat : protection évolutive, proactive, qui s’améliore avec le temps.

⚠️ Déboires pour me débloquer

Parce que forcément, une fois ne place, je me suis retrouvé banni comme un con depuis mon wifi, puis sur ma 4G, impossible de faire du ssh... Heureusement via codeanywhere j'ai réussi à m'ouvrir une console ssh et dis autrement :
  • 🚫 IP fixe de box bloquée → PR_CONNECT_RESET_ERROR sur HTTPS
  • 🔒 Même après stop fail2ban → c’était CrowdSec qui avait banni via bot-aggressive
  • 💰 Suppression via CrowdSec Console payante, vive le capitalisme !
  • ✅ Solution : connexion depuis 4G ou autre IP + ajout de ma box à la whitelist
Conclusion

Apache + Fail2ban + CrowdSec = protection en profondeur contre les bots, mais attention :
  • ⚠️ Bien configurer la whitelist pour éviter le self-ban
  • 👀 Surveiller les logs et décisions de ban
Le principal, c'est que niveau visiteurs, on est passé d'un pic à 5137 le 03 oct. 2025, 23:20 à 6 actuellement.