Bajar un ejemplo de la configuración de un unrealircd.conf [Click aquí]
Explicación rápida un fichero de configuración.
me {
name "irc.shell-mx.net";
info "Shell-Mx IRC Server";
numeric 1;
};
Aquí definimos el nombre del servidor y la información. numeric 1 indica el número de servidor (1-254);
cuando tengamos dos o más servidores linkados no pueden tener igual número.
admin {
"qdeck";
"admin@irc.shell-mx.net";
};
Aquí ponemos nuestra información, la información del administrador del ircd. Se puede ver tecleando
el comando /admin. Es el equivalente a las A lines de otros ircds.
class clients
{
pingfreq 90;
maxclients 500;
sendq 100000;
};
En esta seccion definimos la clase clients; en ella la frecuencia a la que se comprobará
si el usuario sigue "vivo" (pingfreq), el máximo de clientes que aceptamos (maxclients)
y sendq, que es el límite de información enviada por el usuario de esta clase.
class servers
{
pingfreq 90;
maxclients 4;
sendq 1000000;
};
Aquí hemos definido una nueva clase: servers. La frecuencia de ping será 90,
máximo 4 servidores linkados a nosotros y 1000000 de límite de envio.
allow {
ip *;
hostname *;
class clients;
maxperip 2;
};
Con esta línea aceptamos conexiones de clientes desde cualquier IP (*),
cualquier hostname (*) y con un máximo de dos conexiones por IP (clones).
allow {
ip *;
hostname *@dsl-216-201-155-10.prodigy.net.mx;
class clients;
maxperip 10;
};
Con esto permitimos 10 clones desde el host dsl-216-201-155-10.prodigy.net.mx.
oper mem0x {
class clients;
from {
userhost *@256.125.125.1;
};
password "aAtCDSu1zCb4k";
flags
{
netadmin;
global;
};
};
Aquí definimos los operadores de red que habrá en nuestra red: definimos operador mem0x que se conecta
desde la IP 256.125.125.1, será admnistrador de red (netadmin). El password no es aAtCDSu1zCb4k, está
encriptado. Para generar passwords encriptados entraremos en el directorio crypt de Unreal3.2, y a
continuación haremos un make, se generará la utilidad mkpasswd; con ella podemos generar los passwords
encriptados. Nota: si quisieramos que zug fuese solamente ircop, sustituiríamos netadmin por ircop en
la seccion flags. Aquí incluyo la lista completa de flags, sacada del fichero unrealircd.conf.txt
incluido en UnrealIRCD:
Old | New |Description
------- |---------------- |------------------------------
N | netadmin | Network Admnistrator
T | techadmin | Technical Administrator
A | admin | Server Administrator
a | sadmin | Services Operator
C | coadmin | Co Administrator
o | local | Local IRC Operator
O | global | Global IRC Operator
r | can_rehash | Is able to rehash the server
e | eyes | Can use the eyes message mode
D | can_die | Can shutdown the server (with password)
R | can_restart | Can restart the server (with password)
h | helpop | ..is available for help. Can see /helpops
g | can_globops | Can use /globops
w | can_wallops | Can use /wallops
l | locop | Can't kill remote users
c | can_localroute | Can locally /connect and /squit servers
L | can_globalroute | Can globally /connect and /squit servers
k | can_localkill | Can do local /kills
K | can_globalkill | Can do global /kills
b | can_kline | Can set a /kline
B | can_unkline | Can unset a /kline
n | can_localnotice | Can send local notices
G | can_globalnotice| Can send global notices
z | can_zline | Can set /zlines
^ | can_stealth | Is invisible to /names
Para hacernos operador, ejecutaríamos /oper usuario clave. Una vez que somos operadores,
podemos releer la configuración de unreal sin tener que matar el proceso e iniciarlo de nuevo, con un simple /rehash.
listen *:6600;
listen *:6667;
listen *:8888;
Aquí decimos a través de qué puertos se podrá conectar a nuestro servidor.
He definido el puerto 6600 para linkar con los servicios (chanserv, nickserv, memoserv...),
el puerto 6667 que es el más habitual y el 8888, para que se pueda entrar desde sitios donde
capturan conexiones al puerto 6667, por ejemplo Universidades ó Tecnológicos.
link servicios.shell-mx.net {
username *;
hostname *;
bind-ip *;
port 6600;
hub *;
password-connect "servpass";
password-receive "servpass";
class servers;
options { autoconnect; };
};
Este bloque es opcional, solamente si vas a añadir services a tu servidor.
Aquí definimos el nombre de los services: servicios.shell-mx.net, en el puerto 6600
(el que reservamos para estos). El password de conexion y recepción será el mismo, en este caso servpass.
link panama.shell-mx.net {
username *;
hostname 66.90.115.115;
bind-ip *;
port 6667;
password-connect "clavedelink";
password-receive "clavedelink";
class servers;
options { autoconnect; };
};
Esta sección es también opcional, solamente si vas a linkar varios servidores.
En este caso linkaremos con el servidor panama.shell-mx.net, con IP 66.90.115.115, por el puerto 6667 y
con la clave clavedelink. Ten en cuenta que la configuración del servidor panama.shell-mx.net debe tener numeric 2,
ya que el numeric de braindead es 1, y no pueden ser iguales. Debes tener tambien a tener en cuenta que,
si tienes services puestos, en panama.shell-mx.net no debes añadir el link a los servicios, solamente la linea
ulines que comentamos más abajo.
ulines {
servicios.shell-mx.net;
};
Debemos incluir esta línea para que los services funcionen, en este caso son servicios.shell-mx.net.
drpass {
restart "restartpass";
die "diepass";
};
Aquí ponemos los passwords de reinicio y "muerte" del servidor.
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Reserved for Services";
};
Con esta línea reservamos los nicks que contengan chan para los services.
ban user { mask *PhAnATiC*@*; reason "scripts no permitidos"; };
ban user { mask *ircap*@*; reason "scripts no permitidos"; };
ban user { mask *DTP*@*; reason "scripts no permitidos"; };
ban user { mask *x-cript*@*; reason "scripts no permitidos"; };
ban user { mask *MESIAS*@*; reason "scripts no permitidos"; };
ban user { mask *orbital*@*; reason "scripts no permitidos"; };
ban user { mask *zombie*@*; reason "scripts no permitidos"; };
Esto también es opcional, es un ejemplo de como banear los malditos scripts que abundan por todas las redes.
vhost {
vhost my.sample.vhost;
from {
userhost *@*;
};
login user;
password password;
};
Con esto definimos un vhost, con user "user" y password "password",
disponible para cualquier usuario. Para usarlo sería: /vhost user password
set {
network-name "irc.fromdahell.org";
default-server "braindead.fromdahell.org";
services-server "servicez.fromdahell.org";
stats-server "statz.fromdahell";
help-channel "#fromdahell";
hiddenhost-prefix "fromdahell";
prefix-quit "";
cloak-keys {
10000;
20000;
30000;
};
/* on-oper host */
hosts {
local "locop.fromdahell.org";
global "ircop.fromdahell.org";
coadmin "coadmin.fromdahell.org";
admin "admin.fromdahell.org";
servicesadmin "csops.fromdahell.org";
techadmin "techadmin.fromdahell.org";
netadmin "netadmin.fromdahell.org";
host-on-oper-up "yes";
};
};
set {
kline-address "zug@fromdahell.org";
modes-on-connect "+xwG";
oper-auto-join "#opers";
dns {
nameserver 127.0.0.1;
timeout 2s;
retries 2s;
};
options {
enable-opermotd;
enable-chatops;
hide-ulines;
webtv-support;
identd-check;
};
socks {
ban-message "Insecure SOCKS server";
quit-message "Insecure SOCKS server";
ban-time "4d";
};
maxchannelsperuser 10;
};
Aquí definimos la información de la red.
loadmodule "src/modules/m_sethost.so";
loadmodule "src/modules/commands.so";
Y finalmente cargamos los modulos m_sethost y commands; el primero de ellos para que un operador
se pueda poner el vhost que quiera sin tener que modificar la configuración
mediante /sethost my.virtual.host; el segundo añade una serie de comandos como /who.
Finalmente es todo.
Elaborado Por: Jorge Inda (qdeck)
Para mayor información entre a la sección de USUARIOS en la mesa de soporte.
|