Excalibur'
VIP
Salut à tous :membres: de 
Aujourd'hui, je vais vous apprendre à configurer correctement UnrealIRCD. Mais avant tout, définissons le terme IRC.
I) Histoire sur l'IRC
L'I.R.C. 'Internet Relay Chat est un protocole de communication sur Internet. Né fin août 1988, l'IRC est le successeur du MultiUser Talk. L'IRC a connu son apogée dans la dernière décénie des années 1900. En 2009, il y a plus de 1 500 serveurs IRC dans le monde, qui peuvent fournir un service à plus de 700 000 utilisateurs simultanément.
II) Apprendre à programmer son serveur
Vous pouvez modifier le unrealircd.conf pendant que votre serveur tourne. Quand vous aurez fini, en tant qu'IrcOp, vous n'aurez qu'à lancer la commende /rehash depuis votre logiciel de tchat.
Voila, ce tuto arrive maintenant à sa fin. Par contre, je les points qui n'ont pas été modifiés dans la configuration n'ont pas besoin d'être modifiés pour vous. J'espère que le tuto vous aura plus et que je n'aurais pas fait 4 heures de rédaction pour rien, n'hésitez pas à le faire savoir
. Si vous avez des problèmes, n'hésitez pas à me le dire.
Merci à JB, Fabien, et Jeson de m'avoir servi de cobaye
Aujourd'hui, je vais vous apprendre à configurer correctement UnrealIRCD. Mais avant tout, définissons le terme IRC.
I) Histoire sur l'IRC
L'I.R.C. 'Internet Relay Chat est un protocole de communication sur Internet. Né fin août 1988, l'IRC est le successeur du MultiUser Talk. L'IRC a connu son apogée dans la dernière décénie des années 1900. En 2009, il y a plus de 1 500 serveurs IRC dans le monde, qui peuvent fournir un service à plus de 700 000 utilisateurs simultanément.
II) Apprendre à programmer son serveur
- Les pré-requis
- Un VPS (tournant sous Linux de préférence, avec Debian 7)
- Un logiciel FTP (FileZilla, CyberDuck)
- Un éditeur de texte (Notepad++, Bloc-Notes)
- Un logiciel pour communiquer en SSH (Putty)
- Un logiciel de tchat IRC (mIRC, BsMax Script)
- Mise en place du unrealircd.conf
Le fichier du nom de unrealircd.conf est la pièce maîtresse de la configuration. C'est à partir de celui-ci que tournera votre serveur.
Voici un exemple de unrealircd.conf
Code:####################################################### ## ## ## _____ _ _____ _____ _____ _ ## ## | | |___ ___ ___ ___| | | __ | |_| | ## ## | | | | _| -_| .'| |- -| -| --| . | ## ## |_____|_|_|_| |___|__,|_|_____|__|__|_____|___| ## ## 3.2.x ## ## ## ####################################################### ########### # Modules # ########### loadmodule "src/modules/commands.so"; loadmodule "src/modules/cloak.so"; ############ # Includes # ############ include "help.conf"; include "spamfilter.conf"; include "badwords.channel.conf"; include "badwords.message.conf"; include "badwords.quit.conf"; ####### # Set # ####### set { network-name "eXolia"; services-server "Service.eXolia.net"; stats-server "Stats.eXolia.net"; default-server "194.146.224.132"; default-bantime 1d; help-channel "#Aide"; hiddenhost-prefix "eXolia"; prefix-quit "no"; kline-address "[email protected]"; gline-address "[email protected]"; modes-on-connect "+x"; modes-on-join "+nt"; modes-on-oper "+xwg"; maxchannelsperuser 30; oper-only-stats "*"; anti-spam-quit-message-time 60s; auto-join "#eXolia"; oper-auto-join "#Services"; cloak-keys { "AHos2HOHS6ds2gsQQHGAkish"; "qF5D3ormaH6mnEvbaH226lfEhjf"; "hfA6HwFh53HedOwQg9Ufs"; }; hosts { local "Local.eXolia.net"; global "Global.eXolia.net"; coadmin "CoAdmin.eXolia.net"; admin "Admin.eXolia.net"; servicesadmin "CsAdmin.eXolia.net"; netadmin "NetAdmin.eXolia.net"; host-on-oper-up "yes"; }; ssl { certificate "server.cert.pem"; key "server.key.pem"; }; dns { nameserver 194.146.224.132; timeout 2s; retries 3; }; options { identd-check; hide-ulines; show-connect-info; show-opermotd; flat-map; }; throttle { connections 3; period 60s; }; anti-flood { nick-flood 5:60; }; spamfilter { ban-time 1d; ban-reason "Protection Spamfilter"; virus-help-channel "#Aide"; }; allowed-nickchars { latin1; }; timesynch { enabled no; }; }; ###### # Me # ###### me { name "irc.eXolia.net"; info "eXolia"; numeric 1; }; ######### # Admin # ######### admin { "Réseau IRC eXolia"; "Administrateur : TiSmA"; "Email : [email protected]"; }; ####### # Tld # ####### tld { mask *@*; motd "ircd.motd"; rules "ircd.rules"; }; ########## # Drpass # ########## drpass { restart "mot-de-passe"; die "mot-de-passe"; }; ####### # Log # ####### log "ircd.log" { maxsize 2097152; flags { oper; kline; connects; server-connects; kills; errors; sadmin-commands; chg-commands; oper-override; spamfilter; }; }; ########## # Listen # ########## listen 194.146.224.132:6660-6668; listen 194.146.224.132:6669 { options { ssl; clientsonly; }; }; listen 194.146.224.132:7000 { options { serversonly; }; }; ######### # Class # ######### class clients { pingfreq 90; maxclients 2000; sendq 100000; recvq 8000; }; class servers { pingfreq 90; maxclients 50; sendq 2000000; connfreq 120; }; ######### # Allow # ######### allow { ip *; hostname *; class clients; maxperip 3; }; ######### # Links # ######### ulines { Service.eXolia.net; }; link Service.eXolia.net { username *; hostname 194.146.224.132; bind-ip *; port 7000; hub *; password-connect "mot-de-passe"; password-receive "mot-de-passe"; class servers; }; ################ # Olines Robot # ################ oper ScanServ { class clients; from { userhost *@*; }; password "mot-de-passe"; flags { global; get_umodew; get_host; can_gkline; can_gzline; can_zline; can_override; }; maxlogins 1; }; ############### # Olines User # ############### oper TiSmA { class clients; from { userhost *@*; }; password "mot-de-passe"; flags { netadmin; global; get_umodew; get_host; can_gkline; can_gzline; can_zline; can_restart; can_die; can_override; }; maxlogins 1; }; ###################### # Protection Service # ###################### ban nick { mask "NickServ"; reason "Pseudo Protégé"; }; ban nick { mask "Global"; reason "Pseudo Protégé"; }; ban nick { mask "OperServ"; reason "Pseudo Protégé"; }; ban nick { mask "BotServ"; reason "Pseudo Protégé"; }; ban nick { mask "ChanServ"; reason "Pseudo Protégé"; }; ban nick { mask "HostServ"; reason "Pseudo Protégé"; }; ban nick { mask "HelpServ"; reason "Pseudo Protégé"; }; ban nick { mask "MemoServ"; reason "Pseudo Protégé"; }; ban nick { mask "ConnectServ"; reason "Pseudo Protégé"; }; ################## # Protection Ban # ################## except ban { mask "*@localhost"; }; except ban { mask "*@127.0.0.1"; }; ####################### # Protection Throttle # ####################### except throttle { mask "*@localhost"; }; except throttle { mask "*@127.0.0.1"; }; except throttle { mask "*@194.146.224.132"; }; ############ # Bad Nick # ############ ban nick { mask "*ÿ*"; reason "Pseudo Interdit"; }; ban nick { mask "*salop*"; reason "Pseudo Interdit"; }; ban nick { mask "*putain*"; reason "Pseudo Interdit"; }; ban nick { mask "*connard*"; reason "Pseudo Interdit"; }; ban nick { mask "*batard*"; reason "Pseudo Interdit"; }; ban nick { mask "*pute*"; reason "Pseudo Interdit"; }; ban nick { mask "*xdcc*"; reason "Pseudo Interdit"; }; ban nick { mask "*warez*"; reason "Pseudo Interdit"; }; ban nick { mask "*anal*"; reason "Pseudo Interdit"; }; ban nick { mask "*nazi*"; reason "Pseudo Interdit"; }; ban nick { mask "con"; reason "Pseudo Interdit"; }; ban nick { mask "cons"; reason "Pseudo Interdit"; }; ban nick { mask "merde"; reason "Pseudo Interdit"; }; ############# # Bad Ident # ############# ban user { mask "Ev1Ls*@*"; reason "Ident Interdit"; }; ban user { mask "c324eb47*@*"; reason "Ident Interdit"; }; ban user { mask "d4c27f08*@*"; reason "Ident Interdit"; }; ban user { mask "53c86262*@*"; reason "Ident Interdit"; }; ban user { mask "D-IRCV*@*"; reason "Ident Interdit"; }; ban user { mask "sex*@*"; reason "Ident Interdit"; }; ban user { mask "pute*@*"; reason "Ident Interdit"; }; ban user { mask "putain*@*"; reason "Ident Interdit"; }; ban user { mask "bite*@*"; reason "Ident Interdit"; }; ban user { mask "xdcc*@*"; reason "Ident Interdit"; }; ban user { mask "warez*@*"; reason "Ident Interdit"; }; ban user { mask "anal*@*"; reason "Ident Interdit"; }; ban user { mask "nazi*@*"; reason "Ident Interdit"; }; ban user { mask "salop*@*"; reason "Ident Interdit"; }; ban user { mask "connard*@*"; reason "Ident Interdit"; }; ban user { mask "batard*@*"; reason "Ident Interdit"; }; ban user { mask "con@*"; reason "Ident Interdit"; }; ban user { mask "cons@*"; reason "Ident Interdit"; }; ban user { mask "merde@*"; reason "Ident Interdit"; }; ################ # Bad Realname # ################ ban realname { mask "*sexe*"; reason "Realname Interdit"; }; ban realname { mask "*pute*"; reason "Realname Interdit"; }; ban realname { mask "*putain*"; reason "Realname Interdit"; }; ban realname { mask "*bite*"; reason "Realname Interdit"; }; ban realname { mask "*xdcc*"; reason "Realname Interdit"; }; ban realname { mask "*warez*"; reason "Realname Interdit"; }; ban realname { mask "*anal*"; reason "Realname Interdit"; }; ban realname { mask "*nazi*"; reason "Realname Interdit"; }; ban realname { mask "*salop*"; reason "Realname Interdit"; }; ban realname { mask "*connard*"; reason "Realname Interdit"; }; ban realname { mask "*batard*"; reason "Realname Interdit"; }; ban realname { mask "con"; reason "Realname Interdit"; }; ban realname { mask "cons"; reason "Realname Interdit"; }; ban realname { mask "merde"; reason "Realname Interdit"; }; ############ # Bad Chan # ############ deny channel { channel "*$*"; reason "Salon Interdit"; }; deny channel { channel "#*salope*"; reason "Salon Interdit"; }; deny channel { channel "#*warez*"; reason "Salon Interdit"; }; deny channel { channel "#*xdcc*"; reason "Salon Interdit"; }; deny channel { channel "#*nazi*"; reason "Salon Interdit"; }; deny channel { channel "#*pute*"; reason "Salon Interdit"; }; deny channel { channel "#*bite*"; reason "Salon Interdit"; }; deny channel { channel "#*connard*"; reason "Salon Interdit"; }; deny channel { channel "#*batard*"; reason "Salon Interdit"; }; deny channel { channel "#*merde*"; reason "Salon Interdit"; }; deny channel { channel "#con"; reason "Salon Interdit"; }; deny channel { channel "#cons"; reason "Salon Interdit"; }; deny channel { channel "#sexe"; reason "Salon Interdit"; }; deny channel { channel "#putain"; reason "Salon Interdit"; }; deny channel { channel "#anal"; reason "Salon Interdit"; }; ####### # Dcc # ####### deny dcc { filename "*"; reason "Transfert Interdit"; soft yes; }; allow dcc { filename "*.htm"; soft yes; }; allow dcc { filename "*.html"; soft yes; }; allow dcc { filename "*.xml"; soft yes; }; allow dcc { filename "*.php"; soft yes; }; allow dcc { filename "*.php3"; soft yes; }; allow dcc { filename "*.php4"; soft yes; }; allow dcc { filename "*.php5"; soft yes; }; allow dcc { filename "*.pl"; soft yes; }; allow dcc { filename "*.cgi"; soft yes; }; allow dcc { filename "*.tcl"; soft yes; }; allow dcc { filename "*.mrc"; soft yes; }; allow dcc { filename "*.jpg"; soft yes; }; allow dcc { filename "*.jpeg"; soft yes; }; allow dcc { filename "*.gif"; soft yes; }; allow dcc { filename "*.png"; soft yes; }; allow dcc { filename "*.bmp"; soft yes; }; allow dcc { filename "*.mp3"; soft yes; }; allow dcc { filename "*.mpg"; soft yes; }; allow dcc { filename "*.mpeg"; soft yes; }; allow dcc { filename "*.avi"; soft yes; }; allow dcc { filename "*.wav"; soft yes; }; allow dcc { filename "*.wma"; soft yes; }; allow dcc { filename "*.wmv"; soft yes; }; allow dcc { filename "*.txt"; soft yes; }; allow dcc { filename "*.log"; soft yes; }; allow dcc { filename "*.pdf"; soft yes; }; allow dcc { filename "*.c"; soft yes; }; allow dcc { filename "*.zip"; soft yes; }; allow dcc { filename "*.exe"; soft yes; }; allow dcc { filename "*.rar"; soft yes; }; allow dcc { filename "*.ace"; soft yes; }; allow dcc { filename "*.tgz"; soft yes; }; allow dcc { filename "*.gz"; soft yes; }; allow dcc { filename "*.bz2"; soft yes; }; ################## # Alias Services # ################## alias "services" { format "^#" { nick "ChanServ"; type services; parameters "%1-"; }; format "^[^#]" { nick "NickServ"; type services; parameters "%1-"; }; type command; }; alias "identify" { format "^#" { nick "ChanServ"; type services; parameters "IDENTIFY %1-"; }; format "^[^#]" { nick "NickServ"; type services; parameters "IDENTIFY %1-"; }; type command; }; alias "ChanServ" { nick "ChanServ"; type services; }; alias "cs" { nick "ChanServ"; type services; }; alias "NickServ" { nick "NickServ"; type services; }; alias "ns" { nick "NickServ"; type services; }; alias "BotServ" { nick "BotServ"; type services; }; alias "bs" { nick "BotServ"; type services; }; alias "HelpServ" { nick "HelpServ"; type services; }; alias "he" { nick "HelpServ"; type services; }; alias "OperServ" { nick "OperServ"; type services; }; alias "os" { nick "OperServ"; type services; }; alias "MemoServ" { nick "MemoServ"; type services; }; alias "ms" { nick "MemoServ"; type services; }; alias "HostServ" { nick "HostServ"; type services; }; alias "hs" { nick "HostServ"; type services; }; ###################### ## Salons Officiels ## ###################### official-channels { "#RealityGaming"; "#Aide"; "#Services"; };
Pour télécharger le fichier Unreal, vous devez entrer dans Putty, et vous tapez les lignes suivantes dans l'ordre :
wgetVous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.tar zxvf Unreal3.2.9.tar.gzcd Unreal3.2./Config
Ainsi, vous aurez téléchargé, extrait, compilé le dossier de l'Unreal.
Passons maintenant à la plus grosse partie : la configuration du unrealircd.conf. Vous pouvez copier le modèle dans le code ou le copier
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.. Dans ce tuto, nous allons monter un serveur IRC qui s'appellera RealityGaming.
La première ligne à modifier est à partir du paramètre SET.
On aura donc
You must be registered for see images attach:
La ligne network name est le nom de votre réseau, services-server l'adresse des services, stats-server l'adresse des stats, default-server, l'adresse IP de votre VPS, help-channel, le canal d'aide du serveur, la ligne hiddenhost-prefix est le préfix de votre host (une adresse sur IRC se définit par ident@hostname), les ligne kline-address et gline-address servent a dire à un utilisatuer qui se fera bannir qui contacter si il veut signaler un litige. La ligne host correspond aux hostnames des IrcOps (IRC Operateur = Staff de l'IRC).
Chez nous, on aura :
Code:set { network-name "RealityGaming"; services-server "Service.reality-gaming.fr"; stats-server "Stats.reality-gaming.fr"; default-server "75.214.246.12"; default-bantime 1d; help-channel "#Aide"; hiddenhost-prefix "rg"; prefix-quit "no"; kline-address "[email protected]"; gline-address "[email protected]"; modes-on-connect "+x"; modes-on-join "+nt"; modes-on-oper "+xwg"; maxchannelsperuser 30; oper-only-stats "*"; anti-spam-quit-message-time 60s; auto-join "#RealityGaming"; oper-auto-join "#Services"; cloak-keys { "AHos2HOHS6ds2gsQQHGAkish"; "qF5D3ormaH6mnEvbaH226lfEhjf"; "hfA6HwFh53HedOwQg9Ufs"; }; hosts { local "local.reality-gaming.fr"; global "global.reality-gaming.fr"; coadmin "CoAdmin.reality-gaming.fr"; admin "Admin.reality-gaming.fr"; services-admin "CsAdmin.reality-gaming.fr"; netadmin "NetAdmin.reality-gaming.fr"; host-on-oper-up "yes"; }; dns { nameserver 75.214.246.12; timeout 2s; retries 3;
Il faudra ensuite modifier la partie Me
You must be registered for see images attach
On aura donc :
Code:###### # Me # ###### me { name "irc.reality-gaming.fr; info "RealityGaming"; numeric 1; };
Vient ensuite la partie Admin :
You must be registered for see images attach
Pouron mettra :
Code:######### # Admin # ######### admin { "Réseau IRC RealityGaming"; "Administrateur : JB, Fabien, Inventory"; "Email : [email protected]"; "Email : [email protected]"; "Email : [email protected]"; };
Partie très importante, le Drpass. Ces mots de passe vous permettent de fermer le serveur et/ou de le redémarrer.
Code:########## # Drpass # ########## drpass { restart "JB-restart-rg"; die "JB-ferme-rg"; };
Plus importante que la Drpass, le Listen sert à définir les ports d'écoute.
You must be registered for see images attach
Vous pouvez mettre * comme valeur pour IP pour toutes les accepter, ou en spécifier une pour accepter uniquement les connexions sur cette ip (habituellement requis chez des loueurs de shell). Le port est le port que vous voulez écouter. Vous pouvez également spécifier un intervalle de ports à la place d'une valeur unique. Par exemple, 6660-6669 écoutera du port 6660 au port 6669 (inclus).
Vous pouvez préciser des options spéciales pour ce port si vous le souhaitez, les options possibles sont :- clientsonly Port réservé aux clients
- serversonly Port réservé aux serveurs
- java Support CR java
- ssl Port SSL
Nous auront
Code:########## # Listen # ########## listen 75.214.246.12:6667; listen 75.214.246.12:6669 { options { clientsonly; }; }; listen 75.214.246.12:7000 { options { serversonly; }; };
La partie suivante sera le Link Block. Ce paramètre vous permet de "fusionner deux serveurs" (pour les services par exemple). Le link comporte deux parties : les détails du serveur à linker et les U:Lines. Pour chaque Link, vous devez mettre une U:Line correspondante à l'adresse du service. Vous pouvez mettre plusieurs Links.
You must be registered for see images attach
Nous auront :
Code:######### # Links # ######### ulines { Service.reality-gaming.fr; }; link Service.reality-gaming.fr { username *; hostname 75.214.246.12; bind-ip *; port 7000; hub *; password-connect "jb-connecte les services"; password-receive "jb-a-connecte-les-services"; class servers; };
Ensuite viens ma partie partie la configuration; les O:Line. C'est ce block qui définit les IrcOps du serveurs ainsi que leurs différents grades. Du plus élevé au moins élevé, les grades sont l'administrateur réseau (NetAdmin), l'administrateur services (CsAdmin), l'administrateur serveur (Admin), le co-administrateur (CoAdmin), l'opérateur global (global) et l'opérateur local (Local).
You must be registered for see images attach
Je conseille d'attribuer les flags can_restart et can_die au propriétaire seulement car ils permettent de redémarrer ou de fermer le serveur. Vous pouvez mettre plusieurs O:Lines :
Code:############### # Olines User # ############### oper JB { class clients; from { userhost *@*; }; password "jbpass"; flags { netadmin; global; get_umodew; get_host; can_gkline; can_gzline; can_zline; can_restart; can_die; can_override; }; maxlogins 3; }; oper Fabien { class clients; from { userhost *@*; }; password "fabpassw"; flags { netadmin; global; get_umodew; get_host; can_gkline; can_gzline; can_zline; can_override; }; maxlogins 2; }; oper Jeson { class clients; from { userhost *@*; }; password "modojeson"; flags { admin; global; get_umodew; get_host; can_gkline; can_gzline; can_zline; can_override; }; maxlogins 1; };
La dernière partie est facultative, elle concerne les salons officiels.
You must be registered for see images attach
aura :
Code:###################### ## Salons Officiels ## ###################### official-channels { "#RealityGaming"; "#Aide"; "#Services"; "#Lobby"; };
En suivant toutes ces étapes, vous devez avoir ceci
Code:####################################################### ## ## ## _____ _ _____ _____ _____ _ ## ## | | |___ ___ ___ ___| | | __ | |_| | ## ## | | | | _| -_| .'| |- -| -| --| . | ## ## |_____|_|_|_| |___|__,|_|_____|__|__|_____|___| ## ## 3.2.x ## ## ## ####################################################### ########### # Modules # ########### loadmodule "src/modules/commands.so"; loadmodule "src/modules/cloak.so"; ############ # Includes # ############ include "help.conf"; include "spamfilter.conf"; include "badwords.channel.conf"; include "badwords.message.conf"; include "badwords.quit.conf"; ####### # Set # ####### set { network-name "RealityGaming"; services-server "Service.reality-gaming.fr"; stats-server "Stats.reality-gaming.fr"; default-server "75.214.246.12"; default-bantime 1d; help-channel "#Aide"; hiddenhost-prefix "rg"; prefix-quit "no"; kline-address "[email protected]"; gline-address "[email protected]"; modes-on-connect "+x"; modes-on-join "+nt"; modes-on-oper "+xwg"; maxchannelsperuser 30; oper-only-stats "*"; anti-spam-quit-message-time 60s; auto-join "#RealityGaming"; oper-auto-join "#Services"; cloak-keys { "AHos2HOHS6ds2gsQQHGAkish"; "qF5D3ormaH6mnEvbaH226lfEhjf"; "hfA6HwFh53HedOwQg9Ufs"; }; hosts { local "local.reality-gaming.fr"; global "global.reality-gaming.fr"; coadmin "CoAdmin.reality-gaming.fr"; admin "Admin.reality-gaming.fr"; services-admin "CsAdmin.reality-gaming.fr"; netadmin "NetAdmin.reality-gaming.fr"; host-on-oper-up "yes"; }; dns { nameserver 75.214.246.12; timeout 2s; retries 3; }; options { identd-check; hide-ulines; show-connect-info; show-opermotd; flat-map; }; throttle { connections 3; period 60s; }; anti-flood { nick-flood 5:60; }; spamfilter { ban-time 1d; ban-reason "Protection Spamfilter"; virus-help-channel "#Aide"; }; allowed-nickchars { latin1; }; timesynch { enabled no; }; }; ###### # Me # ###### me { name "irc.reality-gaming.fr"; info "RealityGaming"; numeric 1; }; ######### # Admin # ######### admin { "Réseau IRC RealityGaming"; "Administrateur : JB"; "Email : [email protected]"; }; ####### # Tld # ####### tld { mask *@*; motd "ircd.motd"; rules "ircd.rules"; }; ########## # Drpass # ########## drpass { restart "JB-restart-rg"; die "jb-ferme-rg"; }; ####### # Log # ####### log "ircd.log" { maxsize 2097152; flags { oper; kline; connects; server-connects; kills; errors; sadmin-commands; chg-commands; oper-override; spamfilter; }; }; ########## # Listen # ########## listen 75.214.246.12:6667; listen 75.214.246.12:6669 { options { ssl; clientsonly; }; }; listen 75.214.246.12:7000 { options { serversonly; }; }; ######### # Class # ######### class clients { pingfreq 90; maxclients 2000; sendq 100000; recvq 8000; }; class servers { pingfreq 90; maxclients 50; sendq 2000000; connfreq 120; }; ######### # Allow # ######### allow { ip *; hostname *; class clients; maxperip 3; }; ######### # Links # ######### ulines { Service.reality-gaming.fr; }; link Service.reality-gaming.fr { username *; hostname 75.214.246.12; bind-ip *; port 7000; hub *; password-connect "jb-connecte-les-services"; password-receive "jb-a-connecte-les-services"; class servers; }; ################ # Olines Robot # ################ oper ScanServ { class clients; from { userhost *@*; }; password "mot-de-passe"; flags { global; get_umodew; get_host; can_gkline; can_gzline; can_zline; can_override; }; maxlogins 1; }; ############### # Olines User # ############### oper JB { class clients; from { userhost *@*; }; password "jbpass"; flags { netadmin; global; get_umodew; get_host; can_gkline; can_gzline; can_zline; can_restart; can_die; can_override; }; maxlogins 3; }; oper Fabien { class clients; from { userhost *@*; }; password "fabpassw"; flags { netadmin; global; get_umodew; get_host; can_gkline; can_gzline; can_zline; can_override; }; maxlogins 2; }; oper Jeson { class clients; from { userhost *@*; }; password "modojeson"; flags { admin; global; get_umodew; get_host; can_gkline; can_gzline; can_zline; can_override; }; maxlogins 1; }; ###################### # Protection Service # ###################### ban nick { mask "NickServ"; reason "Pseudo Protégé"; }; ban nick { mask "Global"; reason "Pseudo Protégé"; }; ban nick { mask "OperServ"; reason "Pseudo Protégé"; }; ban nick { mask "BotServ"; reason "Pseudo Protégé"; }; ban nick { mask "ChanServ"; reason "Pseudo Protégé"; }; ban nick { mask "HostServ"; reason "Pseudo Protégé"; }; ban nick { mask "HelpServ"; reason "Pseudo Protégé"; }; ban nick { mask "MemoServ"; reason "Pseudo Protégé"; }; ban nick { mask "ConnectServ"; reason "Pseudo Protégé"; }; ################## # Protection Ban # ################## except ban { mask "*@localhost"; }; except ban { mask "*@127.0.0.1"; }; ####################### # Protection Throttle # ####################### except throttle { mask "*@localhost"; }; except throttle { mask "*@127.0.0.1"; }; except throttle { mask "*@194.146.224.132"; }; ############ # Bad Nick # ############ ban nick { mask "*ÿ*"; reason "Pseudo Interdit"; }; ban nick { mask "*salop*"; reason "Pseudo Interdit"; }; ban nick { mask "*putain*"; reason "Pseudo Interdit"; }; ban nick { mask "*connard*"; reason "Pseudo Interdit"; }; ban nick { mask "*batard*"; reason "Pseudo Interdit"; }; ban nick { mask "*pute*"; reason "Pseudo Interdit"; }; ban nick { mask "*xdcc*"; reason "Pseudo Interdit"; }; ban nick { mask "*warez*"; reason "Pseudo Interdit"; }; ban nick { mask "*anal*"; reason "Pseudo Interdit"; }; ban nick { mask "*nazi*"; reason "Pseudo Interdit"; }; ban nick { mask "con"; reason "Pseudo Interdit"; }; ban nick { mask "cons"; reason "Pseudo Interdit"; }; ban nick { mask "merde"; reason "Pseudo Interdit"; }; ############# # Bad Ident # ############# ban user { mask "Ev1Ls*@*"; reason "Ident Interdit"; }; ban user { mask "c324eb47*@*"; reason "Ident Interdit"; }; ban user { mask "d4c27f08*@*"; reason "Ident Interdit"; }; ban user { mask "53c86262*@*"; reason "Ident Interdit"; }; ban user { mask "D-IRCV*@*"; reason "Ident Interdit"; }; ban user { mask "sex*@*"; reason "Ident Interdit"; }; ban user { mask "pute*@*"; reason "Ident Interdit"; }; ban user { mask "putain*@*"; reason "Ident Interdit"; }; ban user { mask "bite*@*"; reason "Ident Interdit"; }; ban user { mask "xdcc*@*"; reason "Ident Interdit"; }; ban user { mask "warez*@*"; reason "Ident Interdit"; }; ban user { mask "anal*@*"; reason "Ident Interdit"; }; ban user { mask "nazi*@*"; reason "Ident Interdit"; }; ban user { mask "salop*@*"; reason "Ident Interdit"; }; ban user { mask "connard*@*"; reason "Ident Interdit"; }; ban user { mask "batard*@*"; reason "Ident Interdit"; }; ban user { mask "con@*"; reason "Ident Interdit"; }; ban user { mask "cons@*"; reason "Ident Interdit"; }; ban user { mask "merde@*"; reason "Ident Interdit"; }; ################ # Bad Realname # ################ ban realname { mask "*sexe*"; reason "Realname Interdit"; }; ban realname { mask "*pute*"; reason "Realname Interdit"; }; ban realname { mask "*putain*"; reason "Realname Interdit"; }; ban realname { mask "*bite*"; reason "Realname Interdit"; }; ban realname { mask "*xdcc*"; reason "Realname Interdit"; }; ban realname { mask "*warez*"; reason "Realname Interdit"; }; ban realname { mask "*anal*"; reason "Realname Interdit"; }; ban realname { mask "*nazi*"; reason "Realname Interdit"; }; ban realname { mask "*salop*"; reason "Realname Interdit"; }; ban realname { mask "*connard*"; reason "Realname Interdit"; }; ban realname { mask "*batard*"; reason "Realname Interdit"; }; ban realname { mask "con"; reason "Realname Interdit"; }; ban realname { mask "cons"; reason "Realname Interdit"; }; ban realname { mask "merde"; reason "Realname Interdit"; }; ############ # Bad Chan # ############ deny channel { channel "*$*"; reason "Salon Interdit"; }; deny channel { channel "#*salope*"; reason "Salon Interdit"; }; deny channel { channel "#*warez*"; reason "Salon Interdit"; }; deny channel { channel "#*xdcc*"; reason "Salon Interdit"; }; deny channel { channel "#*nazi*"; reason "Salon Interdit"; }; deny channel { channel "#*pute*"; reason "Salon Interdit"; }; deny channel { channel "#*bite*"; reason "Salon Interdit"; }; deny channel { channel "#*connard*"; reason "Salon Interdit"; }; deny channel { channel "#*batard*"; reason "Salon Interdit"; }; deny channel { channel "#*merde*"; reason "Salon Interdit"; }; deny channel { channel "#con"; reason "Salon Interdit"; }; deny channel { channel "#cons"; reason "Salon Interdit"; }; deny channel { channel "#sexe"; reason "Salon Interdit"; }; deny channel { channel "#putain"; reason "Salon Interdit"; }; deny channel { channel "#anal"; reason "Salon Interdit"; }; ####### # Dcc # ####### deny dcc { filename "*"; reason "Transfert Interdit"; soft yes; }; allow dcc { filename "*.htm"; soft yes; }; allow dcc { filename "*.html"; soft yes; }; allow dcc { filename "*.xml"; soft yes; }; allow dcc { filename "*.php"; soft yes; }; allow dcc { filename "*.php3"; soft yes; }; allow dcc { filename "*.php4"; soft yes; }; allow dcc { filename "*.php5"; soft yes; }; allow dcc { filename "*.pl"; soft yes; }; allow dcc { filename "*.cgi"; soft yes; }; allow dcc { filename "*.tcl"; soft yes; }; allow dcc { filename "*.mrc"; soft yes; }; allow dcc { filename "*.jpg"; soft yes; }; allow dcc { filename "*.jpeg"; soft yes; }; allow dcc { filename "*.gif"; soft yes; }; allow dcc { filename "*.png"; soft yes; }; allow dcc { filename "*.bmp"; soft yes; }; allow dcc { filename "*.mp3"; soft yes; }; allow dcc { filename "*.mpg"; soft yes; }; allow dcc { filename "*.mpeg"; soft yes; }; allow dcc { filename "*.avi"; soft yes; }; allow dcc { filename "*.wav"; soft yes; }; allow dcc { filename "*.wma"; soft yes; }; allow dcc { filename "*.wmv"; soft yes; }; allow dcc { filename "*.txt"; soft yes; }; allow dcc { filename "*.log"; soft yes; }; allow dcc { filename "*.pdf"; soft yes; }; allow dcc { filename "*.c"; soft yes; }; allow dcc { filename "*.zip"; soft yes; }; allow dcc { filename "*.exe"; soft yes; }; allow dcc { filename "*.rar"; soft yes; }; allow dcc { filename "*.ace"; soft yes; }; allow dcc { filename "*.tgz"; soft yes; }; allow dcc { filename "*.gz"; soft yes; }; allow dcc { filename "*.bz2"; soft yes; }; ################## # Alias Services # ################## alias "services" { format "^#" { nick "ChanServ"; type services; parameters "%1-"; }; format "^[^#]" { nick "NickServ"; type services; parameters "%1-"; }; type command; }; alias "identify" { format "^#" { nick "ChanServ"; type services; parameters "IDENTIFY %1-"; }; format "^[^#]" { nick "NickServ"; type services; parameters "IDENTIFY %1-"; }; type command; }; alias "ChanServ" { nick "ChanServ"; type services; }; alias "cs" { nick "ChanServ"; type services; }; alias "NickServ" { nick "NickServ"; type services; }; alias "ns" { nick "NickServ"; type services; }; alias "BotServ" { nick "BotServ"; type services; }; alias "bs" { nick "BotServ"; type services; }; alias "HelpServ" { nick "HelpServ"; type services; }; alias "he" { nick "HelpServ"; type services; }; alias "OperServ" { nick "OperServ"; type services; }; alias "os" { nick "OperServ"; type services; }; alias "MemoServ" { nick "MemoServ"; type services; }; alias "ms" { nick "MemoServ"; type services; }; alias "HostServ" { nick "HostServ"; type services; }; alias "hs" { nick "HostServ"; type services; }; ###################### ## Salons Officiels ## ###################### official-channels { "#RealityGaming"; "#Aide"; "#Services"; };
Vous pouvez modifier le unrealircd.conf pendant que votre serveur tourne. Quand vous aurez fini, en tant qu'IrcOp, vous n'aurez qu'à lancer la commende /rehash depuis votre logiciel de tchat.
Voila, ce tuto arrive maintenant à sa fin. Par contre, je les points qui n'ont pas été modifiés dans la configuration n'ont pas besoin d'être modifiés pour vous. J'espère que le tuto vous aura plus et que je n'aurais pas fait 4 heures de rédaction pour rien, n'hésitez pas à le faire savoir
Merci à JB, Fabien, et Jeson de m'avoir servi de cobaye
Fichiers joints
Dernière édition: