Bonjour,
Submergé par les bots en tous genres, j'ai testé :
- l'inscription dans htaccess , ça marche mais c'est fastidieux
- BYB fonctionne un moment puis un nouveau bot arrive et ça recommence
- pour ceux qui ont un NAS, le firewall du nas avec un filtre pays, efficace à 50%
Aujourd'hui je propose ce plugin 'ip_location' ( basé sur ip-api.com ) de géolocalisation des IP.
Vous pouvez le télécharger par là : http://gofile.me/75eAW/wXO86R1Gl
fonctionnalité n°1
Il enregistre tous les accès guest , et indique la localisation de l'émetteur, et sans surprise les US sont vainqueurs à 99.9 % !!!
fonctionnalité n°2
Vous pouvez activer/désactiver le blocage des IP par pays
Une liste blanche vous permet de déroger à la règle
Perso après avoir désactivé mes blocages htaccess, BYB et Nas, j'ai bloqué uniquement US et je suis passé d'environ 2000 connexions IP / heure venant des US à zéro !!
Testez et dites moi si ça mérite d'être publié.
Edit : 05/03/2026 - 14h47 - lien du plugin mis à jour
Dernière modification par Charles69 (2026-03-05 14:47:37)
Hors ligne
Pourquoi ne pas proposer aux développeurs de BYD d'intégrer ce comportement ?
Hors ligne
Gotcha a écrit:
Pourquoi ne pas proposer aux développeurs de BYD d'intégrer ce comportement ?
Pourquoi pas, mais j'utilise une api commerciale https://ip-api.com/, l'usage gratuit est limité à 45 requêtes par minute, et BYB est aussi une entreprise https://blockyoubots.com/ qui vend des solutions de blocage.
Donc quelque part ce sont des concurrents ...
Hors ligne
Un retour d'info sur ce que font les bots, contrairement à ce que je pensais ils n'envoient pas des requêtes avec des id au hasard mais ils ciblent des éléments particuliers en exploitant des fonctionnalités de piwigo.
/index.php?/categories/created-weekly-list-2022-2-1&image_order=4'
qui renvoie les photos publiques prises entre les semaines 53 de 2021 et 2 de 2022
/picture.php?/161304/search/psk-20260304-8tTdX5hWCx'
renvoie la photo d'id 161304
psk-20260304-8tTdX5hWCx correspond à un album précis.
/index.php?/categories/created-monthly-calendar-2023-8-1&image_order=6'
renvoie les photos publiques prises le 01/08/2023
/index.php?/categories/created-monthly-calendar-2025-9-13&image_order=0'
renvoie les photos publiques prises le 13/09/2025
/index.php?/category/3397/3391&image_order=5'
renvoie les photos publiques communes aux album 3391 et 3397
C'est vraiment étonnant !!
Si vous voulez savoir pour votre piwigo , c'est toujours par là http://gofile.me/75eAW/wXO86R1Gl
Dernière modification par Charles69 (2026-03-07 10:48:51)
Hors ligne
nouvelle version avec :
- par défaut aucun blocage n'est activé
- modification critères bot
- filtre sur le journal des visites
http://gofile.me/75eAW/wXO86R1Gl
Hors ligne
Bonjour
Mes stats : 36 bots de google
Mes questions :
1- Pourquoi Innodb et utf8 avec engine ? est-ce obligatoire ? je dirais de mettre que myisam
2- Je ne connais pas 'unknow' est-ce un ip invisible ou le nombre d'utilisateur ?
3- Avec le code iso A1 et A2 et EU, y a t-il des blocages ? (A1 => proxy anonyme et A2=> satelite) ...
Nas synology
PHP 8.4
mariadb 10.11.11
imagemagick 7.1.2
A très vite
Hors ligne
bonjour k5 !
Je m'initie au développement de plugin avec l'aide de Claude AI, je ne connais pas toujours le pourquoi du comment de ce qu'il utilise .
Pourquoi Innodb et utf8 avec engine ? -> réponse de Claude :
"InnoDB est recommandé et non obligatoire, mais préférable pour plusieurs raisons : il supporte les transactions, les clés étrangères, et est bien plus robuste en cas de crash. MyISAM est plus ancien et ne supporte pas les transactions. Piwigo lui-même utilise InnoDB par défaut depuis longtemps."
Pour les 'unknown' chez moi c'est les requêtes par le réseau local
L'API utilisé pour les géolocalisation ne gère pas A1, A2 https://ip-api.com/
J'ai ajouté de nouvelles fonctionnalités :
Gestion du fichier .htaccess en complément du blocage par pays, dans une section spécifique au plugin
Possibilté d'ajouter des adresses IP manuellement
Aide qui explique le fonctionnement du plugin, notamment du critère "bot"
Si on désactive le blocage pays et le blocage htaccess , les logs d'ip continuent à s'enregistrer et on peut quand même avoir des informations sur les IP et leur origine.
version 1.4 par là http://gofile.me/75eAW/G9uqdmFWX
Dernière modification par Charles69 (2026-03-10 17:59:25)
Hors ligne
Pour les 'unknown' chez moi c'est les requêtes par le réseau local
Même si je n'y comprends pas grand chose... je me dis que c'est bien d'utiliser de plugin...
Chez moi, je n'ai que des unknown (pays et ville)
Dois je conclure que c'est "normal"?
Hors ligne
Hello chrisncy
Si tu n'as pas activé le blocage par pays ou le blocage .htaccess le plugin ne bloque rien.
Il stocke et affiche les adresses IP , le pays, le nom de la ville des utilisateurs qui se connectent sur ton site.
C'est une API qui retourne les informations, il peut y avoir des omissions, par exemple les proxy anonyme et les satellites.
Pour bloquer les IP venant d'un pays , cocher 'Activer le blocage par pays' et choisir les pays par leur code ISO
Pour bloquer d'autres IP , cocher Activer le blocage .htaccess
Il peut y avoir là des IP de pays non repérés par le plugin, tu peux les retrouver dans :
Administration > Outils > Historique > Rechercher
si tu veux aussi les bloquer tu peux les écrire dans 'Import d'IPs dans la blocklist' > Importer
En ce qui concerne les unknown , tu as à gauche de 'unknown' l'IP correspondante
Quels sont ces IP dans ton cas ?
Hors ligne
Hors ligne
bonjour,
chrisncy a écrit:
Toutes les lignes sont unknown. Je n'en ai aucune qui identifie un pays
explication : ton site est hébergé chez Infomaniak , il est probable que l'API utilisée qui est gratuite pour un usage perso détecte un serveur et ne retourne aucune information.
Le plugin a été modifié et utilise maintenant plusieurs API en séquence, tu me diras ce qu'il en est.
L'architecture du plugin a été modifiée :
.htaccess
Une première partie permet de gérer le blocage des adresses IP avec .htaccess
- Liste des IP à bloquer
- Ajout manuel d'adresse IP
- Liste blanche ( à compléter avec votre IP pour éviter de vous bloquer vous même)
Si le blocage est activé les IP à bloquer sont écrites, dans une section propre au plugin, dans .htaccess et le blocage sera effectif.
Si le blocage est désactivé la section de .htaccess propre au plugin est effacée, mais les infos restent mémorisées dans le plugin.
détection blocage pays
Une deuxième partie concerne la détection par pays
- saisir le/les codes iso des pays que l'on souhaite détecter ... et on attend ...
Le journal va indiquer pour chaque connexion sur votre site :
Date IP Pays Ville URL User-Agent
Si vous avez activé le blocage pays, l'IP sera bloquée et recevra une erreur 403 Forbidden
Sinon l'IP aura un accès normal au site
Maintenant si vous souhaitez bloquer l'IP indépendamment du pays , il y a deux boutons en début de ligne qui permettent :
- ajouter IP : ajoute l'IP dans le fichier .htaccess
- ajouter /16 : ajoute les 2 premiers blocs de l'adresse IP ( bloque toutes les adresses commençant par 47.128 par exemple)
Le blocage par .htaccess est prioritaire, il bloque le site avant toute exécution de piwigo.
Si les blocages sont activés, le premier niveau se fait sur les IP enregistrées dans le fichier .htaccess , ensuite c'est le plugin ip_location qui va interroger les API et selon le pays retourné , un erreur 403 Forbidden est renvoyée.
La version 1.5 se trouve par là : http://gofile.me/75eAW/rOj9aTgnR
(desactiver/activer le plugin après réinstallation )
Dernière modification par Charles69 (2026-03-11 17:16:54)
Hors ligne
Charles69 a écrit:
Le plugin a été modifié et utilise maintenant plusieurs API en séquence, tu me diras ce qu'il en est.
Situation identique
Que des unkown et qq lignes blanches
Mais bien les 2 colonnes ajoutées comme tu as décrit
Hors ligne
bonjour chrisncy !!
C'est probablement un réglage de ton hébergeur, voilà une nouvelle version avec une autre méthode,
Le menu de configuration a été réorganisé.
ip_location version 1.6 http://gofile.me/75eAW/zony5wJEk
Si tu veux bien tester ?
J'ai ajouté un fichier de suivi .log qui s'écrira là ./plugins/ip_location, on aura peut-être des infos sur les dysfonctionnements.
De ce que je vois sur la page que tu as publié il y a beaucoup de bot us.
Je ne sais pas si tu utilises BYB, mais même avec lui j'ai encore plein d'attaques de bot.
Voilà ce que donne le journal chez moi.
Katryne , si tu passes par là , tu es aussi invité à tester ;)
Hors ligne