mirror of
https://github.com/unrealircd/unrealircd.git
synced 2026-06-25 14:16:37 +02:00
843 lines
22 KiB
Plaintext
843 lines
22 KiB
Plaintext
/*
|
|
* example.conf por Danial Hawton, alias Osiris (osiris@unrealircd.org).
|
|
* Traducido al castellano por Severus_Snape (javiersnape@gmail.com).
|
|
*
|
|
* Funciona desde Unreal3.2 hacia adelante
|
|
*
|
|
* Ok. Este es el nuevo example.conf. Es muy similar a C++.
|
|
* De todas formas lleva tiempo hacer esto. En un principio, es dificil de comprender pero
|
|
* con un poco de práctica y lectura lo comprenderás.
|
|
*
|
|
* Simplemente copia este archivo al directorio principal de unrealircd y cambiale el nombre a 'unrealircd.conf'.
|
|
*
|
|
* NOTA: Todas las líneas, a excepción de la línea de apertura ( { ) terminan en ;, incluyendo la
|
|
* línea de cierre ( } ). El IRCd ignorará las lineas comentadas.
|
|
*
|
|
* ¡POR FAVOR LEE doc/unreal32docs.es.html! La versión online esta disponible en:
|
|
* www.vulnscan.org/UnrealIRCd/unreal32docs.es.html
|
|
* Contiene mucha información acerca del archivo de configuración: Da información acerca de
|
|
* cada bloque, variable, etc.
|
|
* ¡Si intentas editar este archivo sin leer bien la documentación
|
|
* estas destinado a fallar!
|
|
*/
|
|
|
|
/* Tipos de Comentarios */
|
|
#Comentario tipo 1 (Estilo Shell)
|
|
// Comentario tipo 2 (Estilo C++)
|
|
/* Comentario tipo 3 (Estilo C) */
|
|
#Estas líneas son ignoradas por el IRCd.
|
|
|
|
/*
|
|
* UnrealIRCd soporta módulos, cargar algunos de ellos es requerido.
|
|
* Al menos debes cargar el módulo de los comandos y un módulo de cifrado (cloaking).
|
|
*/
|
|
|
|
/* PARA *NIX, descomenta las siguientes 2 líneas: */
|
|
//loadmodule "src/modules/commands.so";
|
|
//loadmodule "src/modules/cloak.so";
|
|
|
|
/* PARA Windows, descomenta las siguientes 2 líneas: */
|
|
//loadmodule "modules/commands.dll";
|
|
//loadmodule "modules/cloak.dll";
|
|
|
|
/*
|
|
* Además pudes incluir otros archivos de configuración.
|
|
* help.conf contiene todo el contenido de /helpop. Los archivos badwords.*.conf
|
|
* contienen todas las entradas de badwords para el modo +G...
|
|
* spamfilter.conf contiene algunas buenas reglas para los troyanos actuales.
|
|
* Probablemente quieres incluirlos:
|
|
*/
|
|
include "help.conf";
|
|
include "badwords.channel.conf";
|
|
include "badwords.message.conf";
|
|
include "badwords.quit.conf";
|
|
include "spamfilter.conf";
|
|
|
|
/*
|
|
* NUEVO: me {}
|
|
* VIEJO: M:Line
|
|
* me {} define el nombre, la descripción y el número de servidor
|
|
* para este server. La Sintaxis es:
|
|
* me {
|
|
* name "nombre.del.servidor";
|
|
* info "Descripción del Servidor";
|
|
* numeric (número del servidor*);
|
|
* };
|
|
* * = Si estas enlazando este server, el número no debe ser usado por otro server en la red.
|
|
*/
|
|
me
|
|
{
|
|
name "irc.foonet.com";
|
|
info "FooNet Server";
|
|
numeric 1;
|
|
};
|
|
|
|
/*
|
|
* NUEVO: admin {}
|
|
* VIEJO: A:Line
|
|
* /Admin te da la información acerca del administrador del servidor. Tu
|
|
* puedes poner cuantas líneas quieras debajo de admin {.
|
|
* La sintaxis es:
|
|
* admin {
|
|
* "primera línea";
|
|
* "segunda línea";
|
|
* [etc]
|
|
* };
|
|
*/
|
|
admin {
|
|
"Bob Smith";
|
|
"bob";
|
|
"widely@used.name";
|
|
};
|
|
|
|
/*
|
|
* NUEVO: class {}
|
|
* VIEJO: Y:line (old was confusing)
|
|
* Esto define la configuración para las clases. Una clase es una configuración en grupo para las
|
|
* conexiones. Por ejemplo, las conexiones de los servidores, en vez de ir a la clase de los clientes.
|
|
* la diriges a la clase de servidores. La sintaxis es la siguiente:
|
|
* class (nombre de la clase)
|
|
* {
|
|
* pingfreq (que tan seguido pingueara a el servidor/cliente en segundos);
|
|
* maxclients (cuantas conexiones para esta clase);
|
|
* sendq (cola máxima de envios para la conexión);
|
|
* recvq (cola máxima de mensajes recibidos desde la conexión [Control de Flood]);
|
|
* };
|
|
*/
|
|
|
|
class clients
|
|
{
|
|
pingfreq 90;
|
|
maxclients 500;
|
|
sendq 100000;
|
|
recvq 8000;
|
|
};
|
|
|
|
class servers
|
|
{
|
|
pingfreq 90;
|
|
maxclients 10; /* Cantidad máxima de servers que podemos enlazar a la vez */
|
|
sendq 1000000;
|
|
connfreq 100; /* Cuentos segundos entre cada intento de conexión */
|
|
};
|
|
|
|
/*
|
|
* NUEVO: allow {}
|
|
* VIEJO: I:Line
|
|
* Esto define los permisos de las conexiones...
|
|
* Fundamentalmente para los clientes, les permite conectarse así tu puedes tener un poco de
|
|
* control y/o poner una contraseña.
|
|
* La sintaxis es la siguiente:
|
|
* allow {
|
|
* ip (IP/IPs a permitir);
|
|
* hostname (nombre de host);
|
|
* class (clase asignada a esta conexión [ver class {}]);
|
|
* password "(contraseña)"; (opcional)
|
|
* maxperip (cuantas conexiones por IP); (opcional)
|
|
* };
|
|
*/
|
|
|
|
allow {
|
|
ip *@*;
|
|
hostname *@*;
|
|
class clients;
|
|
maxperip 5;
|
|
};
|
|
|
|
/* allow {} con contraseña */
|
|
allow {
|
|
ip *@255.255.255.255;
|
|
hostname *@*.gente.fea.con.clave;
|
|
class clients;
|
|
password "f00Ness";
|
|
maxperip 1;
|
|
};
|
|
|
|
/*
|
|
* NUEVO: allow channel {}
|
|
* VIEJO: chrestrict
|
|
* Permite a un usuario unirse a un canal...
|
|
* como una expeción de deny channel.
|
|
* Sintaxis:
|
|
* allow channel {
|
|
* channel "#nombredelcanal";
|
|
* };
|
|
*/
|
|
allow channel {
|
|
channel "#WarezApestan";
|
|
};
|
|
|
|
/*
|
|
* NUEVO: oper {}
|
|
* VIEJO: O:Line
|
|
* Define a un Operador de IRC
|
|
* Los Operadores de IRC estan para mantener al servidor "sano" y usualmente
|
|
* mantenerlo y tenerlo conectado a la red.
|
|
* La sintaxis es la siguiente:
|
|
* oper (login) {
|
|
* class (clase para ponerlos, si es difirente de la que esta en allow {], los mueve a la nueva clase);
|
|
* from {
|
|
* userhost (ident@host);
|
|
* userhost (ident@host);
|
|
* };
|
|
* flags
|
|
* {
|
|
* (las flags aqui*);
|
|
* };
|
|
* O
|
|
* flags "flags antiguas como, OAaRD";
|
|
* };
|
|
*/
|
|
|
|
|
|
/* Para una lista de banderas de operador, lea doc/unreal32docs.es.html#operblock
|
|
* [lectura ALTAMENTE recomendada]
|
|
*/
|
|
|
|
oper bobsmith {
|
|
class clients;
|
|
from {
|
|
userhost bob@smithco.com;
|
|
};
|
|
password "f00";
|
|
flags
|
|
{
|
|
netadmin;
|
|
can_zline;
|
|
can_gzline;
|
|
can_gkline;
|
|
global;
|
|
};
|
|
};
|
|
|
|
/*
|
|
* NUEVO: listen {}
|
|
* VIEJO: P:Line
|
|
* Esto define el puerto/IP a el que el IRCd debe escuchar y unirse, esto
|
|
* permite a los usuarios/servidores conectarse al servidor.
|
|
* La sintaxis es:
|
|
* listen (Dirección IP):(número de puerto)
|
|
* {
|
|
* options {
|
|
* (opciones aqui);
|
|
* };
|
|
* };
|
|
* o simplemente
|
|
* listen: listen (ip):(puerto);
|
|
*
|
|
* NOTA: para IPs IPv6 (3ffe:b80:2:51d::2, etc.), use listen [ip]:puerto;
|
|
*
|
|
* Eso también funciona.
|
|
*/
|
|
|
|
/* Opciones para listen {}:
|
|
VIEJAS | NUEVAS | SIGNIFICADO
|
|
S serversonly Sólo Servidores
|
|
C clientsonly Sólo Clientes
|
|
J java Sólo Clientes Java
|
|
s ssl Conexion Cifrada (SSL)
|
|
* standard Standard
|
|
*/
|
|
|
|
/* NOTA EN PUERTOS SSL: Los puertos SSL no están estandarizados,
|
|
* muchos puertos SSL estan en números muy altos, algunas personas dicen que deberias hacerlo
|
|
* en el puerto 994 por que ese es el puerto SSL oficial... ¡pero eso
|
|
* requiere acceso root! Además, el puerto 194 es el puerto oficial de IRC... y
|
|
* has visto alguna vez ver un IRCd corriendo en ese puerto? Usan el 6667.
|
|
* Asi que, nuestra sugerencia es que uses el puerto 6697 para SSL, ese puerto es usado por
|
|
* una cantidad de redes decente y es reconozido por ejemplo: por StunTour.
|
|
* Además eres libre de abrir cuantos puertos SSL quieras, pero
|
|
* correr uno en 6697 ayudaría al mundo a estandarizarlo un poco mas :).
|
|
*/
|
|
listen *:6697
|
|
{
|
|
options
|
|
{
|
|
ssl;
|
|
clientsonly;
|
|
};
|
|
};
|
|
|
|
listen *:8067;
|
|
listen *:6667;
|
|
|
|
/* NOTA: Si estas en shell IRCd con multiples IPs, normalmente
|
|
* obtendras un error como 'La dirección ya esta en uso/Address already in use' en tus logs
|
|
* y el IRCd no iniciará. Esto significa que tu DEBES unir el IRCd
|
|
* a una IP específica en vez de '*', por ejemplo:
|
|
* listen 1.2.3.4:6667;
|
|
* Obviamente, reemplaza esa IP con la IP que se te fue asignada.
|
|
*/
|
|
|
|
/*
|
|
* NUEVO: link {}
|
|
* VIEJO: C/N:Lines
|
|
* Esto define los enlazes entre servidores.
|
|
* NOTA: ¡LOS DOS SERVIDORES NECESITAN UN BLOQUE LINK {} PARA ENLAZARSE BIEN!
|
|
* La sintaxis es:
|
|
* link (nombre.del.servidor)
|
|
* {
|
|
* username (nombre de usuario, * también funciona);
|
|
* hostname (dirección IP/máscara de host);
|
|
* bind-ip (A que IP unirse cuando se estan enlazando, o *);
|
|
* port (Puerto al cual conectarse);
|
|
* hub (Si esto es un hub, * funciona.);
|
|
* [o leaf *;]
|
|
* password-connect "(contraseña a enviar)";
|
|
* password-receive "(contraseña que deberiamos)";
|
|
* class (Clase a donde dirigir los servers);
|
|
* options {
|
|
* (las opciones van aqui*);
|
|
* };
|
|
* // Si tu uses SSL, debes escoger que cifrado usar en el modo SSL
|
|
* // Obtiene una lista con "openssl ciphers", separa los métodos de cifrados con ":"
|
|
*
|
|
* ciphers "DES-CBC3-MD5";
|
|
*
|
|
* };
|
|
*/
|
|
|
|
/*
|
|
opciones:
|
|
VIEJAS | NUEVAS | SIGNIFICADO
|
|
S ssl Usar SSL
|
|
Z zip Comprimir los datos enviados.
|
|
N/A autoconnect su servidor intentará conectar automáticamente.
|
|
El tiempo usado entre intentos es el que especificó en class::connfreq
|
|
(se recomienda para un sólo lado, de leaf a hub)
|
|
N/A quarantine Aislar
|
|
N/A nodnscache No usar Caché DNS (Muy útil para DDNS)
|
|
*/
|
|
|
|
|
|
link hub.mynet.com
|
|
{
|
|
username *;
|
|
hostname 1.2.3.4;
|
|
bind-ip *;
|
|
port 7029;
|
|
hub *;
|
|
password-connect "LiNk";
|
|
password-receive "LiNk";
|
|
class servers;
|
|
options {
|
|
/* Nota: No deberias usar autoconnect cuando conectas servicios */
|
|
autoconnect;
|
|
ssl;
|
|
zip;
|
|
};
|
|
};
|
|
/*
|
|
*
|
|
* NUEVO: ulines {}
|
|
* VIEJO: U:Line
|
|
* Las ulines {} le dan a los servidores mas poder/comandos, ¡esto SOLO debe ser usado
|
|
* para los servidores de servicios/estadísticas y NUNCA para servidores UnrealIRCd normales!.
|
|
* (Para un buen funcionamiento, todos los servidores deberían tener los mismos U:Lines)
|
|
* La Sintaxis es la siguiente:
|
|
* ulines {
|
|
* (servidor a ulinear);
|
|
* (servidor a ulinear);
|
|
* [etc]
|
|
* };
|
|
*/
|
|
ulines {
|
|
services.roxnet.org;
|
|
stats.roxnet.org;
|
|
};
|
|
|
|
/*
|
|
* NUEVO: {}
|
|
* VIEJO: X:Line
|
|
* Esto define las contraseñas para /die y /restart.
|
|
* La sintaxis es:
|
|
* drpass {
|
|
* restart "(contraseña para reiniciar)";
|
|
* die "(contraseña para matar al IRCd)";
|
|
* };
|
|
*/
|
|
drpass {
|
|
restart "amo-reiniciar";
|
|
die "muere-inepto";
|
|
};
|
|
|
|
/*
|
|
* NUEVO: log {}
|
|
* VIEJO: N/A
|
|
* Le dice al IRCd donde y que loguear. Puedes tener cuantos tu quieras.
|
|
*
|
|
* FLAGS: errors, kills, tkl, connects, server-connects, oper
|
|
*
|
|
* Sintaxis:
|
|
* log "archivo.log"
|
|
* {
|
|
* flags
|
|
* {
|
|
* flag;
|
|
* flag;
|
|
* etc...
|
|
* };
|
|
* };
|
|
*/
|
|
|
|
log "ircd.log" {
|
|
/* Borra el archivo e inicia uno nuevo cuando logre 2MB, no uses esto para siempre usar el mismo log */
|
|
maxsize 2097152;
|
|
flags {
|
|
oper;
|
|
connects;
|
|
server-connects;
|
|
kills;
|
|
errors;
|
|
sadmin-commands;
|
|
chg-commands;
|
|
oper-override;
|
|
spamfilter;
|
|
};
|
|
};
|
|
|
|
/*
|
|
* NUEVO: alias {}
|
|
* VIEJO: N/A
|
|
* Esto te permite hacer aliases de comandos como /nickserv, /chanserv, etc.
|
|
* FLAGS: services, stats, normal
|
|
*
|
|
* Sintaxis:
|
|
* alias "nombre" {
|
|
* target "apunta a";
|
|
* type aliastype;
|
|
* };
|
|
*
|
|
* [NOTA: Tu también puedes usar un archivo de aliases-predefinidos, lea doc/unreal32docs.es.html sección 2.9]
|
|
*/
|
|
|
|
// Esto apunta el comando a /nickserv a el usuario NickServ el cual esta conectado con el servidor de set::services-server.
|
|
/*alias NickServ {
|
|
target "NickServ";
|
|
type services;
|
|
};*/
|
|
|
|
// Si tu quieres el comando que apunta al el mismo nick que el comando, puedes dejar la entrada "nick" vacia.
|
|
//alias ChanServ { type services; };
|
|
|
|
// Apunta el comando /statserv a el usuario StatServ en el servidor set::stats-server.
|
|
//alias StatServ { type stats; };
|
|
|
|
// Apunta el comando /superbot a el usuario SuperBot
|
|
//alias SuperBot { type normal; };
|
|
|
|
|
|
/* Aliases Standard */
|
|
alias NickServ { type services; };
|
|
alias ChanServ { type services; };
|
|
alias OperServ { type services; };
|
|
alias HelpServ { type services; };
|
|
alias StatServ { type stats; };
|
|
|
|
/*
|
|
* NUEVO: alias {}
|
|
* VIEJO: N/A
|
|
* Esto te permite configurar aliases de comandos como /identify, /services, etc.
|
|
*
|
|
* Sintaxis:
|
|
* alias "nombre" {
|
|
* format "Formato de la Cadena" {
|
|
* target "apunta a";
|
|
* type tipodealias;
|
|
* parameters "parametros a enviar";
|
|
* };
|
|
* type command;
|
|
* };
|
|
*/
|
|
/* Esto es mostrado separadamente por que hasta tiene el mismo nombre que la directiva anterioir as, es muy diferente en sintaxis,
|
|
* pero provee una función muy similar.
|
|
*/
|
|
/*
|
|
alias "identify" {
|
|
format "^#" {
|
|
target "chanserv";
|
|
type services;
|
|
parameters "IDENTIFY %1-";
|
|
};
|
|
format "^[^#]" {
|
|
target "nickserv";
|
|
type services;
|
|
parameters "IDENTIFY %1-";
|
|
};
|
|
type command;
|
|
};
|
|
*/
|
|
/* La directiva alias::format es una expresión regular. El primer formato coincide con el comando /identify cuando
|
|
* el primer carácter es #. Luego pasa esto a ChanServ con los parámetros IDENTIFY
|
|
* %1-. El segundo formato coincide con /identify cuando el primer caracter no es un #. Entonces
|
|
* el comando pasa a nickserv con los parámetros IDENTIFY %1-.
|
|
*/
|
|
|
|
/* El alias::format::parameters es similar a los lenguajes de scripting. %N (donde N es un número) representa el
|
|
* parámetro enviado al comando (en este caso, /identify). Si especificas %N- significa "todos los parámetros desde
|
|
* N hasta el último parámetro en la cadena". También puedes especificar %n que es reemplazado por el nick del usuario.
|
|
*/
|
|
|
|
/* Aliases Standard */
|
|
alias "services" {
|
|
format "^#" {
|
|
target "chanserv";
|
|
type services;
|
|
parameters "%1-";
|
|
};
|
|
format "^[^#]" {
|
|
target "nickserv";
|
|
type services;
|
|
parameters "%1-";
|
|
};
|
|
type command;
|
|
};
|
|
|
|
alias "identify" {
|
|
format "^#" {
|
|
target "chanserv";
|
|
type services;
|
|
parameters "IDENTIFY %1-";
|
|
};
|
|
format "^[^#]" {
|
|
target "nickserv";
|
|
type services;
|
|
parameters "IDENTIFY %1-";
|
|
};
|
|
type command;
|
|
};
|
|
|
|
/* Este es un ejemplo de un alias de comando real */
|
|
/* Esto redirije /GLINEBOT a /GLINE <parámetro> Los Bots 2D... */
|
|
alias "glinebot" {
|
|
format ".+" {
|
|
command "gline";
|
|
type real;
|
|
parameters "%1 Los Bots 2D no están permitidos en este servidor, para mas información lea la faq en http://www.ejemplo.com/faq/123";
|
|
};
|
|
type command;
|
|
};
|
|
|
|
/*
|
|
* NUEVO: files {}
|
|
* VIEJO: include/config.h
|
|
*
|
|
* Este bloque se sobrepone con el dirctorio principal del IRCd para cargar cosas
|
|
* como el MOTD, el PIPfile, o escribir/cargar el tunefile. La
|
|
* existencia de este bloque permite una instalación de UnrealIRCd a
|
|
* soportar múltiples instancias corriendo cuando es combinado con la opción -c
|
|
* en la línea de comandos.
|
|
*
|
|
* Usualmente. Los directorios relativos son interpretados relativamente a el directorio
|
|
* donde UnrealIRCd encuentra unrealircd.conf si -c -no-
|
|
* es especificado en la línea de comandos.
|
|
*/
|
|
files
|
|
{
|
|
/* El Mensaje del Dia (MOTD - Message of the Day) mostrado a los usuarios que se conectan: */
|
|
/* motd ircd.motd; */
|
|
|
|
/*
|
|
* Un MOTD corto. Si el archivo existe, sera mostrado a
|
|
* el usuario en vez del MOTD. Los usuarios todavia podrán ver el
|
|
* MOTD completo usando el comando /MOTD.
|
|
*/
|
|
/* shortmotd ircd.smotd; */
|
|
|
|
/* Mostrado cuando un operador usa /OPER y se loguea exitosamente. */
|
|
/* opermotd oper.motd; */
|
|
|
|
/* El MOTD de los Servicios. */
|
|
/* svsmotd ircd.svsmotd; */
|
|
|
|
/* El MOTD de los Bots */
|
|
/* botmotd bot.motd; */
|
|
|
|
/* Las reglas que se muestran al usar /RULES */
|
|
/* rules ircd.rules; */
|
|
|
|
/*
|
|
* Donde el IRCd guarda y carga algunos parámetros que deberían
|
|
* ser persistentes entre reinicios del servidor. Debe apuntar a un
|
|
* archivo existente el cual el IRCd tiene permiso para alterarlo o un
|
|
* archivo en una carpeta donde el IRCd puede crear archivos.
|
|
*/
|
|
/* tunefile ircd.tune; */
|
|
|
|
/* Donde guardar el PID del IRCd. Debería ser modificable por el IRCd. */
|
|
/* pidfile ircd.pid; */
|
|
};
|
|
|
|
/*
|
|
* NUEVO: tld {}
|
|
* VIEJO: T:Line
|
|
* Esto configura MOTDs y RULES distintos
|
|
* dependiendo en la máscara de host del cliente.
|
|
* La sintaxis es:
|
|
* tld {
|
|
* mask (ident@host);
|
|
* motd "(archivo-motd)";
|
|
* rules "(archivo-rules)";
|
|
* };
|
|
*/
|
|
|
|
tld {
|
|
mask *@*.fr;
|
|
motd "ircd.motd.fr";
|
|
rules "ircd.rules.fr";
|
|
};
|
|
|
|
/* NOTA: tu puedes simplemente borrar el bloque de ejemplo aqui arriba,
|
|
* en ese caso los MOTD/RULES normales (ircd.motd, ircd.rules)
|
|
* serán usados para todos.
|
|
*/
|
|
|
|
/*
|
|
* NUEVO: ban nick {}
|
|
* VIEJO: Q:Line
|
|
* Banea a un nick, así no puede ser usado.
|
|
* La sintaxis es la siguiente:
|
|
* ban nick {
|
|
* mask "(nick a banear)";
|
|
* reason "(rasón)";
|
|
* };
|
|
*/
|
|
ban nick {
|
|
mask "*C*h*a*n*S*e*r*v*";
|
|
reason "Reservado para los Servicios";
|
|
};
|
|
/*
|
|
* NUEVO: ban ip {}
|
|
* VIEJO: Z:Line
|
|
* Banea una IP de conectarse a la red.
|
|
* Sintaxis:
|
|
* ban ip { mask (ip/hostmask); reason "(rasón)"; };
|
|
*/
|
|
ban ip {
|
|
mask 195.86.232.81;
|
|
reason "Servidor delinkeado";
|
|
};
|
|
/*
|
|
* NUEVO: ban server {}
|
|
* VIEJO: Server Q:Line
|
|
* Prohibe a un servidor de conectarse a la red.
|
|
* Si el servidor se linkea a un servidor remoto, el servidor local
|
|
* se desconectará de la red.
|
|
* La sintaxis es la siguiente:
|
|
* ban server {
|
|
* mask "(nombre.del.servidor)";
|
|
* reason "(Rasón)";
|
|
* };
|
|
*/
|
|
|
|
ban server {
|
|
mask eris.berkeley.edu;
|
|
reason "Fuera de aca.";
|
|
};
|
|
/*
|
|
* NUEVO: ban user {}
|
|
* VIEJO: K:Line
|
|
* Esto hace que un usuario con una máscara de host determinada no se pueda conectar
|
|
* a tu servidor.
|
|
* Sintaxis:
|
|
* ban user { mask (hostmask/ip); reason "(rasón)"; };
|
|
*/
|
|
|
|
ban user {
|
|
mask *tirc@*.saturn.bbn.com;
|
|
reason "Idiota";
|
|
};
|
|
|
|
/*
|
|
* NUEVO: ban realname {}
|
|
* VIEJO: n:Line
|
|
* Este bloque banea a un determinado realname (nombre real) de ser usado.
|
|
* Sintaxis:
|
|
* ban realname {
|
|
* mask "(nombre real)";
|
|
* reason "(rasón)";
|
|
* };
|
|
*/
|
|
|
|
ban realname {
|
|
mask "Swat Team";
|
|
reason "mIRKFORCE";
|
|
};
|
|
|
|
ban realname {
|
|
mask "sub7server";
|
|
reason "sub7";
|
|
};
|
|
|
|
/*
|
|
* NOTA PARA TODOS LOS BANS, puedes repetirlos para agregar mas!
|
|
*
|
|
* NUEVO: except ban {}
|
|
* VIEJO: E:Line
|
|
* Eso hace que no puedas ser baneado.
|
|
* Sintaxis:
|
|
* except ban { mask (ident@host); };
|
|
* Repite el except ban {} cuantas veces quieras
|
|
* para diferentes bans.
|
|
*/
|
|
|
|
except ban {
|
|
/* no banees a stskeeps */
|
|
mask *stskeeps@212.*;
|
|
};
|
|
|
|
/*
|
|
* NUEVO: deny dcc {}
|
|
* VIEJO: dccdeny.conf
|
|
* Use este block para denegar DCC SENDs...
|
|
* detiene a los virus mejor.
|
|
* Sintaxis
|
|
* deny dcc
|
|
* {
|
|
* filename "(archivo a bloquear (por ejemplo: *.exe"));
|
|
* reason ("rasón");
|
|
* };
|
|
*/
|
|
deny dcc {
|
|
filename "*sub7*";
|
|
reason "Posiblemente un virus Sub7";
|
|
};
|
|
|
|
/*
|
|
* NUEVO: deny channel {}
|
|
* VIEJO: N/A (NUEVO)
|
|
* Esto bloquea canales de ser creados.
|
|
* Sintaxis:
|
|
* deny channel {
|
|
* channel "(canal)";
|
|
* reason "rasón";
|
|
* };
|
|
*/
|
|
deny channel {
|
|
channel "*warez*";
|
|
reason "El Warez es ilegal";
|
|
};
|
|
|
|
/*
|
|
* NEW: vhost {}
|
|
* OLD: Vhost.conf file
|
|
* Setea una IP para los no-operadores, o
|
|
* para opers muy flojos para hacer /sethost :P
|
|
* Sintaxis:
|
|
* vhost {
|
|
* vhost (vhost.com);
|
|
* from {
|
|
* userhost (ident@host.a.permitir.usar.el.vhost);
|
|
* };
|
|
* login (nombre del login);
|
|
* password (contraseña);
|
|
* };
|
|
* para usar este vhost, usa /vhost (login) (contraseña) en IRC
|
|
*/
|
|
vhost {
|
|
vhost i.hate.microsefrs.com;
|
|
from {
|
|
userhost *@*.image.dk;
|
|
};
|
|
login stskeeps;
|
|
password moocowsrulemyworld;
|
|
};
|
|
|
|
/* Puedes incluir otros archivos de configuración */
|
|
/* include "klines.conf"; */
|
|
|
|
/* Configuración de la red */
|
|
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"; */
|
|
/* Las llaves de cifrado (cloak keys) deberían ser las mismas en toda la red.
|
|
* Son usadas para generar hosts "enmascarados" y mantenerlos secretos.
|
|
* Las llaves deben ser 3 cadenas aleatorias de 5 a 100 carácteres
|
|
* (de 10 a 20 es aceptable también) y deben tener una minúscula (a-z),
|
|
* mayúscula (A-Z) y dígitos (0-9) [mira el ejemplo de la primera llave].
|
|
* CONSEJO: En *NIX puedes ejecutar './unreal gencloak' en tu shell para hacer que
|
|
* Unreal genere tres cadenas aleatorias por ti.
|
|
*/
|
|
cloak-keys {
|
|
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
|
|
"and another one";
|
|
"and another one";
|
|
};
|
|
/* host para los operadores */
|
|
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";
|
|
};
|
|
};
|
|
|
|
/* Configuración específica del servidor */
|
|
|
|
set {
|
|
kline-address "configura.este@email";
|
|
modes-on-connect "+ixw";
|
|
modes-on-oper "+xwgs";
|
|
oper-auto-join "#opers";
|
|
options {
|
|
hide-ulines;
|
|
/* Puedes habilitar el chequeo de ident si quieres*/
|
|
/* identd-check; */
|
|
show-connect-info;
|
|
};
|
|
|
|
maxchannelsperuser 10;
|
|
/* El tiempo mínimo que un usuario debe estar conectado antes de usar un mensaje QUIT,
|
|
* Esto podria detener el spam */
|
|
anti-spam-quit-message-time 10s;
|
|
/* Hace que el mensaje en static-quit se muestr en todos kis quits - significando que
|
|
no se permiten quits personalizados en este servidor */
|
|
/* static-quit "El Cliente se desconectó"; */
|
|
|
|
/* También puedes bloquear todas las razones de part, descomentando el siguiente comentario y poniendo 'yes',
|
|
* o especificar otro mensaje (ejemplo: "¡Adiós!") para usar siempre como razón. */
|
|
/* static-part yes; */
|
|
|
|
/* Esto permite que pudas hacer algunos comandos de /stats solo para uso de los operadores, use * para ocultar todos los stats,
|
|
* dejelo en blanco para permitir a los usuarios ver todos los /stats. Escriba '/stats' para una lista completa.
|
|
* Algunos administradores querrán remover los stats "kGs" para prohibir a los usuarios normales ver los
|
|
* klines, glines y shuns.
|
|
*/
|
|
oper-only-stats "okfGsMRUEelLCXzdD";
|
|
|
|
/* Regulación de Conexiones: este ejemplo setea un límite de 3 intentos de conexión cada 60 segundos (por host). */
|
|
throttle {
|
|
connections 3;
|
|
period 60s;
|
|
};
|
|
|
|
/* Protección anti-flood */
|
|
anti-flood {
|
|
nick-flood 3:60; /* 3 cambios de nick por cada 60 segunos (por defecto) */
|
|
};
|
|
|
|
/* Filtro de Spam */
|
|
spamfilter {
|
|
ban-time 1d; /* duración de un *line puesto por spamfilter (filtro de spam) */
|
|
ban-reason "Spam/Publicidad"; /* razón */
|
|
virus-help-channel "#help"; /* canal para usar para la acción "viruchan" */
|
|
/* exceptuar "#help"; el canal "#help" esta libre de filtro */
|
|
};
|
|
};
|
|
|
|
/*
|
|
* Problemas o necesitas mas ayuda?
|
|
* 1) www.vulnscan.org/UnrealIRCd/unreal32docs.es.html
|
|
* 2) www.vulnscan.org/UnrealIRCd/faq/ (en inglés)<- ¡contiene el 80% de tus preguntas!
|
|
* 3) Si sigues teniendo problemas, ve a irc.unrealircd.org #unreal-support,
|
|
* ¡nótese que NECESITAMOS que leas la DOCUMENTACIÓN y la FAQ antes de preguntarnos!
|
|
*/
|