Enable Mibbit on Your IRC Server

From Mibbit Wiki
Revision as of 16:21, 19 November 2008 by Jobe (talk | contribs) (Nefarious ircu: Added new Nefarious config example.)
Jump to: navigation, search

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
  • Email us your server name eg irc.blah.com and webirc password to webirc@mibbit.com

Unrealircd

Sample unrealircd config:


cgiirc {
       type webirc;
       hostname 64.62.228.82;
       password <password>;
};


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;
};

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:*@<mibbitsip>:<password>::*:

Sample config for Nefarious 1.3 up to revision 2244:

W:*@<mibbitsip>:<password>:s:mibbit:"Mibbit"

Sample config for Nefarious 1.3, revision 2245 and beyond:

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

For <mibbitsip> use 64.62.228.82

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 is 64.62.228.82

Configuration examples