Tuki

Eggdrop

Scriptit

Modulit

Yleistä tukea ja ongelmanratkaisuja: eggwiki

Muista katsoa myös crontab- ja IRC-ohje

Scriptien kanssa kannattaa käyttää molemmissa koneissa proxyä, proxyjen osoitteet näet MOTD:stä

Eggdropin asennus

Asennukseen tarvitaan luonnollisesti tar.gz-paketti jonka voit hakea MOTD:n osoittamasta paikasta nopeasti vaikkapa wget-ohjelmalla. wget hakee annetun URL:n perusteella ohjelman esimerkiksi wget ftp://ftp.eggheads.org/pub/eggdrop/source/1.6/eggdrop1.6.17.tar.gz.

Paketin hakemisen jälkeen edessä on sen purkaminen: tar -zxvf eggdrop1.6.17.tar.gzjoka luo hakemiston eggdrop1.6.17 jossa on Eggdrop:n sorsat eli lähdekoodi, siirry tähän hakemistoon jonka jälkeen sorsasta käännetään ajettava binääri. Eggdrop on helppo kääntää: ./configure etsii kääntöön tarvittavat ohjelmat ja tutkii järjestelmää muutenkin.make config kääntää kaikki modulit joista voi sitten tarvittaessa ladata haluamansa mutta jos ei halua kääntää kaikkia niin config:n sijasta käyttää iconfig-vipua jolla ne voi valita. Varsinainen kääntö alkaa käskyllä make ja siinä menee hetki aikaa. Tämän jälkeen Eggdrop on käännetty ja se tulisi siirtää toiseen hakemistoon make install käskyllä. Nyt Eggdrop löytyy ~/eggdrop eli /home/user/eggdrop/ hakemistosta.

Kääntövaiheen jälkeen edessä on eggdropin configurointi käsin. eggdrop.conf tiedosto on Eggdrop asetustiedosto, siellä määritellään irc-serverit ym asiaan liittyvä. Tiedosto on hyvin kommentoitu englanniksi. Tässä kuitenkin oma versioni asiasta:

#! /home/tunnus/eggdrop/eggdrop

# Modulit, ei välttämättä tarvitse ladata kaikkia mutta nämä ovat yleisimmät
# poislukien botnetop joka ei tule mukana oletuksena.

loadmodule channels
loadmodule server
loadmodule ctcp
loadmodule irc
loadmodule transfer
loadmodule botnetop
loadmodule share
loadmodule dns
loadmodule notes
loadmodule uptime
# Modulit lopppuu

# Käyttäjäasetukset
set username "tunnus"
set admin "tunnus "
set network "Ircnet"
# set timezone "est"
# set offset "2"
# set env(TZ) "$timezone $offset"
set my-ip "194.100.223.10"
set max-logs 10
set max-logsize 500
set quick-logs 1
set realname "Typera botti"


#Logitus

logfile mco * "logs/botinnimi.log"

#kanavalogit
logfile jpk #kanava1 "logs/#kanava1.log"
logfile jpk !kanava2 "logs/!kanava2.log"


set log-time 1
set keep-all-logs 1
set quiet-save 1
set userfile "botinnimi.user"
set sort-users 1

#valitse nämä portit huolella. käytettävissä olevat portit ovat 1025-65536
listen 4564 bots
listen 3563 users

set protect-telnet 1
set use-telnet-banner 0
set ignore-time 15
set owner "tunnus" 
set chanfile botinnick.chan
set ban-time 15

# Share Module
set resync-time 900
set private-global 0
set private-user 0


# Kotikanavat missä ollaan aina, muut voi lisätä .+chan dcc-yhteydessä.
channel add #kanava1 {
  chanmode "+nt"
}


#pakotetaan kanava !kanava2
channel add !kanava2 {
  chanmode "+nt"
}

#Asetetaan botin nick
set nick "Botinnick"

#Vaihtoehtoinen nick, missä ? on joku numero
set altnick "Botinnick?"

# Serverilista, voit lisätä tähän serverit portin kanssa tai ilman
set servers {
  irc.saunalahti.fi:668
  irc.cs.tut.fi
}

#pidetään oletusnick
set keep-nick 1

#mihin notet tallennetaan.
set notefile "botinnick.notes"

# Käyttäjäasetukset päättyy
# Default arvot
set switch-logfiles-at 300
set console "mkcobxs"
set help-path "help/"
set temp-path "/tmp"
set motd "motd"
set telnet-banner "telnet-banner"
set dcc-sanitycheck 1
set ident-timeout 10
set require-p 0
set steal-telnets 0
set connect-timeout 15
set dcc-flood-thr 3
set telnet-flood 5:60
set paranoid-telnet-flood 1
set resolve-timeout 15
set ban-time 0
set hourly-updates 0
set notify-newusers "$owner"
set default-flags "h"
set whois-fields "url birthday"
set remote-boots 2
set share-unlinks 1

set die-on-sighup 1
set die-on-sigterm 1

###########################################################
# HOX! em. kaksi asetusta on erittäin tärkeä laittaa päälle    
# (1), jotta botin asetukset/userfileet ei korruptoidu/katoa
# mahdollisessa shellin rebootissa
###########################################################


unbind dcc n tcl *dcc:tcl
unbind dcc n set *dcc:set
set must-be-owner 0
unbind dcc n simul *dcc:simul
set dcc-portrange 1024:65535
set enable-simul 1
set allow-dk-cmds 1
set mod-path "modules/"
set exempt-time 60
set invite-time 60
set force-expire 0
set share-greet 1
set use-info 1
# set global-flood-chan 5:30
# set global-flood-deop 3:10
# set global-flood-kick 3:10
# set global-flood-join 5:60
# set global-flood-ctcp 3:60
set global-idle-kick 0
set global-chanset {
        -clearbans      +enforcebans
        -dynamicbans    +userbans
        -autoop         +bitch
        +greet          +protectops
        +statuslog      +stopnethack
        -revenge        -secret
        -autovoice      +cycle
        +dontkickops    -wasoptest
        -inactive       -protectfriends
        +shared         -seen
        +userexempts    -dynamicexempts
        +userinvites    -dynamicinvites
}
set global-chanmode "nt"


#säädöt tehty IRCnettiä varten

set net-type 2
set init-server { putserv "MODE $botnick +i-ws" }
set use-ison 1
set strict-host 0
set quiet-reject 1
set lowercase-ctcp 0
set answer-ctcp 3
# set flood-msg 5:60
set flood-ctcp 3:60
set never-give-up 1
set strict-servernames 0
set default-port 6667
set server-cycle-wait 60
set server-timeout 15
set servlimit 0
set check-stoned 1
set use-console-r 0
set debug-output 0
set serverror-quit 1
set max-queue-msg 300
set trigger-on-ignore 0
set double-mode 0
set double-server 0
set double-help 0
set ctcp-mode 0
set bounce-bans 1
set bounce-modes 0
set kick-bogus-bands 1
set bounce-bogus-bands 1
set max-bans 20
set max-modes 30
set allow-desync 0
set kick-bogus 0
set ban-bogus 0
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
unbind msg - ident *msg:ident
unbind msg - addhost *msg:addhost
set no-chanrec-info 0
set revenge-mode 1
set bounce-exempts 0
set bounce-invites 0
set max-exempts 20
set max-invites 20
set bounce-bogus-exempts 0
set kick-bogus-exempts 0
set bounce-bogus-invites 0
set kick-bogus-invites 0
set prevent-mixing 1
set dcc-block 0
set copy-to-tmp 1
set max-notes 50
set note-life 60
set allow-fwd 0
set notify-users 1
set notify-onjoin 1
loadmodule console
set console-autosave 1
set force-channel 0
set info-party 0
checkmodule blowfish

## Scriptit ##


source netbots/netbots.tcl
source scripts/action.fix.tcl

source scripts/cleanusers1.1.tcl
source scripts/action.fix.tcl

source scripts/LogZipper.tcl

loadhelp userinfo.help

Configuroinnin jälkeen Eggdrop käynnistetään ./eggdrop -m jolloin vipu -m luo uuden käyttäjätiedoston ja tätä ei tarvitse jatkossa enää luoda uudelleen. Mikäli nimeät eggdrop.conf tiedoston toiselle nimelle niin Eggdrop käynnistetään eggdrop uusiconfig.conf. Jos mitään virheitä ei ilmene niin Eggdrop ilmestyy irkkiin. Mutta jos näin ei käy niin kannattaa katsoa logs/ hakemistosta logit läpi ja etsiä sieltä syytä. Kun botti on saatu irkkiin niin se kannattaa laittaa se crontabiin mutta ei kuitenkaan liian usein käynnistettäväksi. Kerran tai pari tunnissa riittää ja silloinkin kannattaa yrittää välttää tasaminuutteja esim. 00, 15, 30.