mirror of
https://github.com/unrealircd/unrealircd.git
synced 2026-06-27 03:26:38 +02:00
2c011202a4
these "network settings" and other settings has been lost in time. Rename some of these variables and macro's. ircnetwork -> NETWORK_NAME ircnet005 -> NETWORK_NAME_005 defserv ->? DEFAULT_SERVER hidden_host -> CLOAK_PREFIX helpchan -> HELP_CHANNEL Also one config change (visible to admins): set::hiddenhost-prefix is now set::cloak-prefix We still accept the old name, though. The example conf has been updated as well, but not the wiki yet.
456 lines
13 KiB
Plaintext
456 lines
13 KiB
Plaintext
/* Fichier de configuration pour UnrealIRCd 5
|
|
*
|
|
* Copiez ce fichier dans le répertoire conf/, renommez le
|
|
* 'unrealircd.conf' et parcourez-le ligne par ligne (modifiez le !)
|
|
*
|
|
* Important : Toutes les lignes, sauf celles ne comportant qu'un {
|
|
* ouvrant, doivent finir par un ; y compris };. C'est très important,
|
|
* car si vous oubliez un ; quelque part, alors le parser du fichier de
|
|
* configuration se plaindra et votre fichier ne sera pas lu correctement !
|
|
* S'il s'agit de votre première expérience avec le fichier de configuration
|
|
* d'UnrealIRCd, nous vous recommandons de vous documenter un peu à propos
|
|
* de la syntaxe. Ça ne vous prendra que quelques minutes et vous aidera
|
|
* beaucoup :
|
|
* https://www.unrealircd.org/docs/Configuration#Configuration_file_syntax
|
|
*
|
|
* Documentation pour UnrealIRCd 5 (très complète !) :
|
|
* https://www.unrealircd.org/docs/UnrealIRCd_5_documentation/fr
|
|
*
|
|
* Foire Aux Questions :
|
|
* https://www.unrealircd.org/docs/FAQ
|
|
*
|
|
*/
|
|
|
|
/* Ceci est un commentaire, ici, tout le texte est ignoré (type #1) */
|
|
// Ceci est aussi un commentaire, cette ligne est ignorée (type #2)
|
|
# Ceci est aussi un commentaire, cette ligne est ignorée (type #3)
|
|
|
|
/* UnrealIRCd utilise beaucoup les modules. Ceux-ci vous permettent
|
|
* de personnaliser complètement les fonctionnalités que vous voulez
|
|
* activer sur UnrealIRCd.
|
|
* Voir : https://www.unrealircd.org/docs/Modules
|
|
*
|
|
* En utilisant la ligne include ci-dessous, nous indiquons à l'IRCd de
|
|
* lire le fichier 'modules.default.conf' ce qui activera plus de 150
|
|
* modules fournis avec UnrealIRCd. En d'autres termes, ceci activera
|
|
* toutes les fonctionnalités disponibles d'UnrealIRCd.
|
|
* Si vous configurez UnrealIRCd pour la première fois, nous vous
|
|
* conseillons d'utiliser cette ligne. Après, lorsque tout fonctionnera
|
|
* vous pourrez revenir personnaliser la liste (si vous le souhaitez).
|
|
*/
|
|
include "modules.default.conf";
|
|
|
|
/* Incluons aussi d'autres fichiers :
|
|
* - help/help.conf pour le système d'aide sur IRC via /HELPOP
|
|
* - badwords.conf pour le mode utilisateur et de salon +G
|
|
* - spamfilter.conf comme exemple d'utilisation de spamfilter
|
|
* - operclass.default.conf qui contient les classes d'opérateurs
|
|
* par défaut à utiliser dans vos blocs oper.
|
|
*/
|
|
include "help/help.conf";
|
|
include "badwords.conf";
|
|
//include "spamfilter.conf";
|
|
include "operclass.default.conf";
|
|
|
|
/* Le bloc me { } indique qui est le serveur.
|
|
* Il définit le nom du serveur, une ligne d'informations et un identifiant
|
|
* "sid" unique. L'id du serveur (sid) doit commencer par un chiffre suivit
|
|
* de deux chiffres ou lettres. Le sid doit être unique sur votre réseau IRC
|
|
* (chaque serveur doit avoir un sid différent).
|
|
*/
|
|
me {
|
|
name "irc.example.org";
|
|
info "Serveur ExampleNET";
|
|
sid "001";
|
|
}
|
|
|
|
/* Le bloc admin { } définit ce que les utilisateurs verront en faisant
|
|
* /ADMIN. C'est généralement des infos de contact de l'administrateur.
|
|
*/
|
|
admin {
|
|
"Bob Smith";
|
|
"bob";
|
|
"adresse.email@example.org";
|
|
}
|
|
|
|
/* Les clients et serveurs sont placés dans des classes, que nous
|
|
* définissons dans ces blocs class { }.
|
|
* Les blocs de classe comportent les éléments suivants :
|
|
* - pingfreq: à quelle fréquence envoyer un ping à l'utilisateur ou au
|
|
* serveur (en secondes)
|
|
* - connfreq: à quelle fréquence on essaye de se connecter à ce serveur
|
|
* (en secondes)
|
|
* - sendq: la taille maximale de la queue d'émission pour une connexion
|
|
* - recvq: la taille maximale de la queue de réception pour une connexion
|
|
* (contrôle du flood)
|
|
*/
|
|
|
|
/* Classe pour des clients */
|
|
class clients
|
|
{
|
|
pingfreq 90;
|
|
maxclients 1000;
|
|
sendq 200k;
|
|
recvq 8000;
|
|
}
|
|
|
|
/* Classe spéciale pour des IRCOps avec des limites plus hautes */
|
|
class opers
|
|
{
|
|
pingfreq 90;
|
|
maxclients 50;
|
|
sendq 1M;
|
|
recvq 8000;
|
|
}
|
|
|
|
/* Classe pour des serveurs */
|
|
class servers
|
|
{
|
|
pingfreq 60;
|
|
connfreq 15; /* essayer de se connecter toutes les 15 sec */
|
|
maxclients 10; /* nombre max de serveurs */
|
|
sendq 5M;
|
|
}
|
|
|
|
/* Les blocs allow définissent quels clients peuvent se connecter au
|
|
* serveur. Ils vous permettent d'ajouter un mot de passe ou de restreindre
|
|
* le serveur à certaines IP seulement. C'est aussi là que vous configurez
|
|
* le nombre maximum de connexions par IP.
|
|
* Voir : https://www.unrealircd.org/docs/Allow_block
|
|
*/
|
|
|
|
/* Accepter tout le monde, mais seulement 5 connexions par IP */
|
|
allow {
|
|
mask *;
|
|
class clients;
|
|
maxperip 5;
|
|
}
|
|
|
|
/* Exemple de bloc allow spécial pour une IP donnée :
|
|
* Les utilisateurs sur cette IP doivent se connecter avec un mot de passe.
|
|
* S'il est correct, alors autoriser 20 connexions sur cette IP.
|
|
*/
|
|
allow {
|
|
mask 192.0.2.1;
|
|
class clients;
|
|
password "unmotdepassesecret";
|
|
maxperip 20;
|
|
}
|
|
|
|
/* Les blocs oper définissent vos Opérateurs IRC.
|
|
* Les Opérateurs IRC sont des utilisateurs avec des "droits en plus"
|
|
* par rapport aux autres, par exemple, ils peuvent /KILL (déconnecter)
|
|
* d'autres utilisateurs, faire se connecter des serveurs entre eux,
|
|
* /JOIN des salons même s'ils sont bannis, etc ...
|
|
* Voir aussi : https://www.unrealircd.org/docs/Oper_block
|
|
*/
|
|
|
|
/* Voici un exemple de bloc oper pour 'bobsmith' avec le mot de
|
|
* passe 'test'.
|
|
* Vous DEVEZ le modifier !!
|
|
*/
|
|
oper bobsmith {
|
|
class opers;
|
|
mask *@*;
|
|
password "test";
|
|
/* Les permissions Oper sont définies dans un bloc 'operclass'.
|
|
* Voir https://www.unrealircd.org/docs/Operclass_block
|
|
* UnrealIRCd est fourni avec des classes par défaut, voir la doc
|
|
* pour une liste complète. Nous avons choisi 'netadmin' ici.
|
|
*/
|
|
operclass netadmin;
|
|
swhois "est un Administrateur du Réseau";
|
|
vhost netadmin.example.org;
|
|
}
|
|
|
|
/* Les blocs listen définissent les ports sur lesquels le serveur écoute.
|
|
* C'est-à-dire les ports que les clients et les serveurs utilisent pour
|
|
* se connecter à ce serveur.
|
|
*
|
|
* Syntaxe :
|
|
* listen
|
|
* {
|
|
* ip <adresse ip>;
|
|
* port <numéro de port>;
|
|
* options {
|
|
* <options....>;
|
|
* }
|
|
* }
|
|
*/
|
|
|
|
/* Port standard pour IRC 6667 */
|
|
listen {
|
|
ip *;
|
|
port 6667;
|
|
}
|
|
|
|
/* Port standard pour IRC sur SSL/TLS 6697 */
|
|
listen {
|
|
ip *;
|
|
port 6697;
|
|
options { tls; }
|
|
}
|
|
|
|
/* Port SSL/TLS spécial pour la connexion entre serveurs */
|
|
listen {
|
|
ip *;
|
|
port 6900;
|
|
options { tls; serversonly; }
|
|
}
|
|
|
|
/* NOTE : Si vous utilisez un serveur IRC avec plusieurs IP et que vous
|
|
* utilisez les blocs listen ci-dessus, vous aurez peut-être une
|
|
* erreur 'Address already in use' et l'IRCd ne démarrera pas.
|
|
* Celle-ci indique que vous devez préciser une IP spécifique
|
|
* au lieu de '*'. Exemple :
|
|
* listen 1.2.3.4:6667;
|
|
* Bien sûr, remplacez 1.2.3.4 par l'IP qui vous est assignée.
|
|
*/
|
|
|
|
/*
|
|
* Les blocs link vous permettent de connecter plusieurs serveurs ensemble
|
|
* pour former un réseau IRC.
|
|
* Voir https://www.unrealircd.org/docs/Tutorial:_Linking_servers
|
|
*/
|
|
link hub.example.org
|
|
{
|
|
incoming {
|
|
mask *@something;
|
|
}
|
|
|
|
outgoing {
|
|
bind-ip *; /* ou une IP précise */
|
|
hostname hub.example.org;
|
|
port 6900;
|
|
options { tls; }
|
|
}
|
|
|
|
password "00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF"; /* Empreinte SSL de l'autre serveur */
|
|
|
|
class servers;
|
|
}
|
|
|
|
/* Les U-lines donnent encore plus de pouvoir à certains serveurs.
|
|
* Si vous utilisez des Services, vous devez les indiquer ici.
|
|
* NE JAMAIS indiquer le nom d'un serveur UnrealIRCd normal ici !!!
|
|
* (Si vous ne savez pas ce que sont les Services, voir :
|
|
* https://www.unrealircd.org/docs/Services )
|
|
*/
|
|
ulines {
|
|
services.example.org;
|
|
}
|
|
|
|
/* Ici vous pouvez indiquer un mot de passe pour les commandes /DIE et
|
|
* /RESTART, qui sont restreintes aux IRCops.
|
|
* Il s'agit surtout d'une petite protection contre les redémarrages et
|
|
* les coupures de serveur accidentels.
|
|
*/
|
|
drpass {
|
|
restart "restart";
|
|
die "die";
|
|
}
|
|
|
|
/* Le bloc log indique ce qui doit être journalisé et dans quel fichier.
|
|
* Voir aussi https://www.unrealircd.org/docs/Log_block
|
|
*/
|
|
|
|
/* Ceci est une bonne valeur par défaut, elle journalise presque tout */
|
|
log "ircd.log" {
|
|
flags {
|
|
oper;
|
|
connects;
|
|
server-connects;
|
|
kills;
|
|
errors;
|
|
sadmin-commands;
|
|
chg-commands;
|
|
oper-override;
|
|
tkl;
|
|
spamfilter;
|
|
}
|
|
}
|
|
|
|
/* Avec des "alias", vous pouvez créer un alias comme /UNTRUC pour envoyer
|
|
* un message à un utilisateur ou à un bot. Ils sont souvent utilisés pour
|
|
* les services.
|
|
*
|
|
* Nous fournissons un certain nombre d'alias par défaut, voir les fichiers
|
|
* du répertoire aliases/.
|
|
* Pour exemple, ici nous ajoutons les alias pour les Services Anope.
|
|
*/
|
|
include "aliases/anope.conf";
|
|
|
|
/* Bannir des nicks pour qu'ils ne soient pas utilisables par des
|
|
* utilisateurs normaux
|
|
*/
|
|
ban nick {
|
|
mask "*C*h*a*n*S*e*r*v*";
|
|
reason "Réservé aux Services";
|
|
}
|
|
|
|
/* Bannir une IP.
|
|
* NB : vous pouvez aussi utiliser /KLINE, /GLINE et /ZLINE pour ça.
|
|
*/
|
|
ban ip {
|
|
mask 195.86.232.81;
|
|
reason "Je vous hais !";
|
|
}
|
|
|
|
/* Bannir un serveur - si ce serveur est connecté au réseau, nous nous
|
|
* déconnecterons
|
|
*/
|
|
ban server {
|
|
mask eris.berkeley.edu;
|
|
reason "Va-t-en d'ici.";
|
|
}
|
|
|
|
/* Bannir un utilisateur - juste pour l'exemple, on utilise normalement
|
|
* /KLINE or /GLINE pour ça
|
|
*/
|
|
ban user {
|
|
mask *tirc@*.saturn.bbn.com;
|
|
reason "Idiot";
|
|
}
|
|
|
|
/* Bannir un realname (ou 'gecos') */
|
|
ban realname {
|
|
mask "Swat Team";
|
|
reason "mIRKFORCE";
|
|
}
|
|
|
|
ban realname {
|
|
mask "sub7server";
|
|
reason "sub7";
|
|
}
|
|
|
|
/* Exceptions de ban et TKL. Vous permet d'exempter des utilisateurs des
|
|
* KLINE, GLINE, etc ...
|
|
* Si vous êtes un IRCOp avec une IP statique (et qu'il n'y a que des
|
|
* personnes de confiance sur cette IP), alors vous pouvez vous ajouter ici.
|
|
* Ainsi, vous pourrez toujours vous connecter même si vous vous bannissez
|
|
* accidentellement.
|
|
*/
|
|
|
|
/* except ban vous protège des KLINE et ZLINE */
|
|
except ban {
|
|
mask *@192.0.2.1;
|
|
// vous pouvez ajouter d'autres lignes mask à la suite
|
|
}
|
|
|
|
/* except ban avec le type 'all' vous protège des GLINE, GZLINE, QLINE, SHUN */
|
|
except ban {
|
|
mask *@192.0.2.1;
|
|
type all;
|
|
}
|
|
|
|
/* Avec un bloc deny dcc vous pouvez interdire des noms de fichiers dans
|
|
* les échanges DCC
|
|
*/
|
|
deny dcc {
|
|
filename "*sub7*";
|
|
reason "Possible virus Sub7";
|
|
}
|
|
|
|
/* deny channel vous permet d'interdire des masques de noms de salons */
|
|
deny channel {
|
|
channel "*warez*";
|
|
reason "Le warez est illegal";
|
|
class "clients";
|
|
}
|
|
|
|
/* Les VHosts (Virtual Hosts - Hôtes Virtuels) permettent aux utilisateurs
|
|
* d'avoir un nom d'hôte différent.
|
|
* Voir https://www.unrealircd.org/docs/Vhost_block
|
|
*/
|
|
|
|
/* Vhost d'exemple. Sur IRC, entrez /VHOST test test
|
|
* NOTE : seuls les utilisateurs avec un nom d'hôte 'unrealircd.com'
|
|
* peuvent l'utiliser, donc modifiez vhost::mask avant de tester.
|
|
*/
|
|
vhost {
|
|
vhost i.hate.microsefrs.com;
|
|
mask *@unrealircd.com;
|
|
login "test";
|
|
password "test";
|
|
}
|
|
|
|
/* Vous pouvez inclure d'autres fichiers de configuration */
|
|
/* include "klines.conf"; */
|
|
|
|
/* Configuration du réseau */
|
|
set {
|
|
network-name "ExampleNET";
|
|
default-server "irc.example.org";
|
|
services-server "services.example.org";
|
|
stats-server "stats.example.org";
|
|
help-channel "#Help";
|
|
cloak-prefix "Clk";
|
|
prefix-quit "Quit";
|
|
|
|
/* Les clés de cloaking doivent être identiques sur tous les serveurs
|
|
* d'un réseau. Elles sont utilisées pour générer les noms d'hôtes
|
|
* masqués et doivent être gardées secrètes. Les clés doivent être
|
|
* 3 chaînes de 5 à 100 caractères aléatoires (entre 10 et 20 suffisent)
|
|
* et ne comporter que des minuscules (a-z), des majuscules (A-Z) et des
|
|
* chiffres (0-9). (voir l'exemple)
|
|
* NB : sur *NIX, vous pouvez exécuter './unreal gencloak' sur votre
|
|
* serveur pour que Unreal génère 3 clés aléatoires pour vous.
|
|
*/
|
|
cloak-keys {
|
|
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
|
|
"et une autre";
|
|
"et une troisième";
|
|
}
|
|
}
|
|
|
|
/* Configuration spécifique au serveur */
|
|
|
|
set {
|
|
kline-address "indiquez.une.adresse.email"; /* e-mail ou URL indiquée lorsqu'un utilisateur est banni */
|
|
modes-on-connect "+ixw"; /* modes utilisateur ajoutés lorsqu'un utilisateur se connecte */
|
|
modes-on-oper "+xws"; /* modes utilisateur ajoutés lorsqu'un utilisateur devient IRCOp */
|
|
oper-auto-join "#opers"; /* salon que les IRCOps joignent automatiquement */
|
|
options {
|
|
hide-ulines; /* cacher les U-lines de /MAP et /LINKS */
|
|
show-connect-info; /* afficher les messages "looking up your hostname" à la connexion */
|
|
}
|
|
|
|
maxchannelsperuser 10; /* nombre max de salons par utilisateur */
|
|
|
|
/* Temps minimum qu'un utilisateur doit rester connecter avant de pouvoir
|
|
* utiliser un message de QUIT. Le but est pour réduire le spam.
|
|
*/
|
|
anti-spam-quit-message-time 10s;
|
|
|
|
/* Ou indiquez un message de QUIT constant, ce qui fait que les raisons
|
|
* de /QUIT sont ignorées.
|
|
*/
|
|
/* static-quit "Le client a quitté"; */
|
|
|
|
/* static-part fait la même chose pour /PART */
|
|
/* static-part yes; */
|
|
|
|
/* Protections anti-flood.
|
|
* Voir: https://www.unrealircd.org/docs/Set_block#set::anti-flood
|
|
*/
|
|
anti-flood {
|
|
}
|
|
|
|
/* Paramètres de Spamfilter */
|
|
spamfilter {
|
|
ban-time 1d; /* durée par défaut des bans *LINE ajoutés par spamfilter */
|
|
ban-reason "Spam/Publicité"; /* raison par defaut */
|
|
virus-help-channel "#help"; /* salon par défaut pour l'action 'viruschan' */
|
|
/* except "#help"; salon à exempter de Spamfilter */
|
|
}
|
|
}
|
|
|
|
/*
|
|
* Un problème ou besoin d'aide supplémentaire ?
|
|
* 1) https://www.unrealircd.org/docs/UnrealIRCd_4_documentation/fr
|
|
* 2) https://www.unrealircd.org/docs/FAQ <- répond à 80% des questions !
|
|
* 3) Si vous avez toujours des problèmes, vous pouvez aller sur
|
|
* irc.unrealircd.org #unreal-support,
|
|
* mais nous exigeons que vous lisiez LA DOCUMENTATION et la FAQ d'abord !
|
|
*/
|