Apriamolo, e iniziamo a lavorare:
Cerchiamo la voce [color=red]modules/commands.dll[/color]
e cancelliamo i due slash (//) prima della parola
loadmodule, sia nella riga commands.dll che nella
riga appena sotto, a cloak.dll. Togliendo questi slash
uncommentiamo le stringhe di comando in modo da attivare
la comunicazione con questi file presenti nelle cartelle
dei moduli di UnrealIRcd, ottendendo quindi questo:
/* FOR Windows, uncomment the following 2 lines:
*/
loadmodule "modules/commands.dll";
loadmodule "modules/cloak.dll";
Andiamo più sotto e troviamo
me
{
name "irc.foonet.com";
info "FooNet Server";
numeric 1;
};
Sostituiamo irc.foonet.com con il nome della nostra
net, più sotto modifichiamo anche la voce info,
immettendo la descrizione del nostro server.
Poco più sotto andiamo su
admin {
"Bob Smith";
"bob";
"widely@used.name";
};
Modifichiamo Bob Smith con il nostro nickname, volendo
possiamo cancellare la seconda riga con "bob"
e alla terza riga immettiamo la nostra email. Questi
dati compariranno con il comando /admin digitato nel
client.
Scorriamo sotto, alla riga 196, trovando questo blocco:
oper bobsmith {
class clients;
from {
userhost bob@smithco.com;
};
password "f00";
flags
{
netadmin;
can_zline;
can_gzline;
can_gkline;
global;
};
};
Questi dati servono ad aggiungere un operatore (in
questo caso il netadmin dev'esserci perforza).
Modifichiamo bobsmith con il nostro nick, affianco
ad userhost cancelliamo bob@smithco.com e inseriamo
*@*, modifichiamo la password e anche le flags. Per
quanto concerne le flags bisogna inserirne molte altre
se vogliamo avere pieni poteri (almeno per quanto
riguarda noi) e inseriamo quindi tutte queste flags:
local;
global;
coadmin;
admin;
services-admin;
netadmin;
can_rehash;
can_die;
can_restart;
helpop;
can_wallops;
can_globops;
can_localroute;
can_globalroute;
can_localkill;
can_globalkill;
can_kline;
can_unkline;
can_localnotice;
can_globalnotice;
can_zline;
can_gkline;
can_gzline;
get_umodew;
get_host;
can_override;
can_setq;
can_addline;
can_dccdeny;
Quindi alla fine dovremmo trovarci questo blocco:
oper nickname {
class clients;
from {
userhost *@*;
};
password "password";
flags
{
local;
global;
coadmin;
admin;
services-admin;
netadmin;
can_rehash;
can_die;
can_restart;
helpop;
can_wallops;
can_globops;
can_localroute;
can_globalroute;
can_localkill;
can_globalkill;
can_kline;
can_unkline;
can_localnotice;
can_globalnotice;
can_zline;
can_gkline;
can_gzline;
get_umodew;
get_host;
can_override;
can_setq;
can_addline;
can_dccdeny;
};
};
A questo punto dobbiamo soffermarci a dire alcune
cose:
Per identificarci come Network Administrator, scriviamo
nel client /oper nick password.
Nel caso poi volessimo inserire altri oper, dovremo
andare ad immettere subito dopo questo blocco, un
altro identico, andando a modificare nickname, password
e le flags.
Le flags gestiscono le diverse autorità, ovvero
ogni flag permette ad un operatore di effettuare una
determinata operazione, esempio can_die permette di
dare il comando /die password (che vedremo piu avanti)
in modo tale da disconnettere il nostro server. Per
ogni funzione delle diverse flag potete consultare
la documentazione ufficiale all'indirizzo http://www.vulnscan.org/UnrealIRCd/unreal32docs.html
Detto questo passiamo avanti e andiamo su:
listen *:6697
{
options
{
ssl;
clientsonly;
};
};
listen *:8067;
listen *:6667;
Questo blocco serve a bindare (aprire) le porte della
nostra macchina.
Al posto degli asterischi * inseriamo l'ip remoto
del nostro server e al primo listen (6697) cancelliamo
tutte le opzioni sottostanti che tra poco spiegherò.
E' consigliabile aprire le porte dalla 6666 alla 6669
compreso la 8000 per il link ai services, in modo
da bilanciare il server e da non sovraccaricare una
sola porta.
Quindi otteniamo questo:
listen xxx.xxx.xxx.xxx:6697;
listen xxx.xxx.xxx.xxx:6666;
listen xxx.xxx.xxx.xxx:6667;
listen xxx.xxx.xxx.xxx:6668;
listen xxx.xxx.xxx.xxx:6669;
listen xxx.xxx.xxx.xxx:8000;
N.B: le xxx si sostituiscono con i numeri che compogono
il nostro ip.
Ora vediamo le opzioni che abbiamo tolto prima a
cosa servono:
{
options
{
ssl;
clientsonly;
};
};
L'opzione ssl (secure connection) serve ad aprire
quella porta con il supporto ssl (per fare ciò
bisogna installare Unreal3.2.4 con supporto ssl).
L'opzione clientsonly serve ad indicare che quella
porta è destinata soltanto alla connessione
di client e non di server (se vogliamo aprire quella
porta per il link ad un server dobbiamo quindi escludere
questa opzione).
Passiamo avanti, e andiamo su:
link hub.mynet.com
{
username *;
hostname 1.2.3.4;
bind-ip *;
port 7029;
hub *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
options {
/* Note: You should not use autoconnect when linking
services */
autoconnect;
ssl;
zip;
};
};
Questo blocco gestisce il link di un server o dei
services. In questo caso terrò conto che vogliamo
linkare i services, se invece vogliamo linkare un
server basta sostituire alcuni dati che ora andremo
a vedere:
hub.mynet.com sostituiamolo con l'hostname che vogliamo
assegnare ai services, es: services.mianet.net. Su
hostname modifichiamo 1.2.3.4 inserendo l'ip della
macchina dove risiedono i services (se è la
nostra immettiamo il nostro ip remoto). es: hostname
xxx.xxx.xxx.xxx; (da sostituire le x come detto prima).
Su port scegliamo una porta per la connessione (uno
standard è l'8000) quindi mettiamo port 8000;
su password connect e password receive inseriamo la
stessa password che vogliamo per il link, es:
password-connect "pass";
password-receive "pass";
Lasciamo tutto il resto invariato tranne ssl; e zip;
che possiamo eliminare, lasciando solo autoconnect.
Otterremo questo:
link services.mianet.net
{
username *;
hostname xxx.xxx.xxx.xxx;
bind-ip *;
port 8000;
hub *;
password-connect "pass";
password-receive "pass";
class servers;
options {
autoconnect;
};
};
Per ogni link che vogliamo, dobbiamo inserire subito
dopo questo blocco, un altro identico, modificando
i dati opportuni (esattamente come per la o: line).
Appena più sotto troviamo:
ulines {
services.roxnet.org;
stats.roxnet.org;
};
Sostituiamo services.roxnet.org e stats.roxnet.org
con quelli nostri.
Gli stats sono racchiusi in un server e hanno il compito
di dare statistiche sul network, ma questo lo vedremo
in un altra occasione.
Scorriamo ancora e troviamo:
drpass {
restart "I-love-to-restart";
die "die-you-stupid";
};
scegliamo le pass per il comando restart e die (per
poterli utilizzare quindi è necessario digitare
la pass nel client, es: /die pass - /restart pass),
restart, squitta e rilancia il server, die invece
lo squitta soltanto.
Scorriamo, e troviamo il seguente blocco:
/* Standard aliases */
alias NickServ { type services; };
alias ChanServ { type services; };
alias OperServ { type services; };
alias HelpServ { type services; };
alias StatServ { type stats; };
Sostituiamo tutto con
/* Standard aliases */
alias BotServ { type services; }; alias BS { nick
BotServ; type services; };
alias ChanServ { type services; }; alias CS { nick
ChanServ; type services; };
alias HostServ { type services; }; alias HS { nick
HostServ; type services; };
alias HostServ { type services; }; alias HO { nick
HostServ; type services; };
alias MemoServ { type services; }; alias MS { nick
MemoServ; type services; };
alias NickServ { type services; }; alias NS { nick
NickServ; type services; };
alias OperServ { type services; }; alias OS { nick
OperServ; type services; };
Questi sono gli alias che serviranno per i services,
per esempio per la registrazione di un nickname, senza
di questi è necessario scrivere /msg nickserv
register pass email, ma con l'alias facciamo in modo
che /ns valga per /msg nickserv e quindi basterà
scrivere soltanto /ns register pass email. Tutto questo
vale per gli altri services.
Andiamo sotto su
ban ip {
mask 195.86.232.81;
reason "Delinked server";
};
e commentiamo il tutto, dato che non dobbiamo bannare
nessuno, quindi inseriamo una /* prima di ban e */
alla fine.
Stessa cosa facciamo per:
ban server {
mask eris.berkeley.edu;
reason "Get out of here.";
};
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Idiot";
};
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
except ban {
/* don't ban stskeeps */
mask *stskeeps@212.*;
};
che troviamo poco più sotto.
Più sotto troviamo:
deny channel {
channel "*warez*";
reason "Warez is illegal";
};
modifichiamo warez con il nome del canale che vogliamo
vietare e Warez is illegal con il motivo per cui lo
vietiamo.
Scorrendo troviamo anche:
vhost {
vhost i.hate.microsefrs.com;
from {
userhost *@*.image.dk;
};
login stskeeps;
password moocowsrulemyworld;
};
Commentiamo tutto, perchè c'è l'hostserv
dei services che gestisce i vhost.
Ci siamo quasi, arriviamo alla parte finale trovando
questo:
/* Network configuration */
set {
network-name "ROXnet";
default-server "irc.roxnet.org";
services-server "services.roxnet.org";
stats-server "stats.roxnet.org";
help-channel "#ROXnet";
hiddenhost-prefix "rox";
/* prefix-quit "no"; */
/* Cloak keys should be the same at all servers on
the network.
* They are used for generating masked hosts and should
be kept secret.
* The keys should be 3 random strings of 5-100 characters
* (10-20 chars is just fine) and must consist of lowcase
(a-z),
* upcase (A-Z) and digits (0-9) [see first key example].
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"and another one";
"and another one";
};
/* on-oper host */
hosts {
local "locop.roxnet.org";
global "ircop.roxnet.org";
coadmin "coadmin.roxnet.org";
admin "admin.roxnet.org";
servicesadmin "csops.roxnet.org";
netadmin "netadmin.roxnet.org";
host-on-oper-up "no";
};
};
/* Server specific configuration */
set {
kline-address "set.this.email";
Modifichiamo network-name, default-server, services-server,
stats-server e helpchannel con i nostri dati e su
hiddenhost inseriamo l'iniziale o se vogliamo il nome
della nostra net (servirà come parte iniziale
del mascheramento ip degli utenti, visibile con un
whois).
Su cloack keys, al posto di "another one"
dobiamo inserire altri due cloak come il primo, cambiando
solo qualche carattere a nostro piacimento.
Un esempio potrebbe essere:
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpA";
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpB";
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpC";
};
Modifichiamo ora il blocco host. Sono in pratica
gli host che avranno gli operatori del network, a
seconda della qualifica. Quindi consiglio di lasciare
la prima parola e cambiare soltanto "roxnet.org".
Abbiamo finito, l'ultimo passaggio è modificare
l'email su
set {
kline-address "set.this.email";
inserendo l'email alla quale vogliamo farci contattare
per informazioni su eventuali kline che assegneremo
(/kline nickname), il quale server per bannare permanentemente
un utente sul nostro network. Salviamo e apriamo di
nuovo il blocco note. Salviamo due files in bianco
come *. tutti i file. Uno lo chiamiamo ircd.motd.fr
e uno ircd.rules.fr. Entrambi li piazziamo sulla cartella
principale Unreal3.2. La stessa cosa facciamo per
altri due file che chiameremo ircd.motd e ircd.rules
e metteremo nella stessa path dei precedenti. Questi
ultimi serviranno per gestire il motd (messaggio del
giorno) e rules (regolamento del network).
E così abbiamo finito di configurare il nostro
unrealircd.conf. Salviamo e lanciamo wircd.exe, se
avete seguito tutto alla perfezione vi comparirà
un pannellino di gestione del nostro server.
E' tutto.
ds3
ds3@tuttoirc.net
|