Bannir un user sur differentes détections
#1
Bonjour

J'aimerais savoir/trouver un tcl pour bannir un user sur différentes détections :

- Sur un notify de pseudo :
une fois le bot ayant notify le pseudo et que le pseudo se connecte, qu'il pose " automatiquement " un ban sur son host.
Car j'ai des users qui viennent souvent en changeant d'ip et de pseudo.
Je m'explique :
Ils prennent toujours le même pseudo pour allez sur d'autres salons, mais étant donner que sur mon salon leurs pseudos sont blacklister, ils prennent un autre pseudo pour venir sur mon salon mais avec le même host que le pseudo qui est en notify.

- Sur realname : j'ai vu que le sujet avait été traiter mais pas résolu apparemment.

J'espère avoir été assez explicite et que quelqu'un pourra m'aider.
Par avance merci, bonne journée
Cordialement
Répondre Avertir
#2
pour ce qui est du TCL de notify j'en est un. mais je doute que ce que tu veut faire soit bien efficace pour protégé ton salon personnellement!
si tu veut Kick ban sur le realname essaye celui peut être que ... sinon tu met ton chan en +im ou autre ....

tcl
# badrealname.tcl
# original code by Papillon
# modified by caesar
# version 1.3

# Many thanks to ppslim for the ctrl:filter proc.

# What bad realnames should be banned?
set badr(list) {
"foo bar"
"bla bla"
"*moo*"
"???"
"*http://*"
"*www.*"
}

# The realname check should be done only in what channel?
set badr(chan) "#channel"

# For how many minutes whould you like the ban?
set badr(time) 60

# What reason will be used when an person is found using an bad realname?
set badr(reason) "You norteh norteh boy!"

# binds #
bind join - "$badr(chan) *" badrealname:join
bind raw - 311 badrealname:check

# join #
proc badrealname:join {nick host hand chan} {
  if {![validuser $hand] || [strlwr $nick] != [strlwr $::botnick]} {
    putserv "WHOIS $nick"
  }
}

# check #
proc badrealname:check {from key arg} {
  set realname [strlwr [ctrl:filter [string range [lindex [split $arg] end] 1 end]]]
  foreach bah $::badr(list) {
    if {![string match $bah $realname]} {
      continue
    }
    newchanban $::badr(chan) "*!*@[lindex [split $arg] 3]" $::botnick $::badr(reason) $::badr(time)
    break
  }
}
 
proc ctrl:filter {str} {
  regsub -all -- {03[0-9]{0,2}(,[0-9]{0,2})?|17|37|02|26|06|07} $str "" str
  return $str
}
 
putlog "badrealname.tcl.. loaded."



pour ce qui concerne le tcl de notify je verrais pour le mettre ici quand je serais chez moi.
Répondre Avertir
#3
Bonjour

Merci fedora pour le tcl, mais rien ne se passe.
Aucune détection, aucun ban ... j'trouve pas d'ou cela vient :/
Quelqu'un aurait une autre proposition svp

Cordialement
Répondre Avertir
#4
bonsoir,
Citation :Aucune détection, aucun ban ... j'trouve pas d'où cela vient :/
ce qui serais bien vois tu,c'est plus de détail du genre quel sont les erreur en PL que tu a? le TCL est 'il bien chargé ? ect ....
parce que dire que le TCL ne fait rien j'en doute un peut quand même ....
Répondre Avertir
#5
bonjour
Aucune erreur en pl et le tcl est bien chargé

Cordialement
Répondre Avertir
#6
peut tu nous monter le tcl que tu à charger ?
Répondre Avertir
#7
J'ai refait un script pour bannir sur realname en utilisant WHO :
BanRealName (oué quel nom original)
Répondre Avertir
#8
Bonjour

Voici ci-joint les tcl que j'avais tester avant ( merci fedora ) et qui ne fonctionnent pas chez moi. ( Ou que j'ai peut etre mal configurés )

Merci artix , pour ce tcl mais j'ai une erreur en pl ...
Tcl error [::banRealName::rawTrigger]: bad option "-nocase": must be -all, -ascii, -decreasing, -dictionary, -exact, -glob, -increasing, -inline, -integer, -not, -real, -regexp, -sorted, or -start

J'ai aucune réaction de mon bot au join d'un user avec un mauvais realname sur mon salon

Merci de votre aide

Cordialement
Répondre Avertir
#9
essaye celui ci peut etre que ....
tcl
# Anti Spam away et Realname
##
#
# /!\ Ce script n' a pas de protection un mass join et le bot part en excess flood/!\
# Soit vous faites une protect
# soit votre bot est ircop ;)soit

# Definir les SaLons ou l' antispam away et realname est actif
# Séparez par des espaces
# Pour Activer sur tous les salons du bot laissez ""
set chanz ""

# La raison du kickban (ou gline)
set rez "Spam Realname ou away!"

# Definir les mots clefs suceptibles d' etre du spam
set motz {
"*sexy*"
"*hotmail*"
"*h*t*t*p"
"*http://*"
"*www.*"
"*.com*"
"*.fr*"
"*.org*"
"*.info*"
"*.net*"
"*.br*"
"*.tk*"
"*.euro*"
"*.st*"
}

#################################

# On bind les joins
if {( $chanz != "" )} {
 foreach chanz $chanz {
bind join - "$chanz *" check:join
  }
} else {
bind join - * check:join
}

# Le bind raw realname
bind raw - 311 check:real

# le bind raw away
bind raw - 301 check:aw
 
proc check:join { nick uhost hand chan } {
 
   # La seule Protection est le choix du puthelp
   # un putquick serait beaucoup plus efficace pour un bot ircop
    variable whonick $nick
    set host [lindex [split $uhost "@"] 1]
    variable whohost "*!*@$host"
    variable whochan $chan
    puthelp "WHOIS $nick $nick"
    return 0
}
 
proc check:real {from key txt} {
  global motz whohost whochan whonick rez
  set rn [string range [join [lrange [split $txt] 5 end]] 1 end]
  regsub -all -- "\003(\[0-9\]\[0-9\]?(,\[0-9\]\[0-9\]?)?)?|\002|\017|\026|\037" $rn "" rn
 
  foreach sp $motz {
    if {[string match -nocase $sp $rn]} {
        # ici ça put un ban et un kick
       # ça pourrait etre un newchanban ou un gline/kline pour un bot ircop
      putquick "MODE $whochan +b $whohost"
      putquick "KICK $whochan $whonick :$rez"
    return 0
    }
}
return 0
}

 
# on fait pareiL pour le raw away
 
proc check:aw {from key txt} {
global motz whohost whochan whonick rez
 set aw [string range [join [lrange [split $txt] 2 end]] 1 end]
 regsub -all -- "\003(\[0-9\]\[0-9\]?(,\[0-9\]\[0-9\]?)?)?|\002|\017|\026|\037" $aw "" aw
foreach sp $motz {
    if {[string match -nocase $sp $aw]} {
      putquick "MODE $whochan +b $whohost"
      putquick "KICK $whochan $whonick :$rez"
    return 0
    }
}
return 0
}
 
putlog "\00314 AntiSpam RealName et Away ¤ \0035 by Che ;)"


Répondre Avertir
#10
Merci fedora, cela marche a merveille :)

Merci a vous deux pour vos réponses

Cordialement
Répondre Avertir
#11
Concernant l'autre script, c'est surement car l'option -nocase pour lsearch n'est disponible que sur Tcl 8.4 ou 8.5
Mais si le script de fedora fonctionne je suppose que c'est bon :p
Répondre Avertir
#12
Citation :- Sur un notify de pseudo :
une fois le bot ayant notify le pseudo et que le pseudo se connecte, qu'il pose " automatiquement " un ban sur son host.

En regardant dans mes archives j'ai retrouver un TCL comme celui ci. toutes personnes étant notifier par le bot (dans un fichier .db) ,le bot pose le ban automatiquement. je mettrais le TCL quand j'aurais corriger certain beug et je serais chez moi.
Répondre Avertir
#13
voici le TCL de bannick notify, il pose un ban sur le host des que la personne ce connecte sur le serveur..

cordialement
Répondre Avertir
#14
bonjour

fedora j'ai telecharger ton tcl sur les ban sur les reanames.
je voulais savoir si on pouvais mettre une protection pour les personnes qui sont dans le robot avec des pass ? Car sinon elle se font bannir aussi.

merci bonne journée
Répondre Avertir


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté