Le 26/01/2024 à 23:12, Arnaud Launay a écrit :
En un peu moins compliqué à mettre en oeuvre (créer un compte... M'enfin...), et
potentiellement en un peu moins précis, tu as ipdeny qui se crée sur les bases
des
RIR (que tu pourrais aussi exploiter directement):
Merci Arnaud, j'ai aperçu ipdeny bien après et j'ai soupiré... J'avais
déjà l'autre soluce, effectivement capilotractée. Je note la tienne car,
effectivement, c'est plus propre :)Je la garde soluce en plan Bcar qui
peut prédire combien de temps ip2location offrira ce service... Un
certain temps :)
https://www.ipdeny.com/
Alors évidemment, c'est basé sur du "déclaratif" au bon vouloir des sociétés qui
remplissent les bases des RIR, mais c'est globalement assez efficace.
https://www.ipdeny.com/ipblocks/
J'ai presque le double de blocks avec ip2location (~7800), ça fait un
gros delta...
Qui croire... Enfin si les gros fixes et mobiles y sont...
(Oui, ya même les blocs ipv6, pour les futuristes).
Pour la France:
https://www.ipdeny.com/ipblocks/data/countries/fr.zone (4491 blocs)
ou
https://www.ipdeny.com/ipblocks/data/aggregated/fr-aggregated.zone (3951 blocs,
pratique si t'es sur Juniper, 100ko de gagné, c'est toujours ça de pris)
Ça donne du coup:
ipset -N france nethash
wget -P /tmphttp://www.ipdeny.com/ipblocks/data/countries/fr.zone
for i in $(< /tmp/fr.zone ); do ipset -A france $i; done
iptables -P INPUT DROP
iptables -I INPUT -m set --match-set france src -j ACCEPT
Bon, à améliorer pour ajouter peut-être quand même les DOM/TOM, en fonction de
ton utilisation.
C'est quand même moins compliqué que ton machin :)
+1
On pourrait même virer le wget en mettant le curl qui va bien dans la
boucle for pour en faire un oneliner :)))
Bon après, une fois que t'as chopé le token et que t'as trouvé le moyen
de passer de leur format de ouf à une simple liste de blocs, ça s'oublie
aussi.
Bon we et merci !
--
Stéphane Rivière
Ile d'Oléron - France
---------------------------
Liste de diffusion du FRnOG
http://www.frnog.org/