Difference between revisions of "Enable Mibbit on Your IRC Server"

From Mibbit Wiki
Jump to: navigation, search
(WEBIRC (Best method): no "public" entry when main connect fails)
(Nefarious ircu)
Line 73: Line 73:
 
Sample config for Nefarious 1.2:
 
Sample config for Nefarious 1.2:
  
  W:*@{{Template:Mibbit_IP}}:<password>::*:
+
  W:*@{{Template:Mibbit_IP}}:<password>:*::
  W:*@{{Template:Mibbit_WIDGET_IP}}:<password>::*:
+
  W:*@{{Template:Mibbit_WIDGET_IP}}:<password>:*::
  
 
Sample config for Nefarious 1.3 up to revision 2244:
 
Sample config for Nefarious 1.3 up to revision 2244:

Revision as of 23:34, 29 December 2008

Wiki Home | FAQ | Features | IRC Commands | IRC Modes | Widget Information | Widget: WebIRC Server Setup | URI Parameters | Wish List | Registration Information | Mibbit Staff

Home | Quick Start Guide | Live Mibbit Help



If you own an IRC server, and would like to enable people to access it from Mibbit without issues, it's simple to get setup.

First of all, anyone who uses Mibbit connects from the same IP address to your IRC server. This needs to be handled by the IRC server. The default setup for most IRC servers is to only allow 3 or so connections from any single IP, which means that only 3 Mibbitians would be able to connect to the server. There are two solutions to this.

WEBIRC (Best method)

The webirc protocol allows mibbit to send over the users real IP address and hostname to the irc server. This means that cloaks, and bans, and all other hostname/IP based things work exactly as they should. When you whois the user, it'll look like they are connecting directly from their own IP, and not through Mibbit. This is also known as a cgiirc{} block on some servers.

If you wish to set this up, please:

  • Choose a webirc password
  • Configure your servers
  • Let us know your:
    • network/server mask, e.g., *.blah.(net|com|org)
    • webirc password
    • preferred server-name(:port), e.g., webirc.blah.net(:1234)
    • whether you want to see your server listed: public=[yes|no]
      • case "yes": the name you want to see in the main client's Home > IRC: dropdown list

You can ask a stuff member (ircop) to insert the data into the db (fastest method via PM) and/or send an email to webirc@mibbit.com . Note: if there are reports that the mibbit client cannot connect the "public" entry will be removed.

Unrealircd

Sample unrealircd config:

(Requires UnrealIRCd 3.2.5 or higher)

// For the main client :
cgiirc {
       type webirc;
       hostname 64.62.228.82;
       password <password>;
};

// For the widget (http://widget.mibbit.com/):
cgiirc {
       type webirc;
       hostname Template:Mibbit WIDGET IP;
       password <password>;
};

Note: UnrealIRCd builds pre-3.2.8 have cgiirc block bugs in IPv6 compiles of UnrealIRCd, Patch available here.


UnrealIRCD documentation

If your network has throttling set you will most likely want to add a throttle exception for Mibbit:

except throttle {
      mask 64.62.228.82;
};

except throttle {
      mask Template:Mibbit WIDGET IP;
};

If you limit connections per IP you will want to remove (or at least raise) that limit for Mibbit (the following example removes the limit completely):

allow {
       ip *@*;
       hostname *@mibbit.com;
       class clients;
};

Note: If you are experiencing problems with connection limits after using this configuration entry, try adding a maxperip parameter with a high limit number:

allow {
       ip *@*;
       hostname *@mibbit.com;
       class clients;
       maxperip 1000;
};

Nefarious ircu

Sample config for Nefarious 1.2:

W:*@64.62.228.82:<password>:*::
W:*@Template:Mibbit WIDGET IP:<password>:*::

Sample config for Nefarious 1.3 up to revision 2244:

W:*@64.62.228.82:<password>:s:mibbit:"Mibbit"
W:*@Template:Mibbit WIDGET IP:<password>:s:mibbit:"Mibbit"

Sample config for Nefarious 1.3, revision 2245 and beyond:

WebIRC {
  mask = "*@64.62.228.82";
  pass = "<password>";
  flags = "s";
  ident = "mibbit";
  desc = "Mibbit";
};

WebIRC {
  mask = "*@Template:Mibbit WIDGET IP";
  pass = "<password>";
  flags = "s";
  ident = "mibbit";
  desc = "Mibbit";
};

The password field is either plain text password or if you have F:CRYPT_OPER_PASSWORD:TRUE (default) you will need to use "/mkpasswd <password>" to crypt the password before adding it to the W:Line

To check the version and revision use "/version" or "/quote version" depending on your IRC client and then look for:

u2.10.11.07+Nefarious(<version>)+[<revision> <date>].

Other

The protocol is pretty simple. The first command sent to the server is:

WEBIRC <password> cgiirc <hostname> <ip>

The server then uses the hostname and ip for that connection.

Here is the hybrid module code: m_cgiirc.c


Send any questions/requests for adding your server to the list of approved servers to tech[at]mibbit.com

Trust/session limit increase

If webirc is unavailable, mibbit sends over the users IP address and hostname. In the ident reply, we send the users IP address in hex form. We also set the users realname to be their hostname. If you use this method, you can ban individuals on their username. You just need to increase the connection limit for the Mibbit IP, and please remember NOT to k-line/ban the whole of mibbit. Ban individuals instead.

Our IP for the main client is 64.62.228.82 Our IP for the widget is Template:Mibbit WIDGET IP

Configuration examples