2.6.1.
Tipi di ban e quando usarli
Ci sono alcuni tipi di ban, ognuno dei quali e' utile per particolari
situazioni, anche se ce ne sono un paio (soprattutto i cosiddetti "screwban",
quelli pieni di singoli '?') che sembrano proprio essere completamente inutili.
2.6.1.1. Ban sul nick
Il formato corretto per un nick ban e':
/mode * +b nick!*@*
Questo banna chiunque usi il nick "nick". Per esempio /mode * +b SilverOz!*@*
bannera' chiunque usi il nick SilverOz. Naturalmente in questo caso e' possibile
cambiare nick ed entrare nel canale nonostante il ban.
Questo ban e' praticamente inutile contro le persone, ma puo' essere usato per
liberarsi dei bot, che in genere non cambiano il proprio nick. (Alcuni lo
cambiano comunque. Inoltre, su EFnet, potete vedere i ban impostati su qualunque
canale, indipendentemente dal fatto che siate o meno su quel canale, scrivendo
/mode #canale b.) Puo' anche essere usato per tenere fuori un utente inattivo da
tempo (idle) che ha una funzione di auto-rejoin (rientra automaticamente nel
canale dopo un kick). In questo caso bannatelo e sbannatelo poi dopo 5 minuti.
2.6.1.2. Ban del tipo
user@host
Il formato corretto per un ban del tipo user@host e' il seguente:
/mode * *!*user*@*host.suffix
Questo e' il tipo di ban standard. Esso banna tutti i nick (*! significa
"qualunque nick") che abbiano il dato nome utente (*user* indica il nome utente;
il '*' all'inizio serve nel caso sia presente il carattere '~' che potete vedere
in alcuni casi, il '*' alla fine serve per assicurarsi che il nome utente dato
stia nello spazio previsto -- lo spazio massimo e' di 9 caratteri), da qualunque
macchina all'interno del dominio dato.
Es. per bannare SilverOz che e' zjohnsto@scu.edu.au scriverete:
/mode * +b *!*zjohnsto*@*scu.edu.au
per bannare Luser che e' lame@mm.elcheepo.edu scriverete:
/mode * +b *!*lame*@*elcheepo.edu
Notare che per l'indirizzo non USA (.au sta per Australia) lasciate 3 parti del
nome del host, per quello USA solo 2.
La maggior parte degli script scrivono il ban cosi':
/mode * +b *!*lame*@*.elcheepo.edu
che va bene a meno che troviate qualcuno che abbia un indirizzo composto da 2
sole parti; ad esempio se luser ha un altro account, joe@hacker.com e ha accesso
anche a joe@phreak.hacker.com:
/mode *!*joe*@*.hacker.com bannera' solo il secondo account e non il primo.
2.6.1.3. Ban su un sito
Il formato per un 'site ban' efficace e':
/mode * +b *!*@*host.suffix
Questo banna chiunque da una particolare macchina o da un dominio, chiunque sia
e qualunque sia il suo nick.
Per esempio, se voleste bannare SilverOz e chiunque altro da SCU, dovreste
scrivere:
/mode * +b *!*@*scu.edu.au
A questo punto non importa piu' chi e' la persona, se sta su una macchina di SCU
sara' bannata.
Potete anche bannare gli utenti di una particolare macchina, cosi' se volete
bannare gli utenti di alsvid.scu.edu.au, ma non quelli di angus.scu.edu.au,
dovete scrivere:
/mode * +b *!*@alsvid.scu.edu.au
2.6.1.4. Ban sugli indirizzi
IP
Alcuni server non restituiscono il nome della macchina quando fate un whois ma
vi danno solo una serie di numeri che identifica l'indirizzo IP (Internet
Protocol). (Questo capita anche perche' ad alcune macchine non viene
effettivamente assegnato un nome, ma vengono identificate solo col loro
indirizzo IP, ndt)
Un indirizzo numerico e' in realta' l'indirizzo "IP" di quella persona e alcune
volte bannare semplicemente l'intero indirizzo IP e' sufficiente. Esempio:
/mode #bdsm +b *!*zjohnsto*@203.2.20.1
Se la persona bannata ha accesso ad altre macchine sulla propria rete o puo'
cambiare il proprio indirizzo IP, la situazione e' un po' piu' complicata. Ci
sono 3 tipi di indirizzi che potete ottenere registrando un network (rete):
classe A, classe B e classe C. Un network di classe C e' una piccola rete che
contiene non piu' di 255 host, ed e' il piu' comune. In un network di classe C
solo l'ultimo numero puo' cambiare. Se so che SilverOz sta su una rete di classe
C, posso fare un site ban su di lei cosi':
/mode #bdsm +b *!*zjohnsto@203.2.20.*
Un dominio di classe B e' piu' grande, fino a 65535 host, e i numeri che possono
cambiare sono gli ultimi 2. Per un dominio di classe B dovrete usare:
/mode #bdsm +b *!*zjohnsto@203.2.*
Un dominio di classe A contiene 16777215 host e tutte le ultime 3 componenti
dell'indirizzo possono cambiare. Ci sono solo 255 network di classe A - tutti di
proprieta' di grosse corporazioni. Molti network, specialmente quelli grandi,
sono suddivisi in reti piu' piccole, il che vuol dire che anche se l'utente in
questione sta su una grande rete, la sottorete che lui usa puo' essere bannata
semplicemente mettendo un '*' nell'ultima parte dell'indirizzo.
I network da 128-191 sono di classe B
I network da 192-223 sono di classe C
Tutto il resto dev'essere considerato classe A.
Potete fare un ban tipo /mode * +b *!*zjohnsto*@203.2.20* ma questo bannerebbe gli utenti
che hanno l'indirizzo 203.2.202.4 per esempio, ma anche quelli provienienti da un dominio
completamente differente.
Morale: includete sempre il punto '.' alla fine quando usate i ban sugli IP address.
Ora sapete piu' di quanto avreste mai voluto sapere sugli indirizzi IP.
2.6.1.5. Efficienza
E' possibile nonche' consigliabile rendere i vostri kick e ban piu' efficienti. Per
esempio dovreste sempre deoppare un utente prima di bannarlo. Perche'? Perche' se non lo
fate, puo' deopparvi o kickarvi prima che lo facciate voi.
Questa operazione puo' essere fatta semplicemente combinando i mode. Ad esempio, per
cacciare Thoth dal canale dovrete fare cosi':
/mode * -o+b thoth *!*thoth*@*intercon.com
/kick * thoth Get out you wanker
e sullo schermo si vede:
*** Mode change "-o+b thoth *!*thoth*@*intercon.com" on channel #bdsm by
SilverOz
*** Thoth has been kicked off channel #bdsm by SilverOz (Get out you wanker)
Questo mode change ha prima deoppato Thoth e poi l'ha immediatamente bannato.
2.6.2. Rimuovere i ban
Per vedere quali ban sono presenti sul canale, scrivete:
/mode * b
(NOTA: questo funziona indipendentemente dal fatto che voi siate o meno sul canale, ma
ovviamente se siete fuori dovete specificare il nome del canale, /mode #canale b.)
Per rimuovere i ban, dovete scriverli *esattamente* come sono - un terminale senza taglia
e incolla e' sconsigliato per questo. Se fate un errore, il sistema non vi avvertira', vi
dira' semplicemente che il ban e' stato tolto, anche se non e' mai esistito. Dovete
scrivere il ban esattamente com'era.
Per rimuovere un ban:
/mode * -b <ban pattern>
es.
per rimuovere il ban *!*zjohnsto*@*scu.edu.au
/mode * -b *!*zjohnsto*@*scu.edu.au
2.6.3 Perche' un ban puo' non funzionare
Qualche volta bannate un utente e questo rientra lo stesso sul canale. Puo' essere che
l'abbiate bannato male. Ma se il ban sembra corretto, ci sono altre spiegazioni.
2.6.3.1 Troppi ban
Un canale puo' contenere al massimo 20 ban contemporaneamente. Se provate a mettere un
nuovo ban e gia' ce ne sono 20, non otterrete nessun cambiamento di mode, non otterrete
nessuna risposta.
2.6.3.2. Ban simili
Se e' gia' presente un ban simile a quello che state cercando di mettere, allora il vostro
non funzionera'. Rimuovete il ban inesatto o inutile e riprovate.
Che cosa vuol dire 'simile'? Un ban e' definito 'troppo simile' se il nick, lo user o
l'host del ban coincidono con quelli di un ban gia' esistente.
2.6.3.3. Server 'desynch'
Questo e' un brutto problema. Se un server diventa desynch, allora un hacker (pirata) puo'
entrare nel canale su quel server dal momento che il ban che avete messo non sara' nella
memoria di quel server. In questo modo, l'hacker puo' uscire e rientrare quando vuole e,
dal vostro punto di vista, potra' farlo nonostante la presenza di un ban. Vedere la
sezione 1.3 per cio' che succede in caso di split.
2.6.2.4. Server splittati
Quando un server splittato si ricollega (rejoin), tutte le persone che stanno su quel
server entrano sul canale. I ban non contano. Ovviamente potete kickarli una volta
entrati, ma ricordate che questa non e' sempre una buona idea, soprattutto durante un
tentativo di takeover, visto che loro continueranno a vedere cio' che voi dite, ma voi non
potrete vedere cio' che dicono loro!
Inoltre non c'e' modo di capire che una persone e' entrata in seguito ad uno split --
appare esattamente come un join normale.
mondoIrC 1999/2000