mirror of
https://github.com/unrealircd/unrealircd.git
synced 2026-06-24 21:46:37 +02:00
7c42c025dd
- Update example config for pending commands.so removal. (r0cb592422175) - Implement support for TCP_DEFER_ACCEPT (synflood-hardening). (#4096) (r2ea87de39063) - remove global flag from oper block as it is implied by netadmin. (#4092) (r491e69c8ede6)
871 lines
23 KiB
Plaintext
871 lines
23 KiB
Plaintext
/*
|
|
* example.conf par Daniel Hawton AKA Osiris (osiris@unrealircd.org).
|
|
* Ancien traducteur français : babass
|
|
* Tradution française : Alef Burzmali - http://www.burzmali.com
|
|
* Dernière mise à jour : 2010-09-11
|
|
* $Id$
|
|
*
|
|
* Fonctionne pour Unreal3.2 et supérieur
|
|
*
|
|
* Okay les gars, voici la nouvelle version de l'example.conf. Cela ressemble plus à du C++.
|
|
* Peu importe, il est temps de se lancer. Il est difficile de l'attaquer pour la première fois, mais
|
|
* avec un peu d'expérience et de lecture vous comprendrez.
|
|
*
|
|
* Copiez juste ce fichier dans votre répertoire unrealircd principal et appellez le 'unrealircd.conf'.
|
|
*
|
|
* NOTE: Toutes les lignes, exceptées les ligne d'ouvertures { , se terminent par un ;, en particulier
|
|
* celles de fermeture }.
|
|
* L'IRCd ignorera les lignes commentées.
|
|
*
|
|
* LISEZ S'IL VOUS PLAIT doc/unreal32docs.fr.html !
|
|
* La version en ligne est aussi disponible à : http://www.unrealircd.com/files/docs/unreal32docs.fr.html
|
|
* Elle contient beaucoup d'informations à propos du fichier de configuration : fournit des informations
|
|
* à propos de chaque bloc, variable, etc..
|
|
* Si vous essayez de modifier ce fichier sans avoir bien lu la documentation,
|
|
* vous êtes presque sûr de vous tromper.
|
|
*/
|
|
|
|
/* Type de commentaires */
|
|
#Commentaire type 1 (type Shell)
|
|
// Commentaire type 2 (style C++)
|
|
/* Commentaire type 3 (style C) */
|
|
# Toutes ces lignes sont ignorées par l'ircd.
|
|
|
|
/*
|
|
* UnrealIRCd supporte des modules et certains sont obligatoires.
|
|
* Vous aurez besoin au moins du module commands et du module cloaking.
|
|
*
|
|
* La ligne suivante charge tous les modules sur les systèmes UNIX.
|
|
*/
|
|
loadmodule "src/modules/*.so";
|
|
|
|
/* Cette ligne charge tous les modules pour Windows, commentez la ligne du dessus */
|
|
loadmodule "modules/*.dll";
|
|
|
|
/*
|
|
* Vous pouvez également inclure d'autres fichiers de configuration.
|
|
* doc/help.fr.conf contient tout le texte de /helpop en français.
|
|
* help.conf contient la version anglaise.
|
|
* Les fichiers badwords.*.conf contiennent tous les badwords pour le mode +G...
|
|
* spamfilter.conf contient quelques bonnes règles pour les trojans courrants.
|
|
* Vous voudrez probablement les inclure:
|
|
*/
|
|
include "doc/help.fr.conf";
|
|
include "badwords.channel.conf";
|
|
include "badwords.message.conf";
|
|
include "badwords.quit.conf";
|
|
include "spamfilter.conf";
|
|
|
|
/*
|
|
* ACTUEL : me {}
|
|
* ANCIEN : M:Line
|
|
* me {} definit le nom, la description et l'identifiant numérique pour ce serveur.
|
|
* La syntaxe est la suivante :
|
|
* me {
|
|
* name "nom.du.serveur";
|
|
* info "Description du Serveur";
|
|
* numeric (numeric* serveur);
|
|
* };
|
|
* En cas de link, cet identifiant ne peut être utilisé pour aucun autre serveur du réseau.
|
|
*/
|
|
me
|
|
{
|
|
name "irc.foonet.com";
|
|
info "FooNet Server";
|
|
numeric 1;
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : admin {}
|
|
* ANCIEN : A:Line
|
|
* Admin donne des informations sur les server admins.
|
|
* Vous pouvez mettre autant de lignes que vous voulez après admin {.
|
|
* La syntaxe est la suivante :
|
|
* admin {
|
|
* "première ligne";
|
|
* "deuxième ligne";
|
|
* [etc]
|
|
* };
|
|
*/
|
|
admin {
|
|
"Bob Smith";
|
|
"bob";
|
|
"widely@used.name";
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : class {}
|
|
* ANCIEN : Y:line (l'ancien était déroutant)
|
|
* Définit les réglages pour les classes. Une classe est un groupe de réglages pour
|
|
* des connexions. Par exemple, pour les connexions serveurs, au lieu de passer par une classe
|
|
* client, vous utilisez directement une classe serveur. La syntaxe est la suivante :
|
|
* class (nom de la classe)
|
|
* {
|
|
* pingfreq (fréquence des pings utilisateurs/serveurs en secondes);
|
|
* maxclients (combien de connexions pour cette classe);
|
|
* sendq (file d'attente maximum pour l'envoie depuis une connexion);
|
|
* recvq (file d'attente maximum pour la réception depuis une connexion [contrôle du flood]);
|
|
* };
|
|
*/
|
|
|
|
class clients
|
|
{
|
|
pingfreq 90;
|
|
maxclients 500;
|
|
sendq 100000;
|
|
recvq 8000;
|
|
};
|
|
|
|
class servers
|
|
{
|
|
pingfreq 90;
|
|
maxclients 10; /* Nombre maximum de serveurs pouvant être reliés en même temps */
|
|
sendq 1000000;
|
|
connfreq 100; /* Combien de secondes entre chaque tentatives de connexions */
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : allow {}
|
|
* ANCIEN : I:Line
|
|
* Définit les autorisations de connexions...
|
|
* Principalement pour les clients, cela leur permet de se connecter, vous pouvez donc avoir un certain
|
|
* contrôle et/ou mettre un mot de passe.
|
|
* La syntaxe est la suivante :
|
|
* allow {
|
|
* ip (ip mask à autoriser);
|
|
* hostname (host mask);
|
|
* class (classe à laquelle les renvoyer [voir class {}]);
|
|
* password "(mot de passe)"; (optionnel)
|
|
* maxperip (nombre de connexions par ip); (optionnel)
|
|
* };
|
|
*/
|
|
|
|
allow {
|
|
ip *@*;
|
|
hostname *@*;
|
|
class clients;
|
|
maxperip 5;
|
|
};
|
|
|
|
/* connexion autorisée avec mot de passe */
|
|
allow {
|
|
ip *@255.255.255.255;
|
|
hostname *@*.passworded.ugly.people;
|
|
class clients;
|
|
password "f00Ness";
|
|
maxperip 1;
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : oper {}
|
|
* ANCIEN : O:Line
|
|
* Définit un IRC Operateur
|
|
* Les IRC operateurs sont là pour préserver la qualité du serveur mais aussi d'en assurer
|
|
* la maintenance et sa connexion au réseau.
|
|
* La syntaxe est la suivante :
|
|
* oper (login) {
|
|
* class (classe à laquelle les associer, si différent du bloc allow, les déplace vers une nouvelle classe);
|
|
* from {
|
|
* userhost (ident@host);
|
|
* userhost (ident@host);
|
|
* };
|
|
* flags
|
|
* {
|
|
* (flags ici*);
|
|
* };
|
|
* OU
|
|
* flags "ancien type de flags, comme OAaRD";
|
|
* };
|
|
*/
|
|
|
|
|
|
/* Pour avoir la liste des flags oper, voir doc/unreal32docs.fr.html#operblock
|
|
* [lecture HAUTEMENT recommendée]
|
|
*/
|
|
|
|
oper bobsmith {
|
|
class clients;
|
|
from {
|
|
userhost bob@smithco.com;
|
|
};
|
|
password "f00";
|
|
flags
|
|
{
|
|
netadmin;
|
|
can_zline;
|
|
can_gzline;
|
|
can_gkline;
|
|
};
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : listen {}
|
|
* ANCIEN : P:Line
|
|
* Définit un port à rattacher à l'ircd, pour autoriser
|
|
* des utilisateurs/serveurs à se connecter au serveur.
|
|
* La syntaxe est la suivante :
|
|
* listen (ip):(port)
|
|
* {
|
|
* options {
|
|
* (options ici);
|
|
* };
|
|
* };
|
|
* ou pour une écoute
|
|
* indifférente : listen (ip):(port);
|
|
*
|
|
* NOTICE : pour les ips ipv6 (3ffe:b80:2:51d::2 etc), utilisez listen [ip]:port;
|
|
*
|
|
* Cela fonctionne également.
|
|
*/
|
|
|
|
/* Options de listen:
|
|
ANCIEN | ACTUEL
|
|
S serversonly
|
|
C clientsonly
|
|
J java
|
|
s ssl
|
|
* standard
|
|
N/A defer-accept
|
|
*/
|
|
|
|
/* NOTE SUR LES PORTS SSL: les ports SSL sont plutôt non standardisés,
|
|
* A côté des nombreux ports high-SSL, certaines personnes disent que vous devez
|
|
* l'utiliser sur le port 994 car c'est le port SSL officiel.. mais cela
|
|
* requière d'être root! D'un autre coté, le port 194 est le port irc officiel et
|
|
* avez vous déjà vu un ircd fonctionner sur celui-ci ?
|
|
* Donc, notre suggestion est d'utiliser le port 6697 pour le SSL, ceci est utilisé par
|
|
* beaucoup de réseaux et est reconnu par exemple par StunTour.
|
|
* Vous êtes libre d'ouvrir autant de ports SSL que vous le désirez mais
|
|
* en utilisant (au moins) 6697 vous aidez le monde à se standardiser un peu ;).
|
|
*/
|
|
listen *:6697
|
|
{
|
|
options
|
|
{
|
|
ssl;
|
|
clientsonly;
|
|
defer-accept;
|
|
};
|
|
};
|
|
|
|
listen *:8067;
|
|
listen *:6667
|
|
{
|
|
options
|
|
{
|
|
defer-accept;
|
|
}
|
|
};
|
|
|
|
|
|
/* NOTE: Si vous êtes sur un shell avec de multiples IP vous êtes
|
|
* susceptibles d'avoir l'erreur 'Address already in use' (adresse déjà utilisée)
|
|
* dans vos logs et l'ircd refusera de démarer.
|
|
* Cela signifie que vous devrez utiliser une IP spécifique au lieu de '*',
|
|
* Donc par exemple :
|
|
* listen 1.2.3.4:6667;
|
|
* Evidemment, remplacez l'IP par celle qui vous a été assignée.
|
|
*
|
|
* De plus : l'option defer-accept ajoutée dans Unreal 3.4 utilise un filtre
|
|
* au niveau du kernel pour décharger le traitement des connexions
|
|
* de l'IRCd, ce qui peut fournir plus de résilience contre les
|
|
* TCP synfloods. Cependant, cette option fonctionne uniquement
|
|
* sous Linux et FreeBSD.
|
|
*/
|
|
|
|
/*
|
|
* ACTUEL : link {}
|
|
* ANCIEN : C/N:Lines
|
|
* Définit un accord pour la connexion d'un serveur.
|
|
* NOTE : CHACUN DES SERVEURS NECESSITE UN PARAMETRE LINK {} POUR SE CONNECTER CORRECTEMENT !
|
|
* La syntaxe est la suivante :
|
|
* link (nom du serveur)
|
|
* {
|
|
* username (username, * fonctionne aussi);
|
|
* hostname (ip/hostmask);
|
|
* bind-ip (IP à laquelle se relier lors de la connexion, ou *);
|
|
* port (port auquel se connecter, si il y en a un);
|
|
* hub (Si c'est un a hub, * fonctionne, ou les servermasks qu'il doit porter);
|
|
* [ou leaf *;]
|
|
* password-connect "(mot de passe à envoyer)";
|
|
* password-receive "(mot de passe que l'on doit recevoir)";
|
|
* class (classe à affecter aux serveurs);
|
|
* options {
|
|
* (options ici*);
|
|
* };
|
|
* // Si vous utilisez le SSL, vous pouvez choisir quel algorithme de hash utiliser dans le mode SSL
|
|
* // Utilisez la commande "openssl ciphers" pour obtenir la liste des algorithmes disponibles, séparez les par des ":"
|
|
*
|
|
* ciphers "DES-CBC3-MD5";
|
|
*
|
|
* };
|
|
*/
|
|
|
|
/*
|
|
options:
|
|
ANCIEN | ACTUEL
|
|
S ssl
|
|
Z zip
|
|
N/A autoconnect
|
|
N/A quarantine
|
|
N/A nodnscache
|
|
*/
|
|
|
|
|
|
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 : Vous ne devriez pas utiliser autoconnect lorsque vous linkez des services */
|
|
autoconnect;
|
|
ssl;
|
|
zip;
|
|
};
|
|
};
|
|
/*
|
|
*
|
|
* ACTUEL : ulines {}
|
|
* ANCIEN : U:Line
|
|
* Les U-lines donnent aux serveurs plus de pouvoir/commandes, ceci doit UNIQUEMENT être appliqué
|
|
* aux serveurs de services/stats et JAMAIS pour des serveurs UnrealIRCd normaux !
|
|
* La syntaxe est la suivante :
|
|
* ulines {
|
|
* (serveur auquel appliquer la uline);
|
|
* (serveur auquel appliquer la uline);
|
|
* [etc]
|
|
* };
|
|
*/
|
|
ulines {
|
|
services.roxnet.org;
|
|
stats.roxnet.org;
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : drpass {}
|
|
* ANCIEN : X:Line
|
|
* Défini les mots de passe pour les commandes /die et /restart.
|
|
* La syntaxe est la suivante :
|
|
* drpass {
|
|
* restart "(mot de passe pour relancer)";
|
|
* die "(mot de passe pour arrêter)";
|
|
* };
|
|
*/
|
|
drpass {
|
|
restart "I-love-to-restart";
|
|
die "die-you-stupid";
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : log {}
|
|
* ANCIEN : N/A
|
|
* Dit à l'ircd où et quoi loguer. Vous pouvez en avoir
|
|
* autant que vous le souhaitez.
|
|
*
|
|
* FLAGS : errors, kills, tkl, connects, server-connects, oper
|
|
*
|
|
* Syntaxe :
|
|
* log "fichier de log"
|
|
* {
|
|
* flags
|
|
* {
|
|
* flag;
|
|
* flag;
|
|
* etc..
|
|
* };
|
|
* };
|
|
*/
|
|
|
|
log "ircd.log" {
|
|
/* Efface le fichier de log et commence un nouveau lorsqu'il dépasse 2MB,
|
|
retirez ceci pour toujour utiliser le même fichier de log */
|
|
maxsize 2097152;
|
|
flags {
|
|
oper;
|
|
connects;
|
|
server-connects;
|
|
kills;
|
|
errors;
|
|
sadmin-commands;
|
|
chg-commands;
|
|
oper-override;
|
|
spamfilter;
|
|
};
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : alias {}
|
|
* ANCIEN : N/A
|
|
* Ceci vous permet de définir des alias pour les commandes telles que /nickserv, /chanserv etc
|
|
* FLAGS: services, stats, normal
|
|
*
|
|
* Syntaxe :
|
|
* alias "nom" {
|
|
* target "pointe vers";
|
|
* type typedalias;
|
|
* };
|
|
*
|
|
* [NOTE : Vous pouvez également inclure un fichier d'alias prédéfinis ici, voir
|
|
* doc/unreal32docs.fr.html section 2.9]
|
|
*/
|
|
|
|
// Ceci fait pointer la commande /nickserv vers l'utilisateur NickServ qui est connecté au serveur set::services-server
|
|
/*alias NickServ {
|
|
target "NickServ";
|
|
type services;
|
|
};*/
|
|
|
|
// Si vous voulez que la commande pointe vers le même nom que la commande, vous pouvez ignorez l'entré du nom
|
|
//alias ChanServ { type services; };
|
|
|
|
// Faire pointer la commande /statserv vers l'utilisateur StatServ sur le serveur set::stats-name
|
|
//alias StatServ { type stats; };
|
|
|
|
// Faire pointer la commande /superbot vers l'utilisateur SuperBot
|
|
//alias SuperBot { type normal; };
|
|
|
|
|
|
/* Alias Standards */
|
|
alias NickServ { type services; };
|
|
alias ChanServ { type services; };
|
|
alias OperServ { type services; };
|
|
alias HelpServ { type services; };
|
|
alias StatServ { type stats; };
|
|
|
|
/*
|
|
* ACTUEL : alias {}
|
|
* ANCIEN : N/A
|
|
* Ceci vous permet de définir des alias pour les commandes telles que /identify, /services, etc
|
|
*
|
|
* Syntaxe :
|
|
* alias "nom" {
|
|
* format "format string" {
|
|
* target "pointer vers";
|
|
* type typedalias;
|
|
* parameters "paramètres à envoyer";
|
|
* };
|
|
* type command;
|
|
* };
|
|
*/
|
|
/* Ceci est expliqué séparément car même si elle a le même nom que la directive précédente, elle est très
|
|
* différente dans sa syntaxe, bien qu'elle a une fonction similaire et dépend des alias standards pour
|
|
* fonctionner.
|
|
*/
|
|
/*
|
|
alias "identify" {
|
|
format "^#" {
|
|
target "chanserv";
|
|
type services;
|
|
parameters "IDENTIFY %1-";
|
|
};
|
|
format "^[^#]" {
|
|
target "nickserv";
|
|
type services;
|
|
parameters "IDENTIFY %1-";
|
|
};
|
|
type command;
|
|
};
|
|
*/
|
|
/* La directive alias::format est une expression régulière. Le premier format correspond à la commande
|
|
* /identify command lorsque le premier caractère est un #. Cela renvoit donc à l'alias chanserv avec
|
|
* les paramètres IDENTIFY %1-. Le second format correspond à la commande /identify lorsque le premier
|
|
* caractère n'est pas un #. Cela envoie alors la commande à l'alias nickserv avec les paramètres
|
|
* IDENTIFY %1-.
|
|
*/
|
|
|
|
/* L'alias::format::parameters est similaire aux languages de programmation. %N (où N est un nombre)
|
|
* représente un paramètre envoyé à la commande (dans ce cas /identify). Si vous spécifiez %N- cela
|
|
* signifie que tous les paramètres depuis N jusqu'au dernier paramètre dans la chaîne de caractères.
|
|
* Vous pouvez également spécifier %n qui est remplacé par le pseudo de l'utilisateur.
|
|
*/
|
|
|
|
/* Alias Standards */
|
|
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;
|
|
};
|
|
|
|
/* Ceci est un exemple de véritable alias de commande*/
|
|
/* Ceci renvoye /GLINEBOT à /GLINE <parameter> 2d etc... */
|
|
alias "glinebot" {
|
|
format ".+" {
|
|
command "gline";
|
|
type real;
|
|
parameters "%1 2d Les bots ne sont pas permis sur ce serveur, lisez s'il-vous-plait la faq sur http://www.example.com/faq/123";
|
|
};
|
|
type command;
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : files {}
|
|
* ANCIEN : include/config.h
|
|
*
|
|
* Ce bloc écrase les chemins utilisés par défaut par l'IRCd pour charger des choses
|
|
* comme le MOTD, enregistrer son PID ou écrire ou lire son fichier de sauvegarde (tunefile).
|
|
* L'existence de ce bloc permet à une installation de UnrealIRCd de supporter
|
|
* plusieurs instances tournant simultanément lorsque combinée à l'option de ligne
|
|
* de commande -c
|
|
*
|
|
* Comme d'habitude, les chemins relatifs sont interprétés à partir du répertoire
|
|
* dans lequel UnrealIRCd trouverait unrealircd.conf si -c N'est PAS spécifiée
|
|
* sur la ligne de commande.
|
|
*/
|
|
files
|
|
{
|
|
/* Le message du jour (Message Of The Day) affiché aux utilisateurs se connectant : */
|
|
/* motd ircd.motd; */
|
|
|
|
/*
|
|
* Un MOTD court. Si ce fichier existe, il sera affiché aux
|
|
* utilisateurs à la place du MOTD. Ceux-ci peuvent toujours voir
|
|
* le MOTD complet en utilisant la commande /MOTD
|
|
*/
|
|
/* shortmotd ircd.smotd; */
|
|
|
|
/* Affiché lorsqu'un opérateur utilise /OPER */
|
|
/* opermotd oper.motd; */
|
|
|
|
/* MOTD des services. */
|
|
/* svsmotd ircd.svsmotd; */
|
|
|
|
/* MOTD des bots */
|
|
/* botmotd bot.motd; */
|
|
|
|
/* Affiché par la commande /RULES */
|
|
/* rules ircd.rules; */
|
|
|
|
/*
|
|
* Fichier dans lequel l'IRCd sauvegarde et charge quelques valeurs qui devraient
|
|
* être conservées malgré les redémarrages du serveur. Doit pointer vers un fichier
|
|
* existant que l'IRCd peut modifier ou vers un fichier dans un dossier dans
|
|
* lequel l'IRCd peut créer des fichiers.
|
|
*/
|
|
/* tunefile ircd.tune; */
|
|
|
|
/* Fichier dans lequel l'IRCd stocke son pid. L'IRCd doit pouvoir le modifier. */
|
|
/* pidfile ircd.pid; */
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : tld {}
|
|
* ANCIEN : T:Line
|
|
* Ceci applique un MOTD et des fichiers de règles différents
|
|
* en fonction de l'hostmask des clients.
|
|
* La syntaxe est la suivante :
|
|
* tld {
|
|
* mask (ident@host);
|
|
* motd "(motd file)";
|
|
* rules "(rules file)";
|
|
* };
|
|
*/
|
|
|
|
tld {
|
|
mask *@*.fr;
|
|
motd "ircd.motd.fr";
|
|
rules "ircd.rules.fr";
|
|
};
|
|
|
|
/* Note : vous pouvez juste effacer le bloc d'exemple ci-dessus,
|
|
* auquel cas les fichiers motd/règles par défaut (ircd.motd, ircd.rules)
|
|
* seront utilisés pour tout le monde.
|
|
*/
|
|
|
|
/*
|
|
* ACTUEL : ban nick {}
|
|
* ANCIEN : Q:Line
|
|
* Bannit un pseudo, il ne peut donc être utilisé.
|
|
* La syntaxe est la suivante :
|
|
* ban nick {
|
|
* mask "(pseudo à bannir)";
|
|
* reason "(raison)";
|
|
* };
|
|
*/
|
|
ban nick {
|
|
mask "*C*h*a*n*S*e*r*v*";
|
|
reason "Reservé aux Services";
|
|
};
|
|
/*
|
|
* ACTUEL : ban ip {}
|
|
* ANCIEN : Z:Line
|
|
* Empêche une ip de se connecter au réseau.
|
|
* Syntaxe :
|
|
* ban ip { mask (ip/hostmask); reason "(raison)"; };
|
|
*/
|
|
ban ip {
|
|
mask 195.86.232.81;
|
|
reason "Serveur délinké";
|
|
};
|
|
/*
|
|
* ACTUEL : ban server {}
|
|
* ANCIEN : Server Q:Line
|
|
* Empêche un serveur de se connecter au réseau.
|
|
* Si le serveur est linké à un serveur distant, le serveur local
|
|
* sera déconnecté du réseau.
|
|
* La syntaxe est la suivante :
|
|
* ban server {
|
|
* mask "(nom du serveur)";
|
|
* reason "(raison à donner)";
|
|
* };
|
|
*/
|
|
|
|
ban server {
|
|
mask eris.berkeley.edu;
|
|
reason "Va-t-en d'ici.";
|
|
};
|
|
/*
|
|
* ACTUEL : ban user {}
|
|
* ANCIEN : K:Line
|
|
* Fait qu'un utilisateur avec un certain masque ne peut se connecter
|
|
* à votre serveur.
|
|
* Syntaxe :
|
|
* ban user { mask (hostmask/ip); reason "(raison)"; };
|
|
*/
|
|
|
|
ban user {
|
|
mask *tirc@*.saturn.bbn.com;
|
|
reason "Idiot";
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : ban realname {}
|
|
* ANCIEN : n:Line
|
|
* Ceci empêche un certain realname d'être utilisé.
|
|
* Syntaxe :
|
|
* ban realname {
|
|
* mask "(realname)";
|
|
* reason "(raison)";
|
|
* };
|
|
*/
|
|
|
|
ban realname {
|
|
mask "Swat Team";
|
|
reason "mIRKFORCE";
|
|
};
|
|
|
|
ban realname {
|
|
mask "sub7server";
|
|
reason "sub7";
|
|
};
|
|
|
|
/*
|
|
* NOTE POUR TOUS LES BANS, ils peuvent être répetés pour ajouter des entrées !
|
|
*
|
|
* ACTUEL : except ban {}
|
|
* ANCIEN : E:Line
|
|
* Fait que vous ne pouvez être banni.
|
|
* Syntaxe :
|
|
* except ban { mask (ident@host); };
|
|
* Répétez l'except ban {} autant de fois
|
|
* que vous voulez pour différents hosts.
|
|
*/
|
|
|
|
except ban {
|
|
/* ne bannit pas stskeeps */
|
|
mask *stskeeps@212.*;
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : deny dcc {}
|
|
* ANCIEN : dccdeny.conf
|
|
* Utilisez ceci pour bloquer l'envoi de dcc ...
|
|
* Utile pour bloquer les virus.
|
|
* Syntaxe :
|
|
* deny dcc
|
|
* {
|
|
* filename "fichier à bloquer (ex : *exe)";
|
|
* reason "raison";
|
|
* };
|
|
*/
|
|
deny dcc {
|
|
filename "*sub7*";
|
|
reason "Possible Sub7 Virus";
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : deny channel {}
|
|
* ANCIEN : N/A (NEW)
|
|
* Ceci empêche des salons d'être joints.
|
|
* Syntaxe :
|
|
* deny channel {
|
|
* channel "(salon)";
|
|
* reason "raison";
|
|
* class "clients"; (optionnel)
|
|
* };
|
|
*/
|
|
deny channel {
|
|
channel "*warez*";
|
|
reason "Warez is illegal";
|
|
class "clients";
|
|
};
|
|
|
|
|
|
/*
|
|
* ACTUEL : allow channel {}
|
|
* ANCIEN : chrestrict
|
|
* Autorise un utilisateur à joindre un salon...
|
|
* comme une exception au deny channel.
|
|
* Syntaxe :
|
|
* allow channel {
|
|
* channel "nom du salon";
|
|
* class "clients"; (optionnel)
|
|
* };
|
|
*/
|
|
allow channel {
|
|
channel "#WarezSucks";
|
|
class "clients";
|
|
};
|
|
|
|
/*
|
|
* ACTUEL : vhost {}
|
|
* ANCIEN : Vhost.conf file
|
|
* Applique une ip factice aux non-opers, ou aux
|
|
* opers trop flemmards pour utiliser /sethost :P
|
|
* Syntaxe :
|
|
* vhost {
|
|
* vhost (vhost.com);
|
|
* from {
|
|
* userhost (ident@host à autoriser à utiliser);
|
|
* };
|
|
* login (login);
|
|
* password (mot de passe);
|
|
* };
|
|
* ensuite pour utiliser ce vhost, tapez /vhost (login) (mot de passe) sur l'IRC
|
|
*/
|
|
vhost {
|
|
vhost i.hate.microsefrs.com;
|
|
from {
|
|
userhost *@*.image.dk;
|
|
};
|
|
login stskeeps;
|
|
password moocowsrulemyworld;
|
|
};
|
|
|
|
/* Vous pouvez utiliser d'autres fichiers de configuration */
|
|
/* include "klines.conf"; */
|
|
|
|
/* Configuration du réseau */
|
|
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"; */
|
|
/* Les Cloak keys doivent être les mêmes sur tous les serveurs du réseau.
|
|
* Ils sont utilisés pour générer des hosts masqués et doivent être gardés secrets.
|
|
* Les clés doivent être 3 chaînes de 5-100 caractères melangés.
|
|
* (10-20 caractères est parfait) et elles doivent être constituées de minuscules (a-z),
|
|
* majuscules (A-Z) et chiffres (0-9) [voir le premier exemple de clé].
|
|
* Astuce : Sur *NIX, vous pouvez utiliser la commande './unreal gencloak' dans votre shell pour que
|
|
* Unreal génère 3 chaînes aléatoires pour vous.
|
|
*/
|
|
cloak-keys {
|
|
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
|
|
"et une autre";
|
|
"et un autre";
|
|
};
|
|
/* host à l'identification oper */
|
|
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";
|
|
};
|
|
};
|
|
|
|
/* Configuration spécifique d'un serveur */
|
|
|
|
set {
|
|
kline-address "définir.cet.email";
|
|
modes-on-connect "+ixw";
|
|
modes-on-oper "+xwgs";
|
|
oper-auto-join "#opers";
|
|
options {
|
|
hide-ulines;
|
|
/* Vous pouvez enclencher la vérification des idents si vous voulez */
|
|
/* identd-check; */
|
|
show-connect-info;
|
|
};
|
|
|
|
maxchannelsperuser 10;
|
|
/* Durée maximum pendant laquelle un utilisateur doit rester connecté avant de pouvoir utiliser
|
|
* un message de QUIT.
|
|
* Ceci devrait aider à stoper le spam */
|
|
anti-spam-quit-message-time 10s;
|
|
/* Applique le message de static-quit à tous les quits - cela signifie qu'aucun
|
|
message de quit personalisé ne sera autorisé sur le serveur local */
|
|
/* static-quit "Client quit"; */
|
|
|
|
/* Vous pouvez également bloquer toutes les raisons de part en décommentant ceci et en disant
|
|
* 'yes', ou spécifiez un autre texte (ex: "Bye bye!") pour qu'il soit toujours utilisé.. */
|
|
/* static-part yes; */
|
|
|
|
/* Vous permet de restreindre certaines stats aux opers, utilisez * pour toutes les stats,
|
|
* enlevez le pour autoriser les utilisateurs à voir toutes les stats. Tapez '/stats' pour
|
|
* une liste complète.
|
|
* Certains admins pourront vouloir bloquer 'kGs' pour que les utilisateurs normaux ne puissent
|
|
* lister les klines, glines et shuns.
|
|
*/
|
|
oper-only-stats "okfGsMRUEelLCXzdD";
|
|
|
|
/* Throttling: cet exemple applique une limite de 3 tentatives de connection en 60s (par host). */
|
|
throttle {
|
|
connections 3;
|
|
period 60s;
|
|
};
|
|
|
|
/* Protection Anti flood */
|
|
anti-flood {
|
|
nick-flood 3:60; /* 3 changements de pseudo en 60 secondes (la valeur par défaut) */
|
|
};
|
|
|
|
/* Filtre anti-spam */
|
|
spamfilter {
|
|
ban-time 1d; /* durée par défaut d'un ban *line appliqué par le spamfilter */
|
|
ban-reason "Spam/Advertising"; /* raison par défaut */
|
|
virus-help-channel "#help"; /* salon à utiliser pour l'action 'viruschan' */
|
|
/* excepté "#help"; salon à exempter de filtrage */
|
|
};
|
|
};
|
|
|
|
/*
|
|
* Problèmes ou besoin de plus d'aide ?
|
|
* 1) http://www.unrealircd.com/files/docs/unreal32docs.fr.html
|
|
* 2) http://www.vulnscan.org/UnrealIRCd/faq/ <- contient 80% de vos questions !
|
|
* 3) Si vous avez encore des problèmes vous pouvez aller sur irc.unrealircd.org #unreal-support,
|
|
* notez que vous devez avoir LU LA DOCUMENTATION ET LA FAQ d'abord !
|
|
*/
|