Communauté sur les Eggdrops - Community about Eggdrops
[Script] Flood & Protect - Printable Version

+- Communauté sur les Eggdrops - Community about Eggdrops (https://forum.eggdrop.fr)
+-- Forum: Eggdrop et TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum: Scripts TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+--- Thread: [Script] Flood & Protect (/showthread.php?tid=1873)

Pages: 1 2 3


Flood & Protect - uDc - 17/12/2021

Bonjour,

J'aimeras savoir si i'l y'a des scripte qui existe qui protege contre les flood & qui detecte les VPN les Proxy et tout ça...


RE: Flood & Protect - CrazyCat - 17/12/2021

Il y a beaucoup de scripts pour se protéger du flood, le plus complet est All Protection qui demande de bien se pencher sur sa configuration pour ne pas virer du monde à outrance.

Concernant les VPN et proxys, j'ai fait quelques scripts sur forum.egghelp.org, je vais les retrouver et les poster ici


RE: Flood & Protect - uDc - 18/12/2021

Impec Merci


RE: Flood & Protect - CrazyCat - 21/12/2021

Merci de ne pas me faire de demande en MP.
Nous sommes une communauté, ce qui signifie que:
- plusieurs personnes peuvent t'aider
- ton souci et/ou les réponses apportées peuvent intéresser d'autres personnes.


RE: Flood & Protect - uDc - 21/12/2021

(21/12/2021, 17:28)CrazyCat Wrote: Merci de ne pas me faire de demande en MP.
Nous sommes une communauté, ce qui signifie que:
- plusieurs personnes peuvent t'aider
- ton souci et/ou les réponses apportées peuvent intéresser d'autres personnes.

Je suis entièrement d'accord avec toi, dsl


RE: Flood & Protect - uDc - 22/12/2021

(17/12/2021, 23:27)CrazyCat Wrote: Il y a beaucoup de scripts pour se protéger du flood, le plus complet est All Protection qui demande de bien se pencher sur sa configuration pour ne pas virer du monde à outrance.

Concernant les VPN et proxys, j'ai fait quelques scripts sur forum.egghelp.org, je vais les retrouver et les poster ici

Bonjour,
As tu pu trouver les scripte stp ?
Merci


RE: Flood & Protect - Amand - 22/12/2021

CrazyCat a fourni une base pour vérifier si une ip est un proxy ou pas, je vais te faire un script , que tu pourras moduler à ta guise.


( Je suppose que tu utilises ton bot avec une oline vu que je vois un salon #opers )

Le code te permet de traiter la snotice de connexion d'un utilisateur (UnrealIRCD) pour y récupérer l'IP et ensuite savoir si c'est un proxy :


tcl
bind raw - NOTICE proxy:connect
proc proxy:connect {from keyword text} {
  if {[string match -nocase "*Client connecting*" $text]} {
      regexp {\:\ (.*)\ \((.*?)@(.*?)\)} $text matching nick username ip
      set data [getipdatas $ip]
      if {[dict get $data status] eq "success"} {
        if {[dict get $data proxy] eq "true"} {
           putserv "PRIVMSG #opers :$ip est un proxy"
        }
      }
   }
}
 
proc json2dict {JSONtext} {
   string range [string trim [string trimleft [string map {\t {} \n {} \r {} , { } : { } \[ \{ \] \}} $JSONtext] {\uFEFF}]] 1 end-1
}
 
proc getipdatas { ip } {
   ::http::config -useragent "lynx"
   set ipq [http::geturl http://ip-api.com/json/$ip?fields=status,proxy,query&lang=fr]
   set data [json2dict [http::data $ipq]]
   ::http::cleanup $ipq
   return $data
}


Tu as une base pour réaliser ce que tu veux.

PS: N'oublie pas qu'il y a une limite de requête sur le site ip-api.com , 45 par minute.


RE: Flood & Protect - uDc - 23/12/2021

(21/12/2021, 20:15)uDc Wrote:
(21/12/2021, 17:28)CrazyCat Wrote: Merci de ne pas me faire de demande en MP.
Nous sommes une communauté, ce qui signifie que:
- plusieurs personnes peuvent t'aider
- ton souci et/ou les réponses apportées peuvent intéresser d'autres personnes.

Je suis entièrement d'accord avec toi, dsl

(22/12/2021, 21:53)Amand Wrote: CrazyCat a fourni une base pour vérifier si une ip est un proxy ou pas, je vais te faire un script , que tu pourras moduler à ta guise.


( Je suppose que tu utilises ton bot avec une oline vu que je vois un salon #opers )

Le code te permet de traiter la snotice de connexion d'un utilisateur (UnrealIRCD) pour y récupérer l'IP et ensuite savoir si c'est un proxy :


tcl
bind raw - NOTICE proxy:connect
proc proxy:connect {from keyword text} {
  if {[string match -nocase "*Client connecting*" $text]} {
      regexp {\:\ (.*)\ \((.*?)@(.*?)\)} $text matching nick username ip
      set data [getipdatas $ip]
      if {[dict get $data status] eq "success"} {
        if {[dict get $data proxy] eq "true"} {
           putserv "PRIVMSG #opers :$ip est un proxy"
        }
      }
   }
}
 
proc json2dict {JSONtext} {
  string range [string trim [string trimleft [string map {\t {} \n {} \r {} , { } : { } \[ \{ \] \}} $JSONtext] {\uFEFF}]] 1 end-1
}
 
proc getipdatas { ip } {
  ::http::config -useragent "lynx"
  set ipq [http::geturl http://ip-api.com/json/$ip?fields=status,proxy,query&lang=fr]
  set data [json2dict [http::data $ipq]]
  ::http::cleanup $ipq
  return $data
}


Tu as une base pour réaliser ce que tu veux.

PS: N'oublie pas qu'il y a une limite de requête sur le site ip-api.com , 45 par minute.

D'accord, mais est-ce que il va bloquer les VPN/PROXY ?

Moi je cherche qq chose de bien, mm si il faut acheter 1 api c'est pas grave mais au moins je serais protege du proxy/vpn/tor..

Voici 1 exemple

(09:30:43) -[u][i]rc.exemple.com- *** G-Line added for *@84.247.51.149 on Thu Dec 23 08:30:43 2021 GMT (from Guardian!Gu@RootAdmin.Exemple.Com to expire at Thu Dec 30 08:30:43 2021 GMT: Proxy/VPN - France - FR)
(09:30:44) -rc.exemple.com- *** Client exiting: AndroUser (Users@84.247.51.149) [84.247.51.149] (Banned (G-Lined): Proxy/VPN - France - FR)[/i][/u]


RE: Flood & Protect - CrazyCat - 23/12/2021

Il suffit de remplacer la ligne suivante:

tcl
putserv "PRIVMSG #opers :$ip est un proxy"


par celle-ci:

tcl
putquick "GLINE *@$ip +1d :Proxy/VPN [dict get $data country]"


Et de modifier la procédure getipdatas pour en faire:

tcl
proc getipdatas { ip } {
  ::http::config -useragent "lynx"
  set ipq [http::geturl http://ip-api.com/json/$ip?lang=fr]
  set data [json2dict [http::data $ipq]]
  ::http::cleanup $ipq
  return $data
}


Maintenant, pour te protéger efficacement, le mieux est d'utiliser les systèmes existants (DNSBL) sur les ircd ou sur les services, par exemple sur unrealircd: https://www.unrealircd.org/docs/Blacklist_block


RE: Flood & Protect - uDc - 23/12/2021

(23/12/2021, 11:00)CrazyCat Wrote: Il suffit de remplacer la ligne suivante:

tcl
putserv "PRIVMSG #opers :$ip est un proxy"


par celle-ci:

tcl
putquick "GLINE *@$ip +1d :Proxy/VPN [dict get $data country]"


Et de modifier la procédure getipdatas pour en faire:

tcl
proc getipdatas { ip } {
  ::http::config -useragent "lynx"
  set ipq [http::geturl http://ip-api.com/json/$ip?lang=fr]
  set data [json2dict [http::data $ipq]]
  ::http::cleanup $ipq
  return $data
}


Maintenant, pour te protéger efficacement, le mieux est d'utiliser les systèmes existants (DNSBL) sur les ircd ou sur les services, par exemple sur unrealircd: https://www.unrealircd.org/docs/Blacklist_block


Mille merci,

Est-ce que sa existe un autre truck qui ne prends pas en compte les IP réel mais qu'on as déjà rajoute en tant que Abuse sa les prends directe en Tant que Proxy:


RE: Flood & Protect - CrazyCat - 23/12/2021

Je ne comprends pas ta question. Un gline prend forcément en compte l'IP réelle. Et je ne sais pas ce que tu entends par "abuse"


RE: Flood & Protect - Amand - 23/12/2021

Il veut sûrement faire une blacklist manuel ( une liste avec des ips ajouté manuellement ) j'ai relu plusieurs fois sa phrase, difficile à comprendre.


RE: Flood & Protect - uDc - 23/12/2021

(23/12/2021, 14:00)CrazyCat Wrote: Je ne comprends pas ta question. Un gline prend forcément en compte l'IP réelle. Et je ne sais pas ce que tu entends par "abuse"

Exemple ton IP réelle est est signaler abusif donc le  tcl le considère en tant que Proxy,


RE: Flood & Protect - CrazyCat - 23/12/2021

Donc, si c'est pour ajouter les IP à la main dans l'eggdrop (via un script ou en remplissant une liste quelconque), autant mettre des glines directement sur le serveur, tu économiseras l'eggdrop et ce sera plus réactif.


RE: Flood & Protect - uDc - 23/12/2021

(23/12/2021, 18:42)CrazyCat Wrote: Donc, si c'est pour ajouter les IP à la main dans l'eggdrop (via un script ou en remplissant une liste quelconque), autant mettre des glines directement sur le serveur, tu économiseras l'eggdrop et ce sera plus réactif.

Oui je suis d'accord avek toi, mais est-ce que il y'a la possibilite de gerer ce probleme ? 
Pour pas que l'egg passe en action sur les ip relle vu que elle est signaler en tant que ip abuse