IRC services

From IRC Wiki
Jump to navigation Jump to search

IRC services are a specific kind of extension to an IRC server, mostly linked similarly to how other IRC daemons are linked into a network, to an IRC server of a network and provide additional functionality, e.g. registering nicknames and channels or changing the displayed hostnames. Usually, only one service of a specific type (e.g. for nickname registration) may be used at a time in a network.

The IRC services then spawn multiple IRC bots that look like regular users and can be talked to to issue commands, also called services bots. They are used to interface to the services.

A few examples of services packages that implement such services bots and extensions are Anope, Atheme, Epona and srvx. Not all of them are compatible with all pieces of IRC server software and therefore the right one needs to be picked for each IRC daemon.

Most common types of services extensions

Nickname registration

Nickname registration allows to register a nick with a password which the user chooses and only the user knows. A nickname may only be registered by a single user. The concept of a nickname registration basically helps with two issues:

Better identification of users

Nickname registration provides an additional layer of passworded identification since technically, anyone can take any nick on IRC as long as it is free so that this isn't a reliable mean of identifying someone. If a person is taking a registered nick, noone else is able to take it due to the nick requiring a password by the registering person and therefore this helps to determine that a user is not someone else (providing a consistent identity, not assisting in any way to reveal the real identity of course).

Reserving a nickname and blocking others from using it

Sometimes, depending on whether the more restrictive NickServ approach instead of a more open AuthServ is used, the nick registration also serves to block a nick for all other users so that nobody else can use it (independently from whether someone shows up as identified for that nick). Using AuthServ, nicks can still be taken but only the owner will show up as identified. The nick registration then doesn't reserve the nicks and only serves as an instrument for identification.

Nickname groups

Some NickServ implementations allow nickname groups whereas a single user can register multiple nicknames which are then grouped together which allows the user to register as many nicks as needed while uniting all his privilegues and abilities into all of them.

Channel registration

Channel registration helps against channel takeover attempts and removes the need to constantly stay online, opped and idling in a channel to keep control over it since it is then also protected with a password. Often, the services also allow to add custom ban lists, access lists that allow automatic opping of registered people (see nickname registration) on join to help in maintaining control of the channel also in absence of the channel owner.

Common services bots

See also the main article → List of services bots

The most common services bots are NickServ or AuthServ for nickserv registration and ChanServ for channel registration. For a more extensive list, check the services bots list.

Extended services

Extended services provide unusual additional services that often aren't directly usable by the user but instead generate statistics (StatServ), or to check/scan users for open proxies or usage of blacklisted ips etc. Probably all services that are mainly focussed on security instead of providing some specific functionality to a user can be counted into this area.

A few examples are BOPM (a proxy scanner/blacklist lookup service), Defender (modular, scripted security service to detect trojans and other things), Omega (also a security service), Denora and NeoStats (both services that create statistics).