Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
help:technical:ircd [2012/01/26 19:25]
voice Adding byacc to the packages list, otherwise Debian systems will refuse to compile Nefarious.
help:technical:ircd [2015/06/25 20:38]
rubin
Line 4: Line 4:
  
 Then run: Then run:
-  svn co https://evilnet.svn.sourceforge.net/svnroot/evilnet/branches/nefarious-1.3/+  git clone https://github.com/evilnet/nefarious2.git
  
 The system will begin to download the latest version of the nefarious ircu. The system will begin to download the latest version of the nefarious ircu.
Line 27: Line 27:
 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-1.3+  cd nefarious2
  
 For your own convenience, we recommend using one centralized directory when running the configure script (it's up to you though). ssl is enabled now by default. The following will install everything into $HOME/ircd/ For your own convenience, we recommend using one centralized directory when running the configure script (it's up to you though). ssl is enabled now by default. The following will install everything into $HOME/ircd/
Line 75: Line 75:
 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 is include in the source nefarious2 was created when cloning the git repository to your server. 
-linesync updates your server twice a day with the latest k: lines, features, and server connection info. It is required. You should receive it from us when your testlink is approved. ([[:opers:admin|Opers can get it here...]])+ 
 +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/p5-POE-Component-Client-DNS devel/p5-Time-Duration devel/p5-File-Slurp devel/p5-Term-ReadKey 
 + 
 +CPAN: 
 + 
 +  cpan install Term::ReadKey POE::Component::Client::DNS File::Slurp Time::Duration 
 + 
 +Installation: 
 + 
 +Simply copy the script from the /nefarious2/tools/iauthd.pl into the same directory as your ircd.conf file resides in order to make configuration easier.  
 + 
 +   Example: cp tools/iauthd.pl /home/your_ircd/ircd/lib/ 
 + 
 +Now edit your ircd.conf file and add the following block: 
 + 
 +   IAuth { 
 +       program = "/usr/bin/perl" "iauthd.pl" "-v" "-d" "-c" "ircd.conf"; 
 +   }; 
 +    
 +Now, save the file and /rehash.  I all goes well you can verify that the script is functional by running the following command: 
 + 
 +   /stats iauth 
 +    
 +This should show something similar to this: 
 + 
 +   iauthd.pl :Up since Thu Jun 25 06:06:34 2015 (20 hours and 47 minutes) 
 +   iauthd.pl :Cache size: 837/2048 
 +   iauthd.pl :Total Passed: 197 
 +   iauthd.pl :Total Rejected: 14 
 +   iauthd.pl :dnsbl.sorbs.net (2,3,4,5,6,7,9):
 +   iauthd.pl :dnsbl.dronebl.org (2,3,5,6,7,8,9,10,13,14,15):
 +   iauthd.pl :rbl.efnetrbl.org (4): 17 
 +   iauthd.pl :rbl.efnetrbl.org (1,2,3,5): 0 
 +   iauthd.pl :dnsbl-2.uceprotect.net (2): 0 
 +   iauthd.pl :6667.173.122.134.230.173.ip-port.exitlist.torproject.org (2): 0 
 +   iauthd.pl :80.204.128.107.97.ip-port.exitlist.torproject.org (2): 10 
 +   iauthd.pl :443.204.128.107.97.ip-port.exitlist.torproject.org (2): 10 
 +   iauth: End of /STATS report          
 + 
 +If you would like to learn more about iauth please visit our [[https://github.com/evilnet/nefarious2/wiki/Setting-up-iauthd.pl|GitHub Wiki]] 
 +  
 +====== Please install the following cron jobs: ====== 
 + 
 +===== linesync ===== 
 +linesync updates your server every hour with the latest k: lines, features, and server connection info. It is required. You should receive it from us when your testlink is approved. ([[:opers:admin|Opers can get it here...]])
  
 <code> <code>
-*/12 * * * /home/user/ircd/linesync.sh /home/user/ircd/ircd.conf /home/user/ircd/ircd.pid+* * * /home/user/ircd/linesync.sh /home/user/ircd/ircd.conf /home/user/ircd/ircd.pid
 </code> </code>
  
-==== checkircd.sh ====+===== 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: 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:
 <code> <code>
Line 90: Line 148:
 # 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 "$procs" | grep ./ircd > /dev/null; then+if echo "$procs" | grep /home/user/ircd/ircd > /dev/null; then
    exit    exit
 fi fi
-cd /home/irc/ircd +/home/user/ircd/ircd
-./ircd +
-</code> +
-(be careful to use the right kind of `` ticks!) +
- +
-For unknown reasons (and particularly on Ubuntu), using cd to change directories and then starting the script via ./ircd sometimes doesn't work, so try this: +
- +
-<code> +
-#!/bin/sh +
-# don't start the server if it is already running +
-procs=`ps x` +
-if echo "$procs" | grep /home/irc/ircd/ircd > /dev/null; then +
-   exit +
-fi +
-/home/irc/ircd/ircd+
 </code> </code>
 (be careful to use the right kind of `` ticks!) (be careful to use the right kind of `` ticks!)
Line 122: Line 166:
 */5 * * * * /home/user/checkircd.sh */5 * * * * /home/user/checkircd.sh
 </code> </code>
-==== 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: 
-<code> 
-*/5 * * * * sh /root/syncheck 
-</code> 
 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.