IRCD CONFIG:
-------------------
una tra le novità rispetto alla versione trattata nel
precedente tutorial è che i file di configurazione
si trovano nella cartella ircd/etc/ . apriamo dunque il file
ircd/etc/ircd.conf e vediamolo insieme:
M-line:
---------
La M-line ci permette di settare il nome del nostro server,
l'indirizzo e una descrizione. molto importante è
la possibilità di "bindare" il proprio
server su di un ip, ossia la possibilità di "appoggiare"
il nostro server ircd su di uno specifico ip, cosa molto
importante se si ha un ircd account su uno shell hosting.
Il primo campo della M-line è dedicato all'hostname
del server, nel nostro caso "irc.server.it", il
secondo campo è l'ip che vogliamo che il nostro server
utilizzi e nel nostro caso "192.168.1.2", nel
terzo campo abbiamo una breve descrizione del nostro server
nel nostro caso "Server.it IRCD Server".
M:irc.server.it:192.168.1.2:Server.it IRCD Server
A-line:
--------
La A-line ci permette di settare le informazioni riguardanti
l'amministratore del server, i contatti e il nick (o qualunque
altra informazione si desideri dare all'utente). Nel nostro
esempio restituiremo al comando /admin le seguenti informazioni.
Mario Rossi, nick Bill, bill@server.it vedrete che ogni
riga è separata dai ":" quindi per andare
a capo e iniziare una nuova linea ci basterà inserire
":" durante il testo
A:IRC Server Admin: :Mario Rossi (aka Bill) <bill@server.it>
Y-line:
--------
La Y-line definisce le classi per le connessioni. cosa vuol
dire? dunque le line C, N, O ed I (che vedremo dopo) hanno
al loro interno una classe che, grazie alla Y-line, definisce
in un solo numero la frequenza dei ping in secondi, la frequenza
di connessione in secondi, il numero massimo di link e le
dimensioni del sendq. la Y-line quindi va definita prima
delle I e O line. Su una I-line ad esempio la frequenza
delle connessioni è utilizzata per definire quanti
client con lo stesso ip possono connettersi al nostro server.
# Class 1 - Client connections
Y:1:90:0:800:100000
# Class 40 - Hub to leaf, autoconnect
Y:40:90:90:1:3500000
# Class 41 - Hub to leaf, autoconnect
Y:41:90:90:1:3500000
# Class 50 - Hub to hub, autoconnect
Y:50:90:60:1:4000000
# Class 51 - Hub to hub, no autoconnect
Y:51:90:60:0:4000000
Class 3 client connections
Y:3:90:1:100:100000
I-line:
-------
La I-line è ciò che permette ai client di
connettere al nostro server. E' possibile restringere l'accesso
utilizzando ip, hostname o parte di essi, possiamo settare
una password di connessione ed infine possiamo settare una
classe di connessione (vedi sopra la Y-line). comedetto
sopra il "max client" sulla i-line su ptlink è
definito dalla classe che useremo, per esempio
I:100::*@*ppp*::3
Diamo uno sguardo quindi alla classe 3 definita dalla Y-line
qui sopra: il primo numero definisce la classe il secondo
la frequenza dei ping in secondi, il terzo ci dice quanti
client con lo stesso ip possono connettersi e quanti con
l'hostname *@*ppp* hanno accesso al server. Quindi traducendo
la nostra I-line capiremo che potranno connettersi 100 utenti
con hostname *@*ppp* ma solo uno per ip (ossia nessun clone).
Ci sono in oltre diversi "switch" che possiamo
utilizzare sulla nostra I-line:
il segno "-" evita di inserire il ~ quando un
client non ha un ident attivo
il segno "+" obbliga i client ad avere una ident
attiva
il segno "^" esclude gli utenti da eventuali K-line
o G-line
il segno ">" esclude gli utenti dai max user
limit settati sulla i-line
il segno "_" esclude gli utenti da eventuali G-line
il segno "<" esclude gli utenti dalle restrizioni
per idle (ossia di inattività sul server) se abilitato
IDLE_CHECK
I:NOMATCH::-*::1
Per concludere, la I-line riportata qui sopra è
la più permissiva che vi permetterà di accettare
tutte le connessioni sul vostro ircd. molti preferiscono
gestire le eventuali restrizioni dai services (in effetti
quando si ha un network costituito da molti ircd, è
molto più facile fare modifiche alle restrizioni
utilizzando i services che modificare i file di configurazione
di tutti gli ircd).
O-line:
--------
La O-line autorizza un utente ad assumere le flag di operatore.
la sintassi di questa line è: hostname da cui si
è connesso il client, password, nickname, flags,
classe di connessione, umode (user mode) da settare al comando
/oper (ad esempio possiamo impostare la o-line dimodo che
ci attribuisca la flag "y" per "psiare i
whois" dal momento in cui noi diamo il comando /oper).
ed in fine imode da settare al comando /oper. Le flag disponibili
per le nostre O-line sono:
K/k : abilita / disabilita l'operatore ad utilizzare i
comandi /kill e /kline
O/o : abilita / disabilita l'utilizzo di global kill (ossia
la possibilità di killare un utente che non è
sul server su cui si è operatore)
R/r : abilita / disabilita l'utilizzo di comandi remoti
squit/connect (disconnessione di un server e connessione)
U/u : abilita / disabilita l'utilizzo del comando /unkline
G/g : abilita / disabilita l'utilizzo del comando /gline
H/h : abilita / disabilita l'utilizzo del comando /rehash
(ossia riavviare le configurazioni del server)
D/d : abilita / disabilita l'utilizzo dei comandi /die e
/restart (il primo stoppa il processo ircd il secondo lo
chiude e riapre)
di default la o-line globale setta le flag GKORUH
quella locale setta le flag KUH
per le altre flag digita /helpsys umodes , oppure /helpsys
imodes
come si distinguono le o-line locali da quelle globali?
semplice, quelle glibali hanno nel loro inizio la "O"
maiuscola mentre quelle locali hanno nel loro inizio la
"o" minuscola. ecco alcuni esempi:
O:*:-password-cryptata-:Azz0:GKORUHD:3:cNwyskjeB
questa O-line ci dice prima di tutto che Azz0 sarà
un operatore globale. il secondo campo dovrebbe contenere
un hostname o parte di esso, per comodità alcuni
utilizzano il segno "*" che accetta il comando
/oper da qualsiasi hostname. il terzo campo è la
password, alcuni server utilizzano password cryptate, per
convertire una vostra password "plain text" in
cryptata basta utilizzare ./mkpasswd , che trovate sulla
cartella tools/ , da shell e seguire passo passo le sue
istruzioni. Il quarto parametro è il nick utilizzato
per l'operatore, in questo caso è più una
sorta di "username" o "login name" che
utilizzeremo in questo modo: /oper Azz0 password. il quinto
parametro racchiude le flag dell'operatore (ossia gli umode).
il sesto parametro è la classe (vedi la sezione Y-line).
il settimo parametro racchiude gli imode dell'operatore
(digita /helpsys imode per avere il significato di ognuna)
C/N-line:
-----------
C/N line stabiliscono i parametri di connessione fra server.
LA C-line specifica il server al quale in nostro può
connettersi.
La N-line specifica le connessioni accettate dal nostro
server.
queste line contengono, oltre a nome ed ip/hostname dei
server, anche una password. infatti tutte le connessioni
in o out devono avere una password. la parte delle c/n-line
dedicata all'hostname deve contenere un hostname o ip valido,
in oltre la parte per l'hostname della c-line deve sempre
essere identica a quella della n-line per ogni server ed
ogni hostname contenuto sulle c/n line deve SEMPRE essere
associato ad una H-line (se hub) o L-line (se leaf). vediamo
un esempio:
C:192.168.1.3:password:irc.server2.it:7000:50
N:192.168.1.3:password:irc.server2.it::50
come è possibile vedere sulla prima parte della
c ed n line è presente l'ip pubblico del nostro server,
nel secondo la password di connessione nel terzo il nome
del server (visibile poi dal comando /links). nel quarto
campo della c-line speciofichiamo la porta da utilizzare
per la connessione e nel quinto delle line la classe di
connessione (vedi sempre la sezione Y-line). in questo caso
la nostra classe dice che il nostro server hub si autoconnetterà
ad un altro hub chiamato irc.server2.it e per far si che
i due si connettano correttamente abbiamo bisogno quindi
di una H-line!
H/L-line:
-----------
H:*::irc.server2.it
beh non ha bisogno di molte spiegazioni... nel caso in
cui il server fosse un leaf che si connette al nostro hub
avremmo inserito:
L:*::irc.server2.it
semplice no?
P-line:
--------
P-line: questa linea specifica le porte su cui il nostro
ircd rimarrà in ascolto per la connessione di client.
facciamo un esempio:
P::192.168.1.2::6667
questa line dice che l'ircd deve accettare connessioni
sull'ip 192.168.1.2 sulla porta 6667, nel caso in cui volessimo
che TUTTI gli ip assegnati alla nostra macchina utilizzino
la porta 6667 per accettare client avremo
P::::6667
questo è molto comodo anche per chi vuole installare
un ircd server su una macchina che ha una connessione con
ip dinamico.
U-line:
--------
Uline è definita come "server cluster"
ossia ha il compito di condividere le informazioni del nostro
server con quelle del server specificato nella u-line (disolito
un services) per esempio una k-line impostata sul nostro
server sarà condivisa anche dai server specificati
nelle nostre u-line. vediamo un esempio:
U:services.server.it:
U:stats.server.it:
molto semplice, non ha bisogno di ulteriori spiegazioni
sulla sintassi...
Q-line:
--------
La Q-line è molto importante se utilizziamo services,
questa infatti ci permette di restringere l'utilizzo di
un nickname ai soli operatori del server o network, l'utilità
sta nel fatto di poter evitare fake di utenti che cambiano
il proprio nick in "NickServ_" per esempio, e
cercano di infastidire o danneggiare la nostra utenza. per
ovviare a questo problema ci basta inserire questa semplice
linea:
Q:*N*i*c*k*S*e*r*v*:Nick privato, scegline uno diverso
questo impedirà qualsiasi combinazioni contenente
la parola "nickserv" quindi _nickserv, nick_serv,
_nickserv_, ecc.... possiamo anche utilizzare questa opzione
per nick dei nostri bot che hanno qualche funzione specifica
sul nostro network e che ovviamente sono operatori o ne
hanno le flag.
T-line:
--------
T-line, ci da la possibilità di mostrare un motd
diverso a seconda dell'host di un client. per esempio, se
noi decidessimo di scrivere un motd in italiano ed uno in
inglese per l'utenza straniera potremmo fare in questo modo:
T:*.it:ita.motd
T:*.net:eng.motd
come è intuibile nel primo campo inseriremo un host
o parte di esso (*.it o *.net in questo caso) e nel secondo
campo inseriremo il file contenente "il messaggio"
che ovviamente deve essere contenuto nella directory ircd/etc/
. Un'idea sarebbe anche quella di mandare messaggi diversi
on-connect agli utenti con adsl e a quelli con 56k, oppure
ad utenti fastweb, ecc...
Main Dconf:
----------
Parliamo ora del main.dconf contenuto nella directory ircd/etc/
, questo file racchiude alcune funzioni legate all'ircd
ad esempio il lookup al connect, gestione dei flood, max
user/chan, ecc... queste funzioni possono essere abilitate
(con uno YES) oppure disabilitate (con un NO), vediamo punto
per punto questo file:
ReverseLookup Yes
-------------------
Questa funzione ci chiede se vogliamo che il nostro ircd
effettui un lookup dell'hostname del client che si sta connettendo.
CheckIdentd NO
---------------------
Controlla lo stato dell'ident di ogni client che si connette
HideConnectInfo No
-------------------------
Questa funzione, se abilitata, può nascondere i messaggi
che arrivano all'utente al momento della connessione
AllowChanCTCP NO
----------------------------
Questa funzione, se disabilitata, permette ai solo op o
voice del canale di mandare CTCP a tutto il canale, se invece
viene abilitata sarà possibile mandare CTCP al canale
anche senza op o voice.
ChanFloodTime 10
-------------------------
questa funzione definisce l'intervallo tra un messaggio
ed un altro sotto il quale viene definito un flood in un
canale settato +d ossia "no flood"
CheckTargetLimit YES
----------------------------------
questa funzione definisce un limite al mass messages ossia
ai messaggi e notice inviati a più persone
MaxChansPerUser 20
-----------------------------
definisce quanti canali possono essere aperti da un singolo
client
questi i punti principali di questo file, molto intuitivi
non hanno bisogno di ulteriori approfondimenti, qual ora
qualcuno avesse dei dubbi o delle domande su uno dei punti
elencati può scrivere sul forum di tuttoirc http://forum.tuttoirc.it
risponderò personalmente alle vostre domande. Nella
prossima guida vedremo come configurare al meglio i services
e come linkarli al nostro server, vedremo anche tutte le
proprietà di ogni services del pacchetto PTServices,
quindi date un occhio su www.tuttoirc.it ogni tanto per
eguire tutti gli aggiornamenti!
Azz0 / und3r
andrea.menin@fastwebnet.it
|