Version 1.0
Stand: 23.11.2009
Author: Nico
E-Mail: mail@nicolas-maas.de
Dieses Howto beschreibt die Installation und Bedienung auf einem Server. Bevor ihr loslegt, beachtet bitte die folgenden Regeln:
- Ein eggdrop ist ein kleiner Helfer, der euch im Bereich IRC ( Internet Relay Chat ) hilft und stets auf euch hört.
- Debian - apt-get install eggdrop - ist aber nicht zu empfehlen, da man einige Addons nicht gleich dabei hat.
Also selber compilen, geht auf allen Systeme und zwar wie folgt:
( BITTE ALLE COMMANDS NICHT UNTER ROOT MACHEN SONDERN EINEN GESONDERTEN USER ANLEGEN!!! )
1 Vorbereitung - eggdrop user anlegen:
1.1 -
adduser eggdrop passwd eggdrop su - eggdrop
Pakete installieren:
apt-get install gcc make g++ tcl tcl8.5 tcl8.5-dev
1. Downloaden der Source -
wget http://geteggdrop.com/
Auf dieser Seite findet ihr immer den aktuellsten eggdrop, den es zurzeit gibt.
2. entpacken
tar xfz eggdrop*.tar.gz
3. compilen - Bitte vorher prüfen ob make,gcc,g++ und autoconf installiert sind, falls nicht nachinstallieren!
cd eggdrop* ./configure'' make iconfig
( Einfach alles mit „E“ bestätigen, so werden alle module compiled. )
make make install
All modules compiled. Test run of ./eggdrop -v: Eggdrop v1.6.19+ctcpfix (C) 1997 Robey Pointer (C) 2008 Eggheads (patches: ctcpfix) Eggdrop successfully compiled. Modules successfully compiled.
So, nun habt ihr den eggdrop soweit installier, jetzt nurnoch eine vernünftige Config.
cd .. rm -rf eggdrop1.6.19/ cd eggdrop
Und dann speichert ihr folgende config:
cat > /home/eggdrop/eggdrop.conf << "EOF" namespace eval bot { variable owner k1ng variable identd 1 variable ident k1ngb0t variable username k1ngb0t variable netnickname k1ngb0t variable nickname k1ngb0t variable alternativ k1ngb0t2 variable address eureip variable port euerport } ## }}} ## {{{ bot configuration finish set nick $bot::nickname set altnick $bot::alternativ set ident "bot::ident" set username $bot::username set admin "$bot::owner" set network "quakenet.org" set timezone "GMT" set offset "5" set my-ip $bot::address addlang "german" set max-logs 5 set max-logsize 0 set quick-logs 0 set raw-log 0 logfile mco * "logs/$bot::netnickname.log" set log-time 1 set keep-all-logs 0 set logfile-suffix ".%d%b%Y" set switch-logfiles-at 300 set quiet-save 0 set console "mkcobxs" set userfile "$bot::netnickname.user" set pidfile "pid.$bot::netnickname" set sort-users 0 set help-path "help/" set text-path "text/" set temp-path "/tmp" set motd "text/motd" set telnet-banner "text/banner" set userfile-perm 0600 set botnet-nick "$bot::netnickname" listen $bot::port all set remote-boots 2 set share-unlinks 1 set protect-telnet 0 set dcc-sanitycheck 0 set ident-timeout 5 set require-p 1 set open-telnets 0 set stealth-telnets 0 set use-telnet-banner 0 set connect-timeout 15 set dcc-flood-thr 3 set telnet-flood 5:10 set paranoid-telnet-flood 1 set resolve-timeout 15 set ignore-time 15 set hourly-updates 00 set owner "$bot::owner" set notify-newusers "$bot::owner" set default-flags "-" set whois-fields "url birthday" set die-on-sighup 0 set die-on-sigterm 1 set must-be-owner 1 set max-dcc 50 set allow-dk-cmds 1 set net-type 5 set realname "instant" set dupwait-timeout 5 set mod-path "modules/" set chanfile "$bot::netnickname.chan" set force-expire 0 set share-greet 0 set use-info 1 set global-flood-chan 0:0 set global-flood-deop 0:0 set global-flood-kick 0:0 set global-flood-join 0:0 set global-flood-ctcp 0:0 set global-flood-nick 0:0 set global-aop-delay 0 set global-idle-kick 0 set global-chanmode "" set global-stopnethack-mode 0 set global-revenge-mode 0 set global-ban-time 0 set global-exempt-time 0 set global-invite-time 0 set global-chanset { -autoop -autovoice -bitch -cycle +dontkickops +dynamicbans +dynamicexempts +dynamicinvites -enforcebans -greet -nodesynch -protectfriends -protectops -revenge -revengebot -secret -seen +shared -statuslog +userbans +userexempts +userinvites -protecthalfops -autohalfop } if {($bot::identd == "1")} { bind evnt - connect-server evnt:connect_server } bind evnt - init-server evnt:init_server proc evnt:connect_server { type } { set file [open ~/.oidentd.conf "w"] puts $file "global { reply \"$bot::ident\"}" close $file } set default-port 6668 set keep-nick 1 set strict-host 1 set quiet-reject 1 set lowercase-ctcp 0 set answer-ctcp 1 set flood-msg 5:60 set flood-ctcp 2:10 set never-give-up 1 set server-cycle-wait 60 set server-timeout 30 set servlimit 0 set check-stoned 1 set serverror-quit 0 set max-queue-msg 400 set trigger-on-ignore 0 set double-mode 0 set double-server 1 set double-help 0 set optimize-kicks 2 set stack-limit 4 set ctcp-mode 1 set bounce-bans 1 set bounce-modes 0 set max-bans 45 set max-modes 6 set kick-fun 0 set ban-fun 0 set learn-users 0 set wait-split 600 set wait-info 180 set mode-buf-length 200 set no-chanrec-info 0 set bounce-exempts 0 set bounce-invites 0 set max-exempts 20 set max-invites 20 set max-dloads 3 set share-compressed 1 set dcc-block 0 set copy-to-tmp 1 set xfer-timeout 30 set prevent-mixing 1 set modes-per-line 6 set nick-len 15 set use-exempts 0 set use-invites 0 set kick-method 1 set allow-resync 0 set resync-time 900 set include-lk 1 set use-354 1 #set rfc-compliant 1 #set private-global 0 #set private-globals "mnot" #set private-user 0 #set override-bots 0 #set compress-level 9 #set check-mode-r 1 #set env(TZ) "$timezone $offset" #set my-hostname6 "virtual.host.com" #set my-ip6 "2001:1:1:1::1" #set firewall "!sun-barr.ebay:3666" #set nat-ip "127.0.0.1" #set reserved-portrange 2010:2020 set files-path "/ala_/mydir/filesys" set incoming-path "/ala_/mydir/filesys/incoming" set upload-to-pwd 0 set filedb-path "" set max-file-users 20 set max-filesize 1024 set notefile "$bot::netnickname.notes" set max-notes 15 set note-life 14 set allow-fwd 0 set notify-users 0 set notify-onjoin 0 set console-autosave 1 set force-channel 0 set info-party 0 #loadmodule compress #loadmodule assoc #loadmodule wire #loadmodule woobie #loadmodule seen #loadmodule filesys loadmodule notes loadmodule console loadmodule blowfish loadmodule uptime loadmodule share loadmodule transfer loadmodule irc loadmodule ctcp loadmodule server loadmodule dns loadmodule channels loadmodule blowfish source scripts/alltools.tcl source scripts/action.fix.tcl source scripts/compat.tcl source scripts/userinfo.tcl loadhelp userinfo.help #unbind msg - hello *msg:hello #bind msg - myword *msg:hello unbind msg - ident *msg:ident unbind dcc n simul *dcc:simul unbind msg - addhost *msg:addhost unbind dcc n tcl *dcc:tcl unbind dcc n set *dcc:set set servers { 127.0.0.1:6667 } EOF
Bitte alle Lines gründlichst anschauen und verstehen, es müssen lines geändert werden, damit der bot fehlerfrei läuft!
Der Bot muss nun gestartet werden:
./eggdrop -m
Wenn alles stimmt sollte das dann so aussehen:
eggdrop@tutorial:~/eggdrop$ ./eggdrop -m Eggdrop v1.6.19+ctcpfix (C) 1997 Robey Pointer (C) 2008 Eggheads [23:37] --- Loading eggdrop v1.6.19+ctcpfix (Sun Nov 22 2009) [23:37] Module loaded: blowfish [23:37] Module loaded: dns [23:37] Module loaded: channels [23:37] Module loaded: server [23:37] Module loaded: ctcp [23:37] Module loaded: irc [23:37] Module loaded: notes (with lang support) [23:37] Module loaded: console (with lang support) [23:37] Module loaded: uptime [23:37] McEggdrop TCL Helper Functions - settings file loaded. [23:37] McEggdrop TCL Helper Functions v1.00.29 loaded (replyencrypt meowreply automagicon). [23:37] Userinfo TCL v1.07 loaded (URL BF GF IRL EMAIL DOB PHONE ICQ). [23:37] use '.help userinfo' for commands. STARTING BOT IN USERFILE CREATION MODE. Telnet to the bot and enter 'NEW' as your nickname. OR go to IRC and type: /msg k1ngb0t hello This will make the bot recognize you as the master. [23:37] === k1ngb0t: 0 channels, 0 users. Launched into the background (pid: 28149)