mIRC Script ServerTable des matièresBonjour,Cet addon transforme votre client IRC en serveur IRC. (Au début c'etait un addon, je l'ai transformé en script depuis que je me suis aperçu qu'il ne tournait pas sur les plus récentes versions de mirc).Quelques recommandations de dernière heure avant toute chose:/!\Attention! Si vous décidez de rendre votre serveur public sur la page serverlist, on ne peut plus s'y connecter en tapant /server <Votre ip>. Plus d'informations sont données sur la FAQ alinea 10 et 13. Au cas où vous acceptiez de rendre votre serveur disponible au public, je vous recommande de changer avant toute chose les paramètres suivants (fenêtre configuration): - Le login et le passe d'ircop InstallationDézipper ce fichier sur votre disque dur. Ensuite, double-cliquez mirc.exe et tout s'installe automatiquement.ATTENTION: Veillez à ce qu'aucun des dossiers de l'arborescence conduisant à mIRC Script Server sur votre disque dur ne contienne d'espaces. Ceci est important: le serveur ne fonctionne pas sinon. Donc, ne l'installez pas dans "Program Files", par exemple, ni sur le bureau électronique, ni dans "Mes Documents", etc. Au cas où vous l'auriez déjà fait, et lancé l'installation ensuite, il vaut mieux re-dézipper le fichier au bon endroit. Sinon, vous pouvez supprimer mirc.ini du dossier et renommer "Copie de mirc.ini" en mirc.ini, ce qui réinitialise l'installation. FonctionnementLe menu de commande comprend 6 instructions:- Ouvrir et fermer le serveur: (self explanatory) A noter que ce script vous demande, au moment où vous ouvrez le serveur, si vous voulez le rendre public ou non sur la page http://www.serverlist.fr.fm. Sachez que vous n'êtes pas forcé de répondre par l'affirmative. Dans certains cas, on peut souhaiter ne pas se faire connaître. - Configuration: assez self-explanatory aussi. Vous devez penser y faire un tour ne serait-ce que pour connaître les mots de passe par défaut, et vous DEVEZ les changer si jamais vous décidez de rendre votre serveur public. Ceci dit, vous faites ce que vous voulez :) - Eggdrop: permet d'activer un robot gardien de channel. Ce robot est un clone, commandable par n'importe quel utilisateur de votre serveur. Un help est fourni (en anglais) dans le fichier yhelp.htm . Vous pouvez aussi obtenir de l'aide de sa part, en tapant: /msg Y help lorsqu'il est connecté. - Linker avec un serveur: vous pouvez fusionner ce serveur avec un autre, ou avec des services (ne pas utiliser cette option avec les services inclus, voir ligne suivante) - Services: vous permet de connecter les services type Dalnet au serveur. Il suffit de sélectionner "lancer" et les services se connectent par link avec le bon mot de passe. A noter, on m'a déjà posé souvent la question, que Operserv est buggué, et qu'il ne sert donc à rien. Pour modifier le message d'accueil envoyé par Global, modifier le fichier SERVICES\DATABASE\GLOBAL.MSG. Quelques conseils pratiques:- Un truc idiot, mais il ne faut pas oublier de le dire: pour vous connecter au serveur, utilisez votre mirc habituel (même avec la toute dernière version, ça marche) et tapez /server localhost, ou /server <votre ip>. J'ai volontairement tout fait pour rendre très peu pratique l'utilisation du même mirc en temps que client et serveur (pas de popups, pas d'alias, pas de bras et pas de chocolat!). Ceci, car il existe quelques phénomènes d'incompatibilité dus à l'utilisation du même mirc en tant que client et serveur.- Pour devenir ircop, tapez /oper account password, lesquels mots sont dans la configuration. Il n'y a pas plus simple :) - J'ai rajouté trois modes spéciaux: Le mode +s: tapez /mode votre_nick +s et les autres ne pourront pas voir la liste de vos channels quand ils feront un /whois sur vous.Bon. Une dernière chose. Au cas où justement vous voudriez faire marcher ce serveur pour y accueillir un pote, demandez-lui (après avoir évidemment activé le serveur) de taper /server <votre N°IP> Voilà c'est a peu près tout. Je pense qu'au vu des nombreux scripterz qui existent de par le monde, qui sont obligés de se connecter au Net pour tester leur script, mon mirc script server devrait être déclaré d'utilité publique!! Support technique: Averell (http://www.mircscriptsfrfm.com) |
Pour répondre en masse à de nombreux courriers que je reçois des utilisateurs de ce script, voici un medley du top des tops des questions que je reçois habituellement le concernant:
-1) La question qui a détrôné le classique (et stupide) "comment puis-je linker l'undernet": pourquoi suis-je le seul à pouvoir me connecter à mon serveur, et pas les autres? En corollaire: pourquoi mon serveur n'apparaît-il pas sur la page serverlist?
Les raisons sont multiples, j'en vois deux a priori:
a) Vous avez demandé à figurer sur la page serverlist, et vous demandez aux personnes de se connecter chez vous en faisant /server <votre N°ip> sans préciser de port (donc par défaut, il s'agit du port 6667). Les deux sont incompatibles: si vous êtes sur serverlist votre port de connexion n'est plus 6667. En général, les personnes qui se connectent sur ce port là reçoivent un message d'erreur leur précisant quelle est l'instruction à lancer par mirc pour joindre votre serveur.
b) Vous êtes sous Win XP et vous avez activé le firewall (ou vous l'avez laissé actif par défaut). C'est tout simple: ne faites jamais tourner un firewall sur votre machine si vous souhaitez que quelqu'un puisse s'y connecter. Le but d'un firewall est précisément que personne ne puisse se connecter à votre machine. Personnellement je n'ai pas XP, je ne sais pas comment on arrête le firewall, mais j'ai cru comprendre que cela se configurait dans "Paramètres/Panneau de configuration" de Windows.
Il existe d'autres raisons, notamment le fait que vous accédiez à l'internet par un proxy (depuis un réseau intranet par exemple) ou par un routeur. Dans ce cas, l'ip de votre machine est différente de l'ip du proxy, et les personnes cherchant à se connecter sur votre machine ne l'atteindront pas. Cela semblerait précisément le cas avec la live-box qui fait office de routeur; elle donne à votre machine une ip genre 192.*.*.* qui donc est une ip intranet inatteignable de l'extérieur. Je ne sais pas ce qu'il en est avec la free-box, la neuf-box, et généralement tous les systèmes permettant de cumuler la réception de l'internet haut débit, de la télévision numérique et de la téléphonie.
J'ai eu un cas particulier où la personne qui se plaignait avait modifié le script, et sa modification avait pour incidence que son serveur n'apparaissait plus sur la page serverlist. Il va de soi que je ne fais pas d'aide sur les versions modifiées du script; si vous l'avez modifié et que ça ne marche plus, débrouillez-vous!
0) Comment puis-je linker à Undernet ou Dalnet avec ce serveur? Je n'y arrive pas :((
Question numéro zéro au hit-parade des questions les plus stupides concernant le serveur, et cependant, LA plus fréquemment posée (jusqu'à une certaine époque). Sachez que si on pouvait faire une chose pareille sans rendre de compte à personne, avec ce serveur ou n'importe quel (vrai) serveur téléchargeable sur le Net, qu'il tourne sous Windows, Linux, FreeBSD etc., ça se saurait! D'abord le protocole de ce serveur n'est probablement pas compatible avec celui des serveurs des réseaux sus-mentionnés, ensuite il existe une politique très rigoureuse de reconnaissance, fondée sur les mots de passe et les adresses ip. Donc, pas de danger que vous y arriviez!
1/2) Comment faire pour que les gens se connectent par /server et.ron.et.ron.petit.patapon.org au lieu de passer par mon ip ou par la page serverlist?
Donc la question un demi au hit parade des questions de newbies. J'en parle sur la FAQ historique.
La réponse courte: vous ne pouvez pas. (en tout cas, pas sans payer). La réponse longue: utilisez un service gratuit d'hébergement d'ip dynamique, genre www.dyndns.org qui vous donnera, a défaut d'un nom de domaine (le choix n'est pas libre) un nom de machine, genre monserveur.dyndns.org. C'est tout en anglais, alors débrouillez-vous, je ne fais pas d'aide pour la traduction :)
Question 1/2+1/4 = 3/4: Mais comment font les vrais serveurs alors?
Ils payent! Il faut d'abord acheter le nom de domaine patapon.org, ensuite faire un sous domaine et.ron.et.ron.petit.patapon.org et spécifier que ce nom de domaine pointe vers une ip précise (et STATIQUE). Personnellement, je ne connais pas la procédure en détail. (Note d'humour: la question 3/4 est à rapprocher de la voie 9 3/4 que seuls les amateurs de Harry Potter connaissent, c'est à dire que cette question n'est pas une question réellement posée, mais elle découle naturellement de la réponse à la question précédente)
1) Peut-il y avoir plusieurs ircops sur mon serveur?
Depuis la version 6.80f, on peut définir plusieurs logins et passes d'ircop, ainsi que pour le mode inkickable (merci à mon ami Kotake, spécialiste des dialogues entre autres). Vous pouvez avoir autant d'ircops que vous voulez sur votre serveur. Vous créez la liste dans la configuration.
2) Comment puis-je changer les hosts (le mien et/ou celui de mes invités)?
Depuis la version 6.85f et grâce au concours de Mr_Securix que je remercie, le serveur vous permet de changer votre host, au moyen de la fonction /vhost nom.du.host.com . Cette fonction est accessible aux ircops par défaut, ainsi qu'à tous ceux qui auront prononcé le /oper correct (à configurer. Par défaut, le login et le passe sont /oper vhost vhost.) On ne peut pas changer le host de quelqu'un d'autre que soi-même. Ce mode de fonctionnement dévie de la RFC, mais on fait ce qu'on peut :)
3) Pourquoi n'y a-t-il pas d'helpers sur mon serveur?
Le serveur ne gère pas les modes des serveurs irc plus récents, à savoir le mode +h (helper ou half-op) ni les modes de canaux de type anti-color, anti répétition, etc. Je suis un habitué de Undernet, et les serveurs undernet ne gèrent pas ces modes.
4) Pourquoi on ne voit pas Chanserv sur les canaux? Comment on fait pour les faire venir?
Il n'est pas possible (sauf en linkant avec Telnet ou un logiciel spécialisé) de faire que Chanserv puisse joindre les canaux enregistrés, comme sur le réseau Wanadoo par exemple. Pour la bonne raison que ça ne sert à rien: Chanserv est ircop, il peut donc TOUT faire, même sans être sur les canaux qu'il est censé gérer. Le système Chanserv été inspiré du réseau Dalnet, non du réseau Wanadoo.
5) La fonction /samode ne marche pas!! C'est trop relou!
Je n'ai pas vu l'intérêt d'implémenter le /samode, sachant que si vous êtes ircop vous pouvez changer les modes de ce que vous voulez à votre guise. En revanche, depuis la version 6.88, j'ai implémenté la fonction /sajoin qui faisait défaut, ainsi que la fonction /sapart.
6) Supprimée
7) Où se trouve le fichier ircd.conf? Comment je fais pour mettre les O-lines, les K-lines, les C/N Lines etc?
Pour les intégristes de l'ircd, il n'y a pas de fichier ircd.conf (donc ne le cherchez pas): tout se paramètre via la fenêtre @Configuration. C'est un peu léger, mais c'est le seul moyen que j'ai trouvé pour que n'importe qui de non spécialiste puisse avoir son propre serveur irc. Moi même, je n'y connais rien :)) Ce script n'est quand même qu'un jouet: il s'adresse plutôt à des newbies. Si vous voulez avoir un serveur irc "sérieux", tout en restant sous Windows, vous pouvez taper sur bircd ou sur unrealircd. Sinon, si votre rêve est d'avoir un serveur irc permanent, la meilleure méthode est encore d'en faire héberger un sur un compte shell unix ou linux disponible 24h/24. Renseignez-vous chez exolia par exemple pour vous en procurer un. Ce n'est pas gratuit, mais les prix ne sont pas excessifs si vous n'êtes pas trop exigents.
8) Comment configurer Chanserv pour que je sois le seul à pouvoir m'en servir? Y a plein de types qui s'en servent pour enregistrer leurs canaux sur mon serveur à moi, et j'aime pas ça, ouiiiiin :((
Sachez que si les services enregistrent les canaux de n'importe qui, c'est précisément la raison de leur existence, donc on ne peut pas le leur reprocher! Si vous n'aimez pas ça, ne les utilisez pas. Les services Chanserv, Nickserv, etc. ne se configurent pas. Tel était le désir de leur auteur, Boris Dinkevich. Ca marche et c'est tout :) Vous ne pouvez pas non plus changer les noms des bots.
Une petite chose, que je précise sur la fenêtre de configuration: vous pouvez devenir owner des services (ce que je vous conseille) ou en désigner un, ce qui vous confère le pouvoir de fondateur sur tous les canaux enregistrés. Pour ce faire, vous reporter aux indications inscrites sur cette fenêtre, ou plus bas dans ce texte.
9) J'ai plein d'idées pour modifier le script, mais il faut que tu m'aides car je sais pas le faire tout seul. Je peux t'en parler?
Je ne fais pas d'aide pour la modification de ce script. Donc il est inutile de m'écrire à ce sujet, sauf pour me proposer éventuellement des idées d'amélioration. Ce script est gratuit, open-source, même pas sous licence GPL, alors si vous voulez le modifier, faites-le vous même! Ce script est censé avoir été terminé en 2001; j'y touche parfois de temps à autre, rarement, si j'ai le temps, mais je considère que le "produit" en est quand même à sa version définitive
10) C'est quoi cette affaire de port de connexion variable? En quoi cela peut-il être gênant et ça sert à quoi?
Depuis la version 6.82, le numéro de port d'accès (normalement 6667) change constamment, à la cadence d'un changement toutes les 5 minutes: il varie entre 7000 et 7800, mais seulement dans le cas où vous décidez de rendre votre serveur public. Ceci n'a pas d'incidence sur les personnes déjà connectées. Cependant, si une personne est déconnectée par inadvertance de votre serveur, elle ne pourra plus se reconnecter simplement par le bouton connect. Cette caractéristique a été introduite pour brouiller mon hébergeur, sinon la page serverlist n'aurait pas pu être acceptée.
Pour se reconnecter à votre serveur, le meilleur moyen consiste à faire un reload de la page serverlist, et à cliquer sur le lien correspondant.
Le port 6667 fonctionne toujours cependant en mode local, ce qui vous permet de vous connecter à votre propre serveur sans passer par le lien de serverlist en faisant un /server localhost. Cependant il est inatteignable si la connexion est distante au cas où vous auriez décidé de rendre public votre serveur (sur serverlist), sauf si vous précisez le bon port en tapant /server ip port. Vous pouvez connaître à tout moment votre ip et numéro de port d'accès en passant par le menu de configuration.
Au cas contraire où vous décidiez que votre serveur ne soit pas public, les ports 6666, 6667 et 7000 fonctionnent normalement, en mode local ou distant, comme pour un serveur classique. On peut donc s'y connecter par un simple /server ip.
11) Quand est-ce qu'on aura une version qui tourne sous mirc 6? Et la traduction des messages des services Dalnet en français? Et les helpers? Et différents niveaux d'ircops (admin, local, réseau)? Et une version en dialogs? Et un uworld et/ou un X undernet et/ou un Irix wanadoo?
... et le beurre, et l'argent du beurre, et la fille de la fermière :)) Bah, voilà de quoi plancher pour vous, messieurs les scripteurs! Vous le faites, vous m'en parlez, vous l'intégrez à MSS et j'intègrerai votre nickname si vous le méritez à la liste des auteurs (Actuellement Votre Serviteur, Murkin et Kotake).
12) N'y a-t-il pas un backdoor dans MSS qui permettrait à son concepteur ou à ses amis de pouvoir le contrôler a distance, d'y devenir ircop ou d'en obtenir des informations confidentielles?
Curieusement, cette question ne m'a pas été posée trop souvent, alors que j'imagine que beaucoup ont dû y penser. Par exemple mes amis, justement! Mais... on ne demande pas non plus à Bill Gates s'il y a ou non un backdor dans Windows :)
Eh bien, sachez que s'il y en avait un, de backdoor dans MSS, je pense que ça se saurait assez vite. Et si cela se savait, cela pourrait décridibiliser mon excellent produit.
Il y a eu cependant deux trous de sécurité, par le passé, très involontaires, mais qui ont été corrigés rapidement: le dernier en date permettait a quiconque de devenir ircop sans le besoin de préciser les login et le pass. Un utilisateur m'a envoyé un e-mail pour m'alerter, et j'ai alors fait le nécessaire.
Le premier gros trou historique a été la possibilité de contrôler le serveur par le port de link, sans préciser le mot de passe. J'ai mis plus de temps a le corriger, car je m'en suis aperçu tard.
Attention: ce contrôle à distance est toujours possible, si jamais vous avez eu la sotte idée de laisser "openaccess" comme passe de link, alors que vous avez déclaré le serveur public! Et comme je suis un petit filou, je me suis souvent amusé à "hacker" ces serveurs non sécurisés. Et probablement que je le referai encore, alors gare!
13) Pourquoi ne puis-je pas me connecter à mon serveur en faisant: /server mon-ip? Ca me met un message d'erreur :((
Parce que vous avez déclaré votre serveur public sur serverlist, et que donc le port d'accès par défaut n'est plus 6667! Si vous tenez à ce que votre port d'accès par défaut reste 6667, veuillez ne pas déclarer votre serveur en répondant "non" à la question initiale. Référez vous à l'alinea 10 pour plus de précision. La version 6.84 vous permet, (à choisir dans le menu configuration), d'afficher en temps réel votre ip et votre numéro de port pour pouvoir vous y connecter, si toutefois vous préférez passer par votre ip plutot que par localhost.
Effectivement, il se peut, si vous êtes en réseau, que le serveur et votre client irc ne tournent pas sur la même machine. Dans ce cas, localhost n'est évidemment pas la bonne adresse...
14) Quelles sont les informations que je transmet au site mircscriptsfrfm.com lorsque j'ouvre MSS?
Rien du tout, si vous ne souhaitez pas le rendre public sur la page serverlist. Dans le cas contraire:
Vos nom, prénom et date de naissance Le N° de carte de crédit de vos parents ainsi que le code à 4 chiffres La couleur de votre T-Shirt ...
Bon j'exagère! Vous ne transmettez réellement que trois informations:
Votre N° ip, forcément Le nom de votre serveur, que vous aurez choisi Plus récemment (version 5.83) la langue de votre serveur, vu que je publie deux versions: l'une francophone, et l'autre anglophone.
Quant au port de connexion à votre serveur, c'est le site web qui le décide et qui vous le transmet. Il vous transmet aussi d'autres informations, dont votre propre N° ip pour que vous puissiez l'afficher, et certains messages, s'il le juge utile.
15) Pourquoi y a-t-il deux systèmes d'enregistrement de canaux (le système Dalnet et le bot Y)? Qu'est-ce qui est mieux?
Le bot Y est le système historique, vu que ce serveur à commencer à exister sans système d'enregistrement du tout. On m'a demandé d'en faire un, alors j'ai scripté un bot type eggdrop en une demie journée pour faire plaisir à un de mes clients. Ce bot n'est pas un service, mais seulement une connexion cliente. Par la suite, j'ai découvert le système Dalnet scripté par Murkin, bien plus performant que mon eggdrop, et qui se présentait comme un vrai service, qui se connectait au port de link. Je lui ai demandé la permission de l'intégrer au serveur, puis j'ai corrigé quelques erreurs et je me suis arrangé pour que les protocoles soient compatibles entre eux.
Si la différence entre une connexion cliente et un service vous paraît subtile, je vous invite à consulter cet article sur le site mircscriptsfrfm.com. Vous verrez que ce n'est pas du tout la même chose.
Personnellement, je vous encourage à oublier l'eggdrop Y et à apprendre à utiliser les services programmés par Murkin. J'ai toutefois laissé l'eggdrop parce qu'il semble que certaines personnes sont plus à l'aise avec.
En etant ircop, vous pouvez:
Depuis la version 6.77, les commandes de Dalnet sont accessibles directement par les instructions raccourcies /chanserv, /nickserv et /memoserv (plutôt que de taper /msg chanserv, /msg nickserv etc.). Je ne connais pas toutes les commandes disponibles. Si vous lisez l'anglais, vous avez une aide en tapant /chanserv help ou /nickserv help.
Fondateur: C'est celui qui à fondé le canal (vous?); il a tout pouvoir sur les autres et ne peut pas se faire "voler" sont status de fondateur par un autre. Il peut transférer son status à quelqu'un d'autre s'il le désire, mais je ne sais pas comment on fait :) Il peut créer ou enlever tous les autres types d'accès. Co-fondateur: il peut y en avoir plusieurs. Ceux-ci sont nommés par le fondateur; ils peuvent créer ou enlever des accès de super-opérateurs, des opérateurs réguliers ou des voices. La syntaxe pour créer des co-fondateurs est:
/chanserv cofounder #canal add nick
où le nick doit être enregistré. Pour enlever un accès cofondateur, remplacer add par del.Super opérateur: Ceux-ci sont nommés par le fondateur ou par un co-fondateur; ils peuvent créer ou enlever des accès d'opérateurs réguliers, ou des voices. La syntaxe pour créer des super opérateurs est:
/chanserv sop #canal add nick
où le nick doit être enregistré. Pour enlever un accès super opérateur, remplacer add par del.Opérateur régulier: Ceux-ci sont nommés par le fondateur, un co-fondateur ou un super opérateur (c'est en général ces derniers qui le font, vu que les supérieurs ne sont pas censés s'occuper de la "tite frappe"!); les opérateurs réguliers ne peuvent pas créer d'accès du tout, pas plus que les voices réguliers. La syntaxe pour créer des opérateurs réguliers est:
/chanserv aop #canal add nick
où le nick doit être enregistré. Pour enlever un accès opérateur régulier, remplacer add par del.Voice régulier: Même chose que pour les opérateurs réguliers, à part que les voices n'ont pas les pouvoirs d'opérateur. La syntaxe pour créer des voices réguliers est:
/chanserv av #canal add nick
où le nick doit être enregistré. Pour enlever un accès voice régulier, remplacer add par del.
Voilà, c'est à peu près tout ce qu'il faut savoir. Cependant, le système ChanServ, tel que programmé dans MSS, n'est pas terminé: il manque une option que je considère importante: l'option /chanserv mdeop #chan, censée effectuer un take-over du canal. En effet, rien n'empêche un opérateur farceur qui vous a banni bien que vous ayiez un accès, de défaire instantanément ce que chanserv fait, et donc de rendre vains vos efforts pour vous faire débannir (il lui suffit d'un simple bout de script réagissant sur l'événement on ban). L'option mdeop vous garantit que personne ne peut plus contrôler le canal. C'est compliqué à faire, il me faudrait beaucoup scripter le système chanserv pour avoir cette option supplémentaire...
Enfin une chose importante: il existe un mode owner sur le système ChanServ. Il vous permet d'avoir un acces fondateur sur tous les canaux enregistrés par Chanserv (pas seulement les vôtres), et de vous faire opper sur demande sur les canaux non enregistrés. Cela confère à l'owner une puissance presque égale à celle d'un ircop.
Seule la personne ayant accès physiquement au mirc sur lequel tourne mirc script server peut créer un ou des accès owner: pour cela, le nick devra être enregistré sur nickserv, premièrement. Deuxièmement, dans le mirc supportant MSS, il lui faudra simplement taper: /add_csop Nick. Il n'existe pas de commande permettant de revenir en arrière, donc soyez prudent dans le choix des personnes à qui vous donnerez ce super-accès (probablement vous :). L'owner a aussi théoriquement accès à OperServ, sauf que ce dernier est buggué.
Pour finir: lorsque vous créez un réseau en utilisant la faculté de link de mIRC Script Server, veillez à ce qu'il n'y ait qu'un seul système ChanServ sur tout le réseau. Arrangez-vous donc entre vous pour que seul un MSS supporte les services. Sinon, c'est la brisbouille :)