Ircd-Hybrid is a free, lightweight, stable, and high-performance IRC server for small, private networks or public networks then can be used for Raspberry Pi as IRC Server.

The function of IRC is for group communication in discussion forums, called channels, but also allows one-to-one communication via private message as well as chat and data transfer , including file sharing

Install Ircd-Hybrid

In order for the Raspberry Pi to act as Internet relay chat server you need to install packages on the Raspberry. You are going to need the following packages:

  • Ircd-Hybrid
    ircd-hybrid is a powerful Internet Relay Chat daemon frequently used on the popular EFnet IRC Network.

To install the Ircd-Hybrid packages run following command:

If there are no error at installation you can continue to next step.

Configure Ircd-Hybrid

To configure the Ircd-Hybrid, you need edit the config at /etc/ircd-hybrid folder with root permissions.

After you’ve on nano edit’s interface you can edit the Ircd-Hybrid configuration.

The Configuration

The configuration is summarized to important only some configuration is not showed.

[Server Info]

Name of your IRC Server 

Description of your IRC Server

Network name and Description on your IRC Server

Max Client that can connect to your IRC Server

[Admin]

Admin information for your IRC Server

[Operator]

Operator name credentials for login into your IRC Server

*@* means that allow all username and IP to login as operator for the IRC Server

Operator password credentials for login into your IRC Server (use mkpasswd to replace the password configuration)

[Listen]

IRC Server listen and port number configuration

IRC Message of the day (MOTD)

You can change the MOTD for Ircd-Hybrid IRC Server, To configure you need to edit the config at /etc/ircd-hybrid/ircd.motd files with root permissions

Restart Ircd-Hybrid

To apply the changes you need to restart the Ircd-Hybird server, You can do so by following :

Testing

To test if Ircd-Hybrid working properly on client

– In Windows

  1. Download IRC Client Ex : Pidgin , mIRC , HexChat and X-Chat
  2. In networks section – select add
  3. In server tab – Edit newserver/6667 to 192.168.x.x/6667 (IRC IP Address and Port)
  4. Select autojoin channel tab *if you want join irc channel automaticaly (Optional)
  5. Enter password if your irc server is protected with password
  6. Select close and connect

At instructions above , I’m testing with HexChat IRC Client

– In Linux

  1. Download IRC Client (e.g. Pidgin, Smuxi IRC, Quasel IRC, and XChat)
  2. Choose add
  3. In login options – select protocol
  4. Select IRC and type username (Nickname)
  5. Type server with your IRC Server IP
  6. Type password *If your server is protected with passsword
  7. Type local alias (Nickname)
  8. Click close
  9. Select Buddies – Join a Chat – Room List
  10. Select your IRC room channel
  11. Then click join

At instructions above , I’m testing with Pidgin IRC Client

– In Android

  1. Download IRC Client Ex : AndChat , AndroIRC , Simple IRC  or WhatsChat IRC
  2. Select Add – Fill name , address , port (optional).
  3. Type your nickname in Nick 1 , Nick 2 , Nick 3 , Username and Real Name
  4. In Other Details – Type Autojoin list (Optional)
  5. Press save
  6. Then select connect

At instructions above , I’m testing with AndChat IRC Client

How to Be Server OP (Operator)

  1. Use IRC Client which support OP Mode ex : Hex-Chat , mIRC or X-Chat
  2. Connect to your IRC via IRC Client
  3. In server room , type /oper <opname> <oppassword> *Without <>
  4. Now you are OP on your IRC Server.

Troubleshooting

– If client can’t connect your IRC Server

  • Disable firewall or add IRC client to the firewall exception.
  • Read log from IRC server to troubleshoot the problem.

– If client get random disconnect from IRC Server

  • In client’s firewall try enable : Maintain inactive TCP services.
  • In client’s firewall try disable : TCP inspection and verification.

References

  1. Ircd-Hybrid – Freecode
  2. Wikipedia (IRC)
  3. Images – Source: mapsof.net / CC BY-SA 1.0