This guide provides a detailed step-by-step process for installing InspIRCd on a Debian 10 server. InspIRCd is a powerful IRC server designed for UNIX-like systems, such as Linux distributions and BSD variants. It is a popular choice for smaller user networks, offering an alternative to other IRC servers like UnrealIRCd or Quassel. By using TCP connections with clients rather than raw UDP packets, InspIRCd is believed to deliver superior performance compared to traditional IRC protocol stacks. It also features its own scripting language, AngelScript, which allows for advanced functionalities like scripted control channels, CTCP replies, custom commands, and more.
Prerequisites
This guide assumes you are installing InspIRCd on a Debian 10 server with a non-root account and correct SSH access configuration.
Getting Started
Update Your Server
Start by updating your server using the command below:
sudo apt update && sudo apt upgrade -y
Executing this command will check for any pending security updates that need installation and load the most recent packages. The duration will vary depending on your server’s speed and internet connection.
Add a New User
Next, create a new user. You can choose any name. In this example, we’ll create a user named “newircd”:
sudo adduser newircd
Set a secure password at the prompt for your new user. It’s advised not to use root or default administrator’s credentials for any server. Once done, you can set other options like the shell or home directory, but we will stick with defaults for now.
Add the “newircd” user to the sudo group, granting them full access to run commands system-wide:
sudo /sbin/usermod -a -G sudo newircd
The /sbin/usermod -a
command adds the user “newircd” to the existing “sudo” group. The -G
option ensures the user is placed in the sudoers file without being listed in other files.
Navigate to the home directory and install necessary dependencies:
cd
sudo apt install git perl g++ make -y
This command installs the required git, perl, and g++ packages. The -y
option allows for proceeding without manual confirmation.
Install InspIRCd
Download the latest release of InspIRCd from GitHub and store it in the current working directory:
wget https://github.com/inspircd/inspircd/archive/refs/tags/v3.10.0.tar.gz
Extract the InspIRCd package using the tar
command:
tar xvf v3.10.0.tar.gz
Navigate to the “inspircd-3.10.0” directory and begin the pre-compilation configuration:
cd inspircd-3.10.0
perl ./configure
You will be prompted for the installation directory. Use the full path “/home/newirc/inspircd-3.10.0/” as your directory, then proceed.
Compile and install the application by running:
make
make install
Wait for the compilation to complete, then proceed with installation using the above command.
Use the included configuration files to set up your IRC server:
sudo nano /home/newircd/inspircd-3.10.0/run/conf/inspircd.conf
Modify the configuration file as necessary:
<config format="xml"> <define name="bindip" value="1.2.2.3"> <define name="localips" value="&bindip;/24"> <server name="chat.inspircd.co" description="Welcome to inspircd World" id="97K" network="chat.inspircd.co"> <admin name="jun naruse" nick="naruse" email="naruse@inspircd.co"> <bind address="" port="6697" type="client">
Save by pressing CTRL-X, confirm with ‘y’, and enter to save your changes.
Start the InspIRCd service:
./inspircd start
If you have a firewall enabled, ensure permission for ports is granted to allow connections.
Testing InspIRCd
Open your preferred IRC client. Add a server or network using your server’s IP and the designated account password, then connect:
If no error messages appear, your IRC server is operational:
Conclusion
Congratulations! You have successfully installed InspIRCd on Debian. Your IRC server is now active, and you can start creating channels for engaging discussions on topics of your choice!
FAQ
What is InspIRCd?
InspIRCd is an IRC server application designed for UNIX-like systems, providing robust performance and advanced features for small user networks.
Why should I use InspIRCd over other IRC servers?
InspIRCd is favored for its use of TCP connections, believed to offer better performance than traditional IRC setups. Its scripting capabilities with AngelScript also provide extensive custom functionalities.
Is it necessary to create a new user for installation?
Creating a new user enhances security by preventing root-level access for running your IRC server, minimizing risks associated with administrative credentials.
How can I ensure connections are allowed through my firewall?
Check your server’s firewall settings to ensure ports used by InspIRCd are open and can accept incoming connections, confirming seamless client-server communication.