This is an old revision of the document!


Setting up the Nefarious IRC Server Software (ircd)

ssh into your server.

Then run:

svn co https://evilnet.svn.sourceforge.net/svnroot/evilnet/branches/nefarious-1.2/

The system will begin to download the latest version of the nefarious ircu.

Before we continue, we'd like to make sure you have the packages needed for a successful install. So be sure you have the packages below installed on your box:

openssl
libssl-dev (for enabling ssl -- openssl-devel on redhat)
autoconf (to avoid errors when running make)
automake

The named packages above can be fetched (on a Debian based system) with apt-get:

sudo apt-get install openssl libssl-dev autoconf automake

Note: The names of the packages above may vary, depending on your distribution.

With that said, we now move on to getting the server up and running.

cd nefarious

For your own convenience, we recommend using one centralized directory when running the configure script (it's up to you though). And DO NOT forget to enable ssl:

./configure --libdir=/home/user/ircd --mandir=/home/user/ircd --bindir=/home/user/ircd --enable-ssl

Once that is done, run:

make

Then:

make install

If everything runs smoothly you should now have an ircd directory:

cd /home/user/ircd

Then fetch the ircd.conf to the ircd directory:

wget -O ircd.conf http://www.afternet.org/downloads/ircd.conf

You'll have to edit the configuration file a bit (for simplicity, nano is used in this example):

nano ircd.conf

Change the M:line to look similar to this:

M:MyServerName.US.AfterNET.Org:*:Your Server Description Here::YourNumeric

Where YourNumeric would be changed to a number we give you.

Next change the A:line:

A:YourNickname:yourdomain.com:youremail@yourdomain.com

You might also want to give yourself an O:line, otherwise you can't oper up. Now save the file.

You are now ready to start your IRC server, run:

./ircd

That will start the ircd. Test it by connecting to your server. Installing the cronjobs needed Cron is the system scheduled jobs manager. We generally run 3 jobs to help maintain the ircd. To edit the cron list, login with the account on which you want the scheduled jobs to run under, and run:

crontab -e

The syntax of the file is as follows:

  # Min Hour  Day   Month   DOW
  */5   *       *       *          *      /path/to/program.sh

read the unix manual to crontab for more information.

Please install the following cronjobs:

linesync

linesync updates your server 2x a day with the latest k: lines, features, and server connection lines. It is required. You should receive it from us when your testlink is approved.

0 */12 * * * /home/user/ircd/linesync.sh /home/user/ircd/ircd.conf /home/user/ircd/ircd.pid

checkircd.sh

This gem checks if the irc server is running, and if it isnt, starts it up. This will keep the ircd up after reboots, or in the case of a crash. Create the file using a text editor, pasting this code in:

#!/bin/sh
# don't start the server if it is already running
procs=`ps x`
if echo "$procs" | grep ./ircd > /dev/null; then
   exit
fi
cd /home/irc/ircd
./ircd

(be careful to use the right kind of `` ticks!)

chmod a+x checkircd.sh to make it executable
*/5 * * * * /home/user/checkircd.sh
syncheck

syncheck is our anti-ddos attack tool, you should have received from us on successful testlink. It requires iptables, and thus root access: Put it in /root (or wherever you want) and as root run:

crontab -e

And install the following cronjob:

*/5 * * * * sh /root/syncheck

With these cronjobs installed, you are now ready to link your server to the network.