This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| help:technical:ircd [2010/02/08 07:30] – dcraig | help:technical:ircd [2020/05/19 17:58] (current) – [gitsync] rubin | ||
|---|---|---|---|
| Line 3: | Line 3: | ||
| ssh into your server. | ssh into your server. | ||
| - | Then run: | ||
| - | svn co https:// | ||
| - | 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. | Before we continue, we'd like to make sure you have the packages needed for a successful install. | ||
| Line 13: | Line 10: | ||
| openssl | openssl | ||
| libssl-dev (for enabling ssl -- openssl-devel on redhat) | libssl-dev (for enabling ssl -- openssl-devel on redhat) | ||
| - | autoconf (to avoid errors when running make) | + | autoconf |
| automake | automake | ||
| + | flex | ||
| + | libpcre3-dev | ||
| + | byacc | ||
| + | gawk | ||
| + | | ||
| The named packages above can be fetched (on a Debian based system) with apt-get: | The named packages above can be fetched (on a Debian based system) with apt-get: | ||
| - | sudo apt-get install openssl libssl-dev autoconf automake | + | sudo apt-get install |
| Note: The names of the packages above may vary, depending on your distribution. | Note: The names of the packages above may vary, depending on your distribution. | ||
| + | |||
| + | run: | ||
| + | git clone https:// | ||
| + | |||
| + | The system will begin to download the latest version of the nefarious ircu. | ||
| With that said, we now move on to getting the server up and running. | With that said, we now move on to getting the server up and running. | ||
| - | cd nefarious | + | cd nefarious2 |
| - | For your own convenience, | + | For your own convenience, |
| - | ./configure --libdir=/home/user/ircd --mandir=/home/user/ircd --bindir=/home/user/ircd --enable-ssl | + | ./configure --libdir=$HOME/ircd --mandir=$HOME/ircd --bindir=$HOME/ircd |
| Once that is done, run: | Once that is done, run: | ||
| Line 42: | Line 48: | ||
| cd / | cd / | ||
| - | Then fetch the ircd.conf to the ircd directory: | + | Then fetch the [[http:// |
| wget -O ircd.conf http:// | wget -O ircd.conf http:// | ||
| - | |||
| - | (or for 1.3 beta testing servers, use:) | ||
| - | wget -O ircd.conf http:// | ||
| - | |||
| You'll have to edit the configuration file a bit (for simplicity, nano is used in this example): | You'll have to edit the configuration file a bit (for simplicity, nano is used in this example): | ||
| - | nano ircd.conf | + | nano -w ircd.conf |
| - | + | ||
| - | Change the M:line to look similar to this: | + | |
| - | + | ||
| - | M: | + | |
| - | + | ||
| - | Where YourNumeric would be changed to a number we give you. | + | |
| - | Next change | + | Change |
| - | A: | + | Where YourNumeric will be changed to a number we give you before you link. |
| - | You might also want to give yourself an O:line, otherwise you can't oper up. Now save the file. | + | You might also want to give yourself an oper block, otherwise you can't oper up. Now save the file. |
| You are now ready to start your IRC server, run: | You are now ready to start your IRC server, run: | ||
| Line 82: | Line 78: | ||
| read the unix manual to crontab for more information. | read the unix manual to crontab for more information. | ||
| - | ===== Please install the following cronjobs: | + | ====== Install iauthd.pl ====== |
| - | ==== linesync ==== | + | iauthd provides for DNSBL blocking to protect us from drones. This script |
| - | 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/ | + | Requirements: |
| + | |||
| + | You will need to install some perl dependencies for this script to run. | ||
| + | |||
| + | Debian/Ubuntu/Mint: | ||
| + | |||
| + | sudo apt-get install libpoe-perl libpoe-component-client-dns-perl libterm-readkey-perl libfile-slurp-perl libtime-duration-perl | ||
| + | |||
| + | Fedora/Redhat/Centos: | ||
| + | |||
| + | yum install perl-POE perl-POE-Component-Client-DNS perl-TermReadKey perl-slurp perl-Time-Duration | ||
| + | |||
| + | Freebsd: | ||
| + | |||
| + | ports dns/ | ||
| + | |||
| + | CPAN: | ||
| + | |||
| + | cpan install Term:: | ||
| + | |||
| + | Installation: | ||
| + | |||
| + | Simply copy the script from the / | ||
| + | |||
| + | | ||
| + | |||
| + | Now edit your ircd.conf | ||
| + | |||
| + | IAuth { | ||
| + | | ||
| + | }; | ||
| + | |||
| + | Now, save the file and / | ||
| + | |||
| + | / | ||
| + | |||
| + | This should show something similar to this: | ||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | If you would like to learn more about iauth please visit our [[https:// | ||
| + | |||
| + | ====== Please install the following cron jobs: ====== | ||
| + | |||
| + | ===== gitsync ===== | ||
| + | gitsync updates your server every hour with the latest k: lines, features, and server connection info. It is required. There is a copy in nefarious2/ | ||
| + | |||
| + | You must have an SSH key setup for the user that runs ircd. This is normally in '' | ||
| + | |||
| + | Once you have been given access, you must initialize the repository: '' | ||
| + | |||
| + | If that works, you'll have our server list and additions added to your ircd.conf, and a new certificate (.pem) file. | ||
| - | ==== 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 | + | 0 0 * * * /home/user/ircd/gitsync.sh -s /home/ |
| - | # don't start the server if it is already running | + | |
| - | procs=`ps x` | + | |
| - | if echo " | + | |
| - | | + | |
| - | fi | + | |
| - | cd /home/irc/ircd | + | |
| - | ./ircd | + | |
| </ | </ | ||
| - | (be careful to use the right kind of `` ticks!) | ||
| - | |||
| - | For unknown reasons, using cd to change directories and then starting the script via ./ircd doesn' | ||
| + | ===== 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 | #!/bin/sh | ||
| # don't start the server if it is already running | # don't start the server if it is already running | ||
| procs=`ps x` | procs=`ps x` | ||
| - | if echo " | + | if echo " |
| exit | exit | ||
| fi | fi | ||
| - | /home/irc/ircd/ircd | + | /home/user/ircd/ircd |
| </ | </ | ||
| (be careful to use the right kind of `` ticks!) | (be careful to use the right kind of `` ticks!) | ||
| - | chmod a+x checkircd.sh to make it executable | + | Make the script |
| < | < | ||
| - | */5 * * * * /home/user/checkircd.sh | + | chmod a+x 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: | + | And add a cron job: |
| - | crontab -e | ||
| - | |||
| - | And install the following cronjob: | ||
| < | < | ||
| - | */5 * * * * sh /root/syncheck | + | */5 * * * * /home/user/ |
| </ | </ | ||
| + | |||
| With these cronjobs installed, you are now ready to link your server to the network. | With these cronjobs installed, you are now ready to link your server to the network. | ||