1# $Id: Readme.pl,v 1.0.2 2004/10/28 11:30:23 [Xp-AvR] Exp $
2____________________________________________________________________________
3
4--------------------------------- Readme -----------------------------------
5 Przejrzyj ten dokument zanim zaczniesz o cokolwiek pyta�. Najlepiej gdyby�
6 go PRZECZYTA� je�li nigdy nie uda�o ci si� postawi� Eggdrop'a lub innego
7 bota na nim opartego.
8
9 (!) Spis tre�ci:
10 1. Info - podstawowe informacje.
11 2. Wymagania - powieniene� to przeczyta�.
12 3. Mo�liwo�ci - lista opcji.
13 4. Instalacja - jak zainstalowa� (i skonfigurowa�) botka.
14 5. Podstawowa konfiguracja - kontynuacja powy�szego.
15 6. Najcze�ciej zadawane pytania (FAQ) - przeczytaj koniecznie.
16 7. Pomoc - informacje o miejscach, gdzie mo�esz szuka� pomocy.
17 8. Linki - najwa�niejsze linki.
18 9. About - troche o mnie.
19 10. Greets - nie pytaj ;)
20
21----------------------------------------------------------------------------
22
23(1) Info:
24 Evangeline jest botem IRC (Internet Relay Chat) opartym na Eggdropie.
25 Tworzony jest z my�l� o sieci IRCnet, w zwi�zku z czym wszelkie zmiany
26 dokonywane s� w celu poprawienia efektywno�ci w�a�nie na tej sieci.
27 Funkcje Evangeline mog� by� �atwo rozszerzone za pomoc� modu��w (nieco
28 zmodyfikowanych modu��w Eggdropa) i/lub skrypt�w TCL.
29
30(2) Wymagania:
31 * Konto shell (Linux, *BSD itp) i ok. 7 MB wolnej przestrzeni dyskowej.
32 * Tcl 8.1+ (8.3.4 zalecany, 8.4.0 bardzo niezalecany).
33 * Podstawowa znajomo�� j�zyka angielskiego.
34 * Podstawowa wiedza na temat IRC i UNIXa.
35
36(3) Mo�liwo�ci:
37 Wiele z tych opcji istnieje w innych botach (np.: AversE, VoiD), jednak
38 niekt�re z nich s� unikalne lub nie publikowane wcze�niej.
39
40 * Szyfrowana userlista - userlista jest szyfrowana/deszyfrowana w pami�ci
41 bez u�ycia plik�w tymczasowych. Klucz nie jest przechowywany w binarce
42 (jak mia�o to miejsce np. w VoiDzie), wi�c przy pomocy 'string binary'
43 ju� si� go nie znajdzie.
44
45 * Admin - u�ytkownik wkompilowany w binark�. Ma nielimitowany dost�p do
46 bota i jego komend. Mo�e usuwa� permowner�w, zmieniac im flagi, hosty
47 itp.
48
49 * Permowners - u�ytkownicy wkompilowani w binarke, kt�rzy posiadaj� prawie
50 nielimitowany dost�p do bota (nie mog� modyfikowa� innych permwoner�w i
51 admina)
52
53 * Adder - nowa userflaga (+r), umo�liwiaj�ca dodawanie nowych u�ytkownik�w
54 bez potrzeby bycia permownerem lub adminem. Flaga mo�e zosta�
55 nadana/usunieta tylko przez permownera lub admina.
56
57 * Sharowanie - boty akceptuj� tylko zmiany dokonane przez bota z flag� '+p'
58 (main/slave/alt hub).
59
60 * Zachowanie na IRC - boty kopi� zamiast deopowa�. Evangeline potrafi
61 kopn�� do 6 user�w "jednocze�nie" (w trybie obronnym i lamerskim
62 takeover) i opn�� do 5 user�w "jednocze�nie" (getops i lamerski
63 takeover).
64
65 * Szyfrowane share - sharowana userlista jest przesy�ana w formie
66 szyfrowanej (tylko je�li bot, kt�ry j� odbiera obs�uguje t� opcj�).
67
68 * Kompresja userlisty - userlista jest przesylana w formie skompresowanej.
69 Kompresja odbywa si� za pomoc� algorytmu zlib.
70
71 * Transfer kana�ow huba - kana�y dost�pne na hubie s� automatycznie
72 dodawane do bota, kt�ry poraz pierwszy pod��cza si� do botnetu.
73 Nie trzeba si� ju� m�czy� z userflagami na poszczeg�lne kana�y.
74
75 * Presety - pakiet ustawie� kana��w (chanset�w) odpowiednio ustawianych w
76 zale�no�ci od liczby bot�w na kanale, automatycznie uaktualnianych co
77 godzin� od startu huba oraz w momencie, gdy jaki� bot od��czy/pod��czy
78 si� do botnetu.
79
80 * Syspass - opcjonalne has�o chroni�ce niekt�re komendy (wi�kszo�� mass i
81 '.die', '.restart', '.rehash' na hubach)
82 [ Pomys� Dafcia]
83
84 * AddBot - komendy s�u��ce do dodawania nowych bot�w bez potrzeby
85 logowania si� na nie.
86 [ Pierwotnie skrypt wprowadzony zosta� w AmenO ]
87
88 * Kompatybilno�� - bot potrafi po��czy� si� z wieloma innymi przer�bkami
89 Eggdropa.
90 Potrafi wyniemia� userlist� z: AmenO, aCo, AversE, Bear, BloW, cNs, Cub3,
91 Detox, DiVERSE, Eggdrop v1.4+, GTT, LeppeR, RaviS, RulF, Suid, VoiD,
92 VoLron, vOlRoN, X-Men.
93 Nie potrafi wymienia� userlisty z: VoiD4, NnO, Shark2.
94
95 * BotNetOp - do��czony getops jest wystarczaj�co szybki aby obej�� si� bez
96 chansetu +autoop i/lub userflagi +a. Opowanie w botnecie jest
97 bezpieczniejsze (brak/mniejsza mo�liwo�� spoofu).
98
99 * Flood - bot zawiera spor� ilo�� lamerkich mo�liwo�ci floodowania innych,
100 jak np.: msg, ctcp, invite itd...
101 [ Chyba powinienem to wywali� ;) ]
102
103 * Losowa lista serwer�w - za ka�dym startem/restartem bota lista serwer�w
104 jest uk�adana w losowej kolejno�ci. Zapobiega to sytuacjom, gdy ca�y
105 botnet stoi na przyk�ad na 2 serwerach.
106
107 * Antyjoin/Antyclone - Evangeline potrafi wykopa� u�ytkownik�w, kt�rzy
108 weszli na kana� w czasie mniejszym niz okre�lony (np.: 3 sekund), czyli
109 za massjoina.
110
111 * AversE/Evangeline Channel Protection - inna wersja ochrony u�ytkownik�w
112 i kana��w. System kopie user�w, ktorzy 'tkn�li' u�ytkownika z flag� +P.
113 Userzy posiadaj�c +f nie s� kopani.
114 [ Opcja aktualnie nie dost�pna ze wzgl�du na konflikty z +defense ]
115
116 * Mainserver - bot stara sie by� po��czony z g��wnym serwerem IRC
117 (ustawianym w konfigu). Je�li serwer padnie (lub nie mo�liwe b�dzie
118 po��czenie si� z nim z innych przyczyn), w�wczas bot prze��czy si�
119 do innego i po jakim� czasie spr�boje pod��czy� si� ponownie do g��wnego
120 (je�li na kanale(ach) jest wiecej niz 6 bot�w, kt�re bed� mog�y go
121 ponownie zaopowa�).
122
123 * Autolimit - nowe ustawienia kanalu '+alimit'. Bot automatycznie zmienia
124 limit na kanale w zale�no�ci od ilo�ci os�b w danej chwili. Kana� jest
125 sprawdzany co 2 minuty (ustawiane w pliku 'settings'). Chanset powinien
126 by� ustawiony tylko na 1 bocie (zapobiega niepotrzebym floodom).
127 [ Aktualnie wystepuj� dziwne problemy, np. z kopaniem za +o ]
128
129(4) Instalacja:
130 * Rozpakuj plik ('tar xxf evangeline-wersja.tar.gz')
131
132 * INFO: Nast�pny ktok mo�e by� dokonany automatycznie za pomoc� skryptu
133 'configure'. Poprostu nacisnij 'enter' lub 'y' w momencie, gdy
134 skrypt spyta 'add admin/permowner(s)' i odpowiedz na kolejne dwa
135 pytania.
136
137 * Otworz plik src/main.c i znajd�:
138 'char admin[121]' - wpisz tutaj *JEDEN* nick u�ytkownika, kt�ry b�dzie
139 mia� pe�ny dost�p do botnetu.
140 'char owner[121]' - wpisz tutaj nick(i) permwonera(�w).
141
142 * W katalogu g��wnym bota wpisz './configure' (skrypt mo�e zadac kilka
143 pyta�). Gdy zako�czy swoj� prac� wpisz 'make' lub 'make static' i
144 czekaj...
145
146 * Stw�rz konfig:
147 *WIZARD*
148 Mo�esz tak�e podrasowa�/dopasowa� do swoich potrzeb konfig po
149 wygenerowaniu go przez wizarda.
150
151 INFO: Je�li u�ywasz Putty (prawdopodobnie r�wnie� w przypadku innych
152 klient�w telnet/ssh) do ��czenia si� z kontem shell uwa�aj na to
153 co piszesz (BACKSPACE jest rozpoznawany jako '' i taki w�a�nie
154 znak b�dzie istnia� w pliku konfiguracyjnym je�li go u�yjesz)
155
156 INFO: Pami�taj, �e 'botnet-nick' jest tak�e nazw� pliku konfiguracyjnego
157 (plus rozszerzenie .cfg)
158
159 *NORMAL*
160 -IPv4:
161 Odpal poprzez ./starter --new botnet-nick
162 Naci�nij 'y', gdy sktypt spyta o utworzenie nowego konfiga, potem
163 wpisz 'ipv4' i odpowiedz na kolejne pytania.
164 -IPv6
165 Odpal poprzez ./starter --new botnet-nick
166 Naci�nij 'y', gdy sktypt spyta o utworzenie nowego konfiga, potem
167 wpisz 'ipv6' i odpowiedz na kolejne pytania.
168 -BNC:
169 dpal poprzez ./starter --new botnet-nick
170 Naci�nij 'y', gdy sktypt spyta o utworzenie nowego konfiga, potem
171 wpisz 'bnc' i odpowiedz na kolejne pytania.
172 *HUBY*
173 -Main:
174 Odpal poprzez ./starter --new botnet-nick
175 Naci�nij 'y', gdy sktypt spyta o utworzenie nowego konfiga, potem
176 wpisz 'main' i odpowiedz na kolejne pytania.
177 -Slave:
178 Odpal poprzez ./starter --new botnet-nick
179 Naci�nij 'y', gdy sktypt spyta o utworzenie nowego konfiga, potem
180 wpisz 'slave' i odpowiedz na kolejne pytania.
181 -Alt:
182 Odpal poprzez ./starter --new botnet-nick
183 Naci�nij 'y', gdy sktypt spyta o utworzenie nowego konfiga, potem
184 wpisz 'slave' i odpowiedz na kolejne pytania.
185
186 *R�CZNIE*
187 *HUBY*
188 -Main/Slave/Alt
189 nick "nick w botnecie"
190 party(plpass) "kodowane has�o na partyline. Puste miejsce oznacza
191 wy��czone has�o"
192 party(syspass) "kodowane has�o do komend. Puste miejsce oznacza
193 wy��czone has�o"
194 INFO: Has�a (partyline i syspass) mog�/powinny by� ustawiane z
195 poziomu bota za pomoc� komendy '.bpass'.
196 -Main:
197 mainip "podaj adres ip serwera na kt�rym stoi bot"
198 my-ip "pobierane jest z $mainip"
199 my-hostname "jak wy�ej"
200 bots-listenport "port dla bot�w"
201 users-listenport "port dla u�ytkownik�w"
202 -Alt:
203 ismalt "ustaw na 1, je�li bot ma dzia�a� jako zast�pczy main"
204 issalt "ustaw na 1, je�li bot ma dzia�a� jako zast�pczy slave"
205 *NORMAL*
206 - IPv4/IPv6/BNC:
207 nick "nick na IRC"
208 botnet-nick "nick w botnecie"
209 realname "realname na IRC, cokolwiek tylko chesz"
210 listenport 9999 'port dla po��cze� bot/user'
211 ircserver { lista serwer�w IRC }
212 my-ip "wpisz tutaj adres ip vhosta, je�li zamierzasz ich u�ywa�"
213 my-hostname "podaj hostname dla powy�szego ip je�li korzystasz
214 z vhost�w"
215 firewall "wpisz adres proxy w postaci 'host:port' je�li serwer
216 znajduje si� za firewallem"
217 nat-ip "zewn�trzne ip, je�li wykorzysta�e� powy�sz� zmienna"
218 use-gseen 'ustaw na 1 je�li skompilowa�e� bota z modu�em gseen
219 i chesz go teraz u�y�'
220 use-stats 'ustaw na 1 je�li skompilowa�e� bota z modu�em stats
221 i chesz go teraz u�y�'
222 - IPv6:
223 use-ipv6 1 'je�li chcesz u�ywa� ipv6, ustaw t� zmienn� na 1'
224 my-ip "je�li masz problem z przesy�aniem userlisty, powiniene�
225 wpisa� tutaj zewnetrzne ip serwera (lub jakiego� vhosta)"
226 my-hostname "host dla powy�szego ip"
227 my-ip6 "wpisz tutaj ip w formacie: 3ffe:80ee:419:0:0:0:0:1 (to
228 tylko przyk�ad)"
229 my-hostname6 "wpisz tutaj host dla powy�szego ip. Je�li bot
230 mimo tego u�yje domy�lnego hosta tunelu, wpisz
231 ten sam ip co powy�ej"
232 - BNC:
233 use-bnc 1 'je�li u�ywasz normalnego BNC, ustaw na 1'
234 use-psyBNC 0 'je�li u�ywasz psyBNC, ustaw na 1. Pozostale
235 musz� by� ustawione na 0'
236
237 use-ezBOUNCE 0 'je�li u�ywasz ezBOUNCE, ustaw na 1'. Pozosta�e
238 musz� by� ustawione na 0'
239 servers "wpisz adres bnc w formacie: host/ip:port"
240 bnc-pass 'pozostaw puste i po tym jak bot po��czy sie z hubem
241 u�yj komendy '.bncpass' na bocie do ustawienia has�a'
242 bnc-vhost "vhost z kt�rym bot b�dzie si� ��czy� na irc poprzez
243 BNC"
244 ircservers "lista serwer�w z kt�rej bot losuje sobie jeden, aby
245 po��czy� si� na irc"
246 iserv-port "port serwera irc na kt�ry bot bedzi� si� ��czy�"
247
248 - SETTINGS (skrypt tcl w katalogu cfg/):
249 use-avp 1 'ustaw na 1, je�li chcesz u�ywa� AversE/Evangeline
250 Protection System'
251 use-ajcl 1 'ustaw na 1, je�li chcesz u�ywa� antyjoin, antyclone
252 lub autolimit'
253
254 avp(pflag) "wpisz userflag�, z kt�r� u�ytkownicy b�d� chronieni"
255 avp(exflag) "wpisz userflag�, z kt�r� u�ytkownicy b�d� ignorowani,
256 nawet je�li *dotkn�* u�ytkownika z flag� $avp(pflag)"
257 aclone(flood:jn) 2 "liczba u�ytkownik�w z tym samym *identem*
258 rozumianych jako flood-join"
259 alimit(timer) 60 'czas w sekundach, co kt�ry bot b�dzie sprawdza�
260 kana�'
261 alimit(jpcheck) 1 'ustaw na 1, je�li chesz aby bot zmienia� limit
262 podczas join/part'
263 alimit(base) 5 'liczba dodawana do aktualnej liczby u�ytkownik�w
264 podczas ustawiania limitu'
265 alimit(diff) 3 'r�nica mi�dzy aktualn� liczb� u�ytkownik�w, a
266 limitem zanim nowy limit zostanie ustawiony'
267 use-mainserver 0 'ustaw na 1, je�li chcesz aby bot u�ywa�
268 mainservera'
269 ms(mserver) { wpisz tutaj g��wny serwer irc }
270 ms(chktime) 120 'czas w minutach, po kt�rym bot spr�buje si�
271 ponownie po��czy� z g��wnym serwerem, je�li
272 aktualnie jest po��czony z innym'
273 ms(tryagain) 360 'czas w minutach, po kt�rym bot spr�buje
274 po��czy� si� z g��wnym serwerem je�li piersza
275 pr�ba by�a nieudana'
276 eva(rlist' { } 'nie dotykaj'
277 lappend eva(rlist) "--==\[Evangeline\]==--" 'je�li chesz wi�cej
278 reason�w dla
279 procedur tcl, dodaj
280 nowe linie, jak w
281 przyk�adzie'
282
283 * Ok, skonfigurowa�e� bota, teraz mo�esz juz go odpali� u�ywaj�c komendy:
284 ./starter --new botnet-nick (tylko je�li stworzy�e� konfig za pomoc�
285 *WIZARDA*)
286 lub
287 ./evangeline -m cfg/config (parametr -m jest zb�dny podczas kolejnych
288 start�w)
289
290 * Zalog�j si�:
291 telnet localhost usersport (ustawiony w konfigu, np.:
292 'users-listenport 9999' lub 'listenport 9999')
293 INFO: Je�li bot u�ywa vhost�w, w�wczas u�yj ip/hosta dla tego vhosta
294 aby po��czy� si� z botem (np.: poprzez Putty). Pami�taj o tym
295 tak�e podczas dodawania bot�w.
296 Wpisz: 'averse-' lub '-eva-'
297 KIedy bot spyta o nicka wpisz swoje (jeden z podanych w 'main.c')
298 Kolejno podaj swoje has�o i je�li bot nie spyta o has�o na partyline
299 (tylko main/slave/alt), jeste� na bocie. W przeciwnym wypadku podaj
300 has�o na partyline (tylko main/slave/alt).
301 Mo�esz ju� zacz�� rozkoszowa� si� botkiem. Pierwsz� komend�, kt�r�
302 proponuje sprawdzic jest '.save'.
303
304 * Mog�bym napisac tutaj kilka u�ytecznych komend, ale jestem na to zbyt
305 leniwy. Mo�e nast�pnym razem ;)
306
307(5) Podstawowa konfiguracja:
308
309 * Crontab:
310 Je�li stworzy�e� konfig przy pomocy *WIZARDA* wystarczy, �e wpiszesz:
311 ./starter --cron botnet-nick.
312 Je�li masz prawo do edycji w�asnego crontaba, wtedy wpis powinien
313 zosta� dodany.
314
315 * ...
316
317(6) Najcz�ciej zadawane pytania (FAQ):
318
319 * Pojawia si� 'ld-elf.so.1: Shared object libtcl84.so.1' not found (albo
320 podobnie) lub 'error in loading share libraries libtcl8.4.so: cannot
321 open shared object file: No such file or directory' podczas startu bota:
322
323 Wygl�da na to, �e bot skompilowa� si� z jedn� wersj� Tcl, a pr�buje
324 za�adowa� inn�. Mo�liwe, �e administrator uaktualni� biblioteki Tcl i
325 nie powiedzia� ci o tym. Powiniene� przekompilowa� bota.
326
327 Mo�liwe r�wnie�, �e administrator ine usun�� starych bibliotek Tcl
328 podczas, gdy kompilowa� nowsze, lub te� zainstalowa� nowsze w innym
329 katalogu. Poinformuj go o tym ;)
330
331 Mo�esz tak�e spr�bowac:
332 ./configure --with-tcllib=<�cie�ka_do_tcl_lib>
333 --with-tclinc=<scie�ka_do_tcl.h>
334
335 To poinformuje skrypt 'configure', gdzie ma szuka� tych plik�w.
336
337 Pliku libtcl* mo�esz szuka� w:
338 ls /usr/lib/libtcl*
339 ls /usr/local/lib/libtcl*
340
341 Pliku tcl.h mo�esz szuka� w:
342 ls /usr/include/tcl.h
343 ls /usr/local/include/tcl.h
344
345 Je�li to r�wnie� zawiedzie, mo�esz spr�bowa� zainstalowa� Tcl w
346 twoim katalogu domowym ;)
347
348 * .+user - nie mog� dodawa� u�ytkonika(�w):
349 Muszisz by� w grupie 'admin', 'permowner' lub 'adder', aby komenda
350 dzia�a�a. Pierwsze 2 grupy ustawiane s� przed kompilacj� w pliku
351 'main.c ('char admin[121]' i 'char owner[121]'), trzecia to u�ytkownicy
352 z flag� +r (flaga mo�e by� dodana przez admina lub permownera).
353
354 * Kick reasons - jak zmieni�?:
355 Przed kompilacj� otw�rz plik modules/irc.mod/chaos.c w dowolnym edytorze
356 (zalecam Unixowe) i znajd� 'static const char *kreasons[]'. Poni�ej masz
357 moj� list� reason�w, kt�re mo�esz zmienic lub usun�� (pozostaw chocia� 1).
358 Je�li chesz zmienic tekst 'Evangeline' dodawany przed w�a�ciwym reasonem,
359 zmie� wpisz powy�ej ('char reasonMain[20]').
360
361 * Nie dzia�aj�cy botnet - po��czone boty nie dzia�aj� jak "botnet":
362 Aby u�ywa� komend, jak '.mjoin', '.enforce' ('.netchanset') itp, nale�y
363 skompilowa� 2 paczki: msa (main/slave/alt) i normal (v4/v6/bnc).
364 Boty z paczki *msa* nie wchodz� na IRC (nie ma takiej potrzeby), ale
365 zawieraj� wszystkie potrzebne komendy do sterowania botnetem.
366 Boty z paczki *normal* s� normalnymi botami ��cz�cymi si� z serwerami IRC.
367 Musz� (powinny) by� pod��czone do huba z paczki *msa*.
368
369 * Failed connection; aborter userfile transfer:
370 Ten denerwuj�cy problem jest zale�ny od serweram. Je�li pojawia Ci si�
371 co� podobnego dodaj do konfiga hub'a (tego do kt�rego dany bot si� ��czy)
372 wpisy 'my-ip "adres ip serwera"' i ewentualnie 'my-hostname "host dla
373 powy�szego ip"'.
374
375(7) Pomoc:
376 Pomocy mo�esz szuka� na stronie projektu (w sekcji 'linki').
377 Je�li nie znajdziesz tam odpowiedzi na twoje pytanie/problem mo�esz
378 spr�bowa� swoich si� na kanale #evangeline w sieci IRCnet. Powiniene� tam
379 trafi� na kilka pomocnych os�b, ale nie zapomnij sprawdzi� stronki i forum
380 zanim spytasz.
381
382(8) Linki:
383 Evangeline's website: http://www.averse.piasta.pl
384 Eggdrop's website: http://www.eggheads.org
385 Eggdrop's help: http://www.egghelp.org
386 Tcl download: ftp://tcl.activestate.com/pub/tcl
387
388(9) About:
389 M�j e-mail: k_grabo@o2.pl
390 M�j nicka: KrzychuG lub [Xp-AvR], jestem na IRC (#evangeline@IRCnet) zazwyczaj
391 w soboty (po 16.00)
392
393(10) Greets (kolejno�� alfabetyczna):
394 Bogas: za dobre pomys�y, testy, zg�aszanie b��d�w i pomoc (na kanale
395 i forum)
396 Dafcio: za kilka fajnych pomys�ow, testy, zg�aszanie b�ed�w i pomoc (na
397 kanale)
398 Grzes: za utrzymywanie kana�u #evangeline w jednym kawa�ku ;)
399 Immcio: za testy, zg�aszanie b��d�w i pomoc (na forum)
400 Jorhn: za konto, testy, zg�aszanie b��d�w i pomoc (na kanale)
401 Shoo: za pomoc w kilku sprawach i niekt�re pomys�y
402 Slaw: za pierwsz� wersje 6kick i pomoc (tak�e na kanale)
403 TaKeDa ;)
404
405 Reszty za�ogi #evangeline i wszystkich, kt�rzy u�ywaja AversE/Evangeline.
406
407---------------------------------- NOTE ------------------------------------
408 Niekt�re fragmenty tego dokumentu pochodz� z Readme Eggdropa
409
410----------------------------------------------------------------------------
411____________________________________________________________________________
412# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 Eggheads Development Team
413# Copyright (C) 2001, 2002, 2003, 2004 [Xp-AvR]
414
1# $Id: Readme.si,v 1.1.0 2004/04/21 17:42:23 assassin Exp $
2____________________________________________________________________________
3
4--------------------------------- Preberi me -----------------------------------
5Prosim vsaj preleti ta dokument preden karkoli vpra�a�. Vkolikor se nisi nikoli prej ukvarjal/a z eggdropom ali katerikolim drugim botom, ki temelji na eggdropu, GA PREBERI v vsakem primeru.
6
7 (!) Vsebina:
8 1. Info - osnovne informacije o izdelku
9 2. Zahteve - kaj potrebuje�
10 3. Lastnosti - spisek lastnosti bota
11 4. In�talacija - kako in�talira� in konfigurira� bota
12 5. Osnovna konfiguracija - nekaj informacij o nastavitvah
13 6. Komande - spisek nekaj osnovnih komand za hub (glavnem) bota
14 7. Nastavitve kanala - spisek in opis obstoje�ih ?kanal? komand
15 8. Povezovanje (linkanje) botov - kako narediti botnet ;)
16 9. Najpogostej�a vpra�anja (FAQ) - PREBERI!
17 10. Pomo� - kraj�a informacije o tem, kje lahko vpra�ate za pomo�
18 11. Povezave - pomembnej�e povezave
19 12. O meni - kraj�e informacije
20 13. Pozdravi in zahvale - ne spra�uj...;)
21
22Pozor! Slede�a slovenska verzija Evangeline readme dokumenta je �e v fazi prevajanja, zato potencialne pravopisne napake gladko prezrite, ker bodo v prihodnosti korigirane, nasprotno temu pa je za�eljeno, da me opozorite na vsakr�no morebitno napako, ki bi v prevodu spremenila sam pomen izvirnika.
23Nekaj besed bi namenil �e samem terminolo�kem vpra�anju prevajanja. Pri prevajanju v ?stroki? uveljavljenih izrazov v na� jezik so pogosto te�ave, saj pomen nekaterih besed, ki so neposredno prevedene iz angle��ine ne ustreza njihovem pomenu v sami teoriji in praksi v sloveniji. Tako se naprimer te�ave poka�ejo �e pri ne�em, ve�ini ki boste tole brali tako preprostem, kot je ?userfile?, kar bi lahko prevedel kot ?uporabni�ka datoteka?, pa se boste gotovo strinjali z mano, da je to poimenovanje neustrezno in je s tega stali��a bolje pustiti ve�ini znan angle�ki izvirnik. Ampak, ker to ne bodo brali le tisti, ki jim je pomen ?userfile? besede znan �e iz Eggdropa, je bolje narediti korak dlje in dati uporabno sopomenko, ki bi lahko v tem primeru bila ?userlist?, kar pa je �e nekoliko la�je in ustezneje prevesti v ?listo uporabnikov? in to uporabim tudi sam. Takih besed je �e ogromno, recimo uporabnikom Eggdropa dobro znana beseda ?flag?, ki v neposrednem prevodu pomeni zastavica, zastava. Ampak kaj s tem povemo nekomu, ki se nikoli ni ukvarjal z irc boti? Ni�. Zato se mi je zdelo ustrezneje tovrstne izraze poimenovati opisno napr. ?user with flag = uporabnik z dolo�enim pooblastilom/stopnjo v botu? itd... Mogo�e se bo kak�nemu ?poznavalcu? irc botov zdelo zaradi tega na prvi pogled kaj manj razumljivo, vendar bo imel �e vseeno neprimerno manj te�av, kot bi jih ob dobesednem prevodu imeli za�etniki - ki jim ravno ti dokumenti predstavljajo osnovo delovanja Evangeline bota.
24
25----------------------------------------------------------------------------
26
27(1) Info:
28 Evangeline je IRC (Internet Relay Chat) bot, ki temelji na eggdropu. Narejen je za IRCnet omre�je zato je ve�ina sprememb prilagojenih temu omre�ju. Kljub temu bo verjetno pravilno deloval tudi na drugih omre�jih (z izjemo kak�ne znane te�ave, kot je kickanje na Quakenetu).
29Evangeline se lahko seveda �e izpopolni z dodatki, kot so moduli (Eggdrop moduli s popravki) in Tcl skriptami.
30
31
32(2) Zahteve:
33 * Unix ra�un (account) s pribli�no 7MB prostora.
34 * Tcl 8.2+ (8.4.6 je priporo�eno)
35 * Nekaj malega znanja angle��ine ;-)
36 * Nekaj malega poznavanja IRC-a in UNIX-a.
37
38(3) Lastnosti:
39 Veliko teh lastnosti obstaja tudi v drugih botih (napr.: AversE, VoiD), toda nekatere med njimi so unikatne ali do sedaj javno neobjavljene.
40
41Encrypted userfile - lista uporabnikov je kodirana in dekodirana v spominu brez uporabe za�asnih datotek. Kju� ni shranjen v "binary" zato "strings binary" ne bo nikomur uporabno pri iskanju dekodirnega klju�a.
42
43Admin - administrator je uporabnik, kompiliran v "binary" in ima neomejen dostop do bota in njegovih komand. Lahko odstrani stalne lastnike (permowners), zamenja njihova pooblastila (flags), dodaja virtualne hoste itd... [ Originalno iz Cub3 bota]
44
45Permowers - stalni lastniki, kompilirani v "binary", ki imajo skoraj neomejen dostop do bota (ne morejo spreminjati drugih stalnih lastnikov ali administratorja)
46
47Adder - "dodajalec" - novo uporabni�ko pooblastilo (+r). Uporabniki s tem pooblastilom lahko dodajajo nove uporabnike ne da bi bili stalni lastniki bota. To pooblastilo lahko v bota doda samo stalni lastnik (permowner) ali administrator (admin).
48
49Posredovanje datotek med boti - bot posreduje spremembe in posilja user/channel listo samo s strani bota s +p pooblastilom (flagom). Torej main/slave/alt huba.
50
51Irc akcije - bot kicka (vr�e s kanala) namesto deopa. To je na IRCnetu precej bolj u�inkovito. Evangeline lahko kickne celo �est uporabnikov naenkrat (pri "defense" in otro�jih "takeover" nastavitvah) ali pa opa naenkrat do 5 uporabnikov (pri "getops" in otro�jih "takeover" nastavitvah).
52
53Kodirano posredovanje - lista uporabnikov (userfile) je poslana drugim botom v kodirani obliki, �e le ti podpirajo to mo�nost.
54
55Skr�ena uporabni�ka datoteka - uporabni�ka lista je poslana botom v skr�eni (kompresirani) obliki. Kompresija poteka preko zlib (gzip)
56
57Prenos liste kanalo na prvo povezovanje - lista kanalov (channel list) je huba (glavnega bota) poslana drugim (slave/leaf botom) takoj po prvem povezovanju (linkanju). Tako ni ve� problemov zaradi mankajo�ih pooblastil (flagov) na nekaterih kanalih ;-)
58
59Skr�ene datoteke - uporabni�ka lista, lista kanalov in "v�eraj�nji" logi so shranjeni v skr�eni obliki.
60
61Syspass - opcija za��ite nekaterih komand (masovne botnet komande in komande, kot so .die, .restart, .rehash v hubu) z dodatnim geslom (dafcijeva ideja)
62
63AddBot - lu�kana skripta, ki pomaga dodajati bote (linkanje) ne da bi se sploh povezali vanje. Vse se da narediti preko ene komande v hubu. (V originalu ta skripta iz AmenO bota)
64
65Presets - "paket" nastavitev za kanale, ki se obnovijo vsakih 60 minut ali �e se kak�en bot lo�i od botneta in vse nastavijo v pravilnem razmerju.
66
67Maxbots - s komando lahko nastavite maksimalno �tevilo botov na kanalu, ki se preverja in po potebi ponastavi vsakih deset minut ali v primeru kak�nih problemov na kanalu (napr. masovni "obisk" kanala)
68
69Kompatibilnost - bot se lahko pove�e z veliko drugimi Eggdrop modifikacijami. Lahko si deli userlisto z: AmenO, aCo, AversE, Bear, BloW, cNs, Cub3,
70 Detox, DiVERSE, Eggdrop v1.4+, GTT, LeppeR, RaviS, RulF, Suid, VoiD,
71VoLron, vOlRoN, X-Men. Ne more pa je deliti z: VoiD4, NnO, Shark2.
72
73BotNetOP - dodana skripta za opanje je precej hitra, tako da ni potrebe za +autoop nastavitev ali +a pooblastilo uporabniku. S pomo�jo tega je opanje bolj varno in zmanj�uje tveganje opanja napa�nih, nepoobla��enih oseb.
74
75Flood - bot ima veliko �tevilo otro�jih mo�nosti "smetenja" drugih uporabnikov, napr: msg, ctcp, invite itd... (le �emu je to sploh �e notri?)
76
77Servers randomiser - vsak bot naklju�no poljubno izbira iz konfiguracijske liste IRC stre�nik na katerega se bo priklju�il, s �imer je deloma prepre�ena izguba kanala, ker bi bili vsi boti na enem in istem IRC stre�niku.
78
79Mainserver - bot posku�a obdr�ati �eleni IRC stre�nik. V primeru, da izbrani IRC stre�nik pade, se bot priklju�i na drugega, po dolo�enem �asu pa se ponovno posku�a priklju�iti na prvega (vendar le v primeru, da je na kanalu ve� kot 6 botov z opom in da to opcijo nastavite).
80
81Autolimit - nova nastavitev za kanal. V primeru, da imate omogo�en '+alimit' bo bot avtomastko urejal limit kanala, ki je v tem primeru odvisen od �tevila uporabnikov na kanalu. Bot bo preverjal ta limit vsako minuto. Alimit nastavitev lahko urejate preko '.chanset' komande (napr. .chanset #chan limits 10:7:1). [ Vklju�eno naj bi bilo le v ENEM botu na kanalu. ]
82
83
84(4) In�talacija:
85 * Odpakiraj datoteko (tar zxf filename.tar.gz)
86
87 * Opomba: Naslednji korak je lahko narejen tudi preko konfiguracijske skripte. Preprosto nadaljuj in pritisni 'enter' ali 'y' ko te bo konfiguracijska skripta vpra�ala 'add admin/permwoner(s)' in odgovori na naslednji dve vpra�anji (vnesi svoj vzdevek...).
88
89 * Odpri 'src/main.c' in poi��i:
90 'char admin[121]' - vpi�i sem *ENO* ime uporabnika ki bo imel popoln dostop do vseh komand bota
91 'char owner[121]' - vpi�i sem ve� imen lastnikov bota (permowners).
92
93 * V botovem root direktoriju odtipkaj './configure' (lahko da ti bo postavljeno par vpra�anj). Ko bo konfiguracijska skripta zaklju�ila svoje delo odtipkaj komando 'make' ali
94 'make static' in �akaj...
95
96 INFO: Za omogo�itev IPv6 podpore mora� dodati --enable-ipv6 v 'configure'
97 (napr.: ./configure --enable-ipv6)
98
99 INFO: lahko onemogo�i� kodiranje uporabni�ke liste. Odtipkaj le --disable-crypt v
100 'configure' (napr.: ./configure --disable-crypt)
101
102 INFO: Lahko uporabi� tudi svoj lasten kodirni klju�. Odtipkaj le --custom-key
103 v 'configure' in vnesi klju�, ko te bo skripta vpra�ala zanj.
104 (napr.: ./configure --custom-key, ter po�akaj nekaj trenutkov... ,
105 'Enter your encryption key: tvoj_kodirni')
106 Priporo�ena je uporaba te funkcije saj olaj�a nadgradnjo (update) bota..
107
108 * Naredi konfiguracijsko datoteko bota:
109
110 *UPORABA �ARODEJA (wizzard)*
111
112 Ena od mo�nosti je, da za konfig. datoteko bota uporabi� �arovnika.
113 NOTE: Vkolikor uporablja� Putty (mogo�e pa tudi katerega drugega klienta) za dostop do shell ra�una pazi, kaj vtipkava� (backspace tipka je lahko prepoznana kot '' kar je potem vne�eno tudi v samo konfig. datoteko bota)
114
115 *OBI�AJNI (leaf bot)*
116
117 -IPv4:
118 Za�ni s: ./starter --new ime-bota
119 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj
120 'ipv4' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota.
121
122 -IPv6:
123 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj
124 'ipv6' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota.
125
126 -BNC:
127 Za�ni s: ./starter --new ime-bota
128 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj
129 'ipv6' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota.
130
131 *HUBS (glavni boti)*
132
133 -Main:
134 Za�ni s: ./starter --new ime-bota
135 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj
136 'main' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota.
137
138 -Slave:
139 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj
140 'slave' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota.
141
142 -Alt:
143 Za�ni s: ./starter --new ime-bota
144 Vpi�i 'y' ko te skripta vpra�a , �e �eli� narediti novo datoteko, potem vtipkaj
145 'alt' in odgovori na druga vpra�anja. Ne pozabi, da je ime bota (botnet-nick) hkrati tudi ime konfig. datoteke bota.
146
147
148 *RO�NO (Uporabi dodan primerek!)*
149
150 *HUBS*
151
152 - Main/Slave/Alt
153 nick "vzdevek bota"
154 botnet-nick "vzdevek, ki ga bo imel v botnetu"
155 bots-listenport "port za povezave botov"
156 users-listenport "port za povezave uporabnikov"
157 party(plpass) "Vpi�i kodirano geslo. �e pusti� prazno, bo dodatno party-line geslo onemogo�eno". Pozneje lahko geslo nastavi� tudi s komando '.bpass' v samem hubu.
158 party(syspass) "Vpi�i kodirano geslo. �e pusti� prazno bo dodatno
159 geslo za 'mass' comande onemogo�eno".
160 Pozneje lahko geslo nastavi� tudi s komando '.bpass' v samem hubu.
161 OPOMBA : Obe dodatni gesli (party-line and syspass) sta lahko tudi pozneje nastavljeni s
162 '.bpass' komando v samem botu.
163
164 - Main:
165 mainip "vnesi IP naslove tvojega streznika"
166
167 - Alt:
168 ismalt 'nastavi tu 1 �e �eli� da alternativni hub deluje kot main hub'
169 issalt 'nastavi tu 1 �e �eli� da alternativni hub deluje kot slave hub'
170
171 *OBI�AJNI*
172
173 - IPv4/IPv6/BNC:
174 nick "vzdevek bota na ircu"
175 altnick "alternativno vzdevek (�e je prvotni �e zaseden)"
176 botnet-nick "�e uporablja� $nick s �udnimi znaki:
177 '[', '|', vnesi sem ime brez teh znakov (la�je upravljanje z botom)"
178 realname "realname na ircu, karkoli �eli�..."
179 username "bot ident (koristno kadar ni oident na stre�niku ali kadar bota povezuje� preko psyBNC-ja)"
180 listenport 9999 'zamenjaj 9999 s tvojim izbranim portom'
181 ircserver { sem vnesi irc serverje }
182 my-ip "izpolni to �e uporablja� vhoste"
183 my-hostname "izpolni to �e uporablja� vhoste"
184 firewall "vnesi hostnaslov:port proxsy-ja �e si za firewalom/proxy-jem"
185 Nastavi "Chostname:port" za HTTP CONNECT proxy ali
186 "Phostname:port" za HTTP POST proxy.
187 nat-ip "external ip �e uporablja�... "
188 use-gseen 'nastavi to na 1 �e in�talira� bota z gseen modulom
189 in �eli� uporabljati to funkcijo'
190 use-stats 'nastavi to na 1 �e in�talira� bota s stats modulom
191 in �eli� uporabljati to funkcijo'
192
193 - IPv6:
194 use-ipv6 1 '�e �eli� uporabljati ipv6 nastavi to na 1'
195 my-ip "vstavi sem IP naslov v formatu: 127.0.0.1 (to je zgolj primer)"
196 my-ip6 "vstavi sem IP naslov v formatu: 3ffe:80ee:419:0:0:0:0:1 (to je zgolj primer)"
197 my-hostname6 "vstavi sem IP naslov v formatu: 3ffe:80ee:419:0:0:0:0:1
198 (to je zgolj primer)"
199
200 - BNC:
201 use-bnc 1 'nastavi to na 1 �e �eli� uporabljati obi�ajni BNC'
202 use-psyBNC 0 'nastavi to na 1 �e �eli� uporabljati psyBNC. Ostalo mora biti nastavljeno na 0'
203 use-ezBOUNCE 0 'nastavi to na 1 �e �eli� uporabljat ezBOUNCE. Ostalo mora biti nastavljeno na 0'
204 servers "nastavi bnc naslov v formatu: host/ip:port"
205 bnc-pass "geslo za bnc"
206 bnc-host "vhost ki ga bo imel bot, ko se bo povezal na irc �ez bnc"
207 ircservers "spisek irc streznikov"
208 iserv-port "port irc streznika, ki ga bot uporablja, napr 6667"
209
210 - SETTINGS (file in cfg/ directory):
211 use-mainserver 0 'nastavi to na 1 �e �eli� uporabljati opcijo povezave na to�no dolo�eni irc stre�nik'
212 ms(mserver) { vpi�i to�no dolo�en preferiran irc stre�nik}
213 ms(chktime) 120 'v minutah dolo�eno, kdaj se bo bot spet posku�al povezati na preferiran irc stre�nik, �e je trenutno na katerem drugem'
214 ms(tryagain) 360 'v minutah dolo�eno, kdaj se bo bot spet posku�al povezati na preferiran irc stre�nik, �e je bil prej�nji poizkus neuspe�en'
215 eva(ctcp) '0' - izklju�i, '1' - naklju�no izbran', 2 - dolo�en, 9 - Evangeline ;)
216 eva(rlist) { } 'pusti prazno'
217 lappend eva(rlist) "--=\[Evangeline\]==--" '�e �eli� uporbiti ve� razlogov za dejanja tcl skript (napr. Kick messages) dodaj ve� vrstic -enako kot v originalni datoteki'
218 reason(alimit) "vzrok, ki bo izpisan �e bo uporabnik brez pravih pooblastil (flagov) posku�al spremeniti ali odstraniti limit kanala"
219
220 * Ok, zdaj ko ima� konfiguriranega bota, ga za�eni s komando:
221 ./starter --new botnet-nick (samo �e za konfiguracijo uporablja�
222 *�ARODEJA)
223 ali pa klasi�no
224 ./evangeline -m cfg/config (-m parameter je potreben le ob PRVEM zagonu bota)
225
226 * Logiraj se vanj:
227 telnet localhost usersport (uporabi to, kar ja nastavljeno v config, napr.: 'users-listenport 9999'
228 ali 'listenport 9999')
229
230 *NOTE:* �e tvoj bot uporablja virtualni host (vhost), potem ne pozabi uporabiti ip/hostname za ta vhost, ko se povezuje� v bota (npr. z uporabo Putty-ja). Ravno tako se spomni na to ob linkanju botov.
231
232 Odtipkaj: 'averse-' ali '-eva-'
233 Kot te bot vpra�a za "nickname", vpi�i svojega (tega, ki si ga vpisal v 'main.c')
234 zatem si nastavi geslo. �e te bot ne vpra�a �e za party-line
235 geslo (le v main/slave/alt), si �e v botu, sicer vpi�i �e party-line geslo (main/slave/alt).
236 Sedaj lahko za�ne� u�ivati v botu ;-) Prva komanda, ki jo priporo�am, je: '.save'
237
238(5) Osnovna konfiguracija:
239
240 * Crontab:
241
242 �e pri kreiranju konf. datoteke bota uporabite �arodeja odtipkajte preprosto:
243 ./starter --cron botnet-nick
244 in va� bot bo dodan crontabu (za to na stre�niku potrebujete ustrezne privilegije)
245
246 * Presets:
247
248 Presets je paket prednastavljenih nastavitev botneta, ki se ponovno nastavijo vsakih 60 minut ali pa ko se kak�en bot izklju�i iz botneta. Trenutno so vam na voljo 3 vrste prednastavitev:
249
250 * defense:
251 +defense v vseh botih na kanalu.
252 +dkopper v 1/3 botov na kanalu (6kick v defense mode).
253 +fastop v '2/3 botov'.
254 +enforcebans v 1/2 +fastops botih.
255 +alimit v *ENEM* botu (�e je omogo�eno preko huba).
256
257 * freeop:
258 -defense v vseh botih za dolo�en kanal.
259 +enforcebans v 1/2 botov na kanalu.
260 +alimit v *ENEM* botu (�e je omogo�eno preko huba).
261
262 * off:
263 prednastavitve so izklju�ene. channel settings can be set via
264 .enforce or .rchanset setting. Only +alimit is set
265 on *ONE* bot (if enabled on hub).
266
267 Prednastavitve lahko spremenite s .preset komando (dostopno botnet adminu).
268 Primer: .preset #test freeop
269
270 * Maxbots:
271
272 Naslednja 'prednastavitev' lahko dolo�i, koliko botov �elite na kanalu.
273 Botnet preverja koliko botov je na kanalu vsakih 10 minut in v primeru join
274 flooda.
275 Primer: .preset #test maxbots 5 - po dolo�enem �asu lahko vidi� le 5 botov na kanalu #test. �e kateri od teh pade dol, pride na kanal #test avtomatsko novi bot (vkolikor ga imate na razpolago).
276
277 * Autolimit:
278
279 Autolimit ('+alimit' nastavitev kanala) prisili bote, da obdr�ijo ali spremenijo limit kanala glede na to koliko obiskovalcev je na kanalu. Autolimit se nastavi s komando .enforce ali .chanset, naprimer: .enforce #test limits 10:5:0
280 10 - dolo�en �as na koliko minut naj bot preverja in spreminja limit.
281 5 - razlika med dejanskim �tevilom obiskovalcev kanala in trenutno dovoljenim �tevilom
282 0 - spremeba limita ob vsakem prihodu/odhodu na kanal (0 - onemogo�eno, 1 - omogo�eno).
283
284 * Syspass and hubpass:
285
286 Syspass is a system password, which protect all *mass* commands and
287 '.die', '.restart', '.rehash' (and few others) for non-authorized
288 users. If you see a message like this: 'Evangeline: No authorization',
289 it means that syspass is set and users have to authorize to user that
290 commands. To authorize you must use '.syspass' command.
291
292 Hubpass is a password required to enter party-line. If you see a message
293 like: 'Welcome, please enter the partyline password:' it means that
294 hubpass is set and you must enter those password to join party-line.
295
296 Both passwords can be set and disabled on party-line by bot admin via
297 '.bpass' command.
298 Example: .bpass -syspass set encore - will set word 'encore' as syspass.
299 .bpass -hubpass set encore - will set word 'encore' as hubpass.
300 .bpass -syspass off - will disable syspass.
301 .bpass -hubpass off - will disable hubpass.
302
303
304 * Hub notices:
305
306 Other bots can inform hub about important (in my oppinion) events.
307 deops, kicks, mode changes (by non-owner), netsplits, limit or ban
308 override, diverse-flood, reop mode changes, channel without opped
309 bots....
310 It can also send info when connected, disconnected, k-lined or
311 non-authorized on server, and many many more.
312 To see all those messages you have to add +m (msg) flag to your
313 console: .console +m
314
315 * Proxy support:
316
317 Evangeline can connect to irc through anonymous CONNECT and POST proxies.
318 To force bot using such proxy add 'firewall' setting to its config file.
319
320 If you want bot to connect through POST proxy add:
321 firewall "Pproxy_address:proxy_port"
322
323 If you want bot to connect through CONNECT proxy (more popular) add:
324 firewall "Cproxy_address:proxy_port"
325
326(6) Commands:
327
328 *HUBS*
329
330 -Main/Alt main: (some of them work also on Slave and Alt slave)
331
332 (+m) .+channel <channel> - add new <channel> (only on that bot)
333 Example: .+channel #test
334 (+m) .+mhost <user> <host1> [host2] [...] - add multiple hosts to
335 <handle>.
336 Example: .+mhost KrzychuG *!blah@blah.net *!bubu@a.com *!wrr@z.net
337 (+m) .-channel <channel> - remove a <channel> (only on that bot)
338 Example: .-channel #test
339 (+m) .-mhost <user> <host1> [host2] [...] - remove multiple hosts to
340 <handle>.
341 Example: .-mhost KrzychuG *!blah@blah.net *!bubu@a.com *!wrr@z.net
342 (+n) .aa <name> <ip/host> <bots port> <users port> [hubpass] - add alt
343 hub with <name> on <ip/hostname>, <bots port> and <users port>
344 and [hubpass] if set on alt.
345 Example: .aa alt1 192.168.0.1 34010 34011
346 (+n) .ab <name> <ircname> <ident> <hostname> <ip/host> <port> [-slave <nick>]
347 [ipv6hosts] - add new leaf, where <name> is nick in botnet, <ircname> is
348 nick on irc, <ident> is ident on irc, <hostname> is hostname on irc,
349 <ip/host> is ip address needed to link to botnet, <port> is bot listenport,
350 [-slave <nick>] is slave nickname if you want to link bot to slave,
351 [ipv6host] is an addidional IPv6 hostname.
352 Example: .ab blah blah krzychug blah.net 192.168.0.1 9999 -slave slave1
353 (+n) .abstop - clear addbot variables if something went bad (some errors like
354 'invalid idx' and such things)
355 Example: .abstop
356 (+n) .addeggdrop <name> <ircname> <ident> <hostname> <ip/host> <port>
357 [-slave <nick>] [ipv6hosts] - add new eggdrop leaf, where <name> is nick
358 in botnet, <ircname> is nick on irc, <ident> is ident on irc, <hostname>
359 is hostname on irc, <ip/host> is ip address needed to link to botnet,
360 <port> is bot listenport, [-slave <nick>] is slave nickname if you want
361 to link bot to slave, [ipv6host] is an addidional IPv6 hostname.
362 Example: .addeggdrop blah blah krzychug blah.net 192.168.0.1 9999 -slave
363 slave1
364 (+n) .addstop - clear addbot variables if something went bad (some errors like
365 'invalid idx' and such things)
366 Example: .addstop
367 (-) .alias <-/alias> - show, add or remove aliases.
368 To add an alias: .alias .name=".cmd $1 $s", ex.: .alias .wii=".whois $1"
369 To remove an alias: .alias .name=
370 To list aliases: .alias
371 (+n) .as <name> <ip/host> <bots port> <users port> [hubpass] - add slave hub with
372 <name> on <ip/hostname>, <bots port> and <users port> and [hubpass] if
373 set on slave.
374 Example: .aa slave1 192.168.0.1 44010 44011
375 (+m) .autoop <on/off> [channel] - turn on/off autoop for all bots(+a flag) global
376 or on [channel]
377 Example: .autoop on #test
378 (+m) .bncjump <bot> <server> [port] [password] - force <bot> connected through bnc
379 to change irc server.
380 .bncjump bot1 krakow.irc.pl 6667
381 (+n) .bpass <-hubpass/-syspass> <set/off> <password> - set or unset hubpass or syspass.
382 To set: .bpass -hubpass set something or .bpass -syspass set something
383 To unset: .bpass -hubpass off or .bpass -syspass off
384 (+m) .channels [channel] - show list of channels along with description and some data
385 (like preset, op count, voice count etc).
386 (+m) .closechan <bot> <channel> - force <bot> to close <channel> (MODE #channel +i).
387 Example: .closechan bot1 #test
388 (+m) .downbots - show unlinked bots.
389 (+m) .eflag <flag(s)> [channel] - add or remove global (or channel) userflag for all
390 bots in botnet.
391 Example: .eflag +K #test
392 (-) .encrypt <password> - encrypt string, which can be later used for hubpass or syspass.
393 .encrypt text
394 (+m) .enforce [-slave <nick>] <channel> [+/-]<setting(s)> - change channel settings in
395 botnet.
396 Example: .enforce -slave slave1 <channel> -enforcebans - will remove enforcebans from
397 #channel on all bots linked to slave1.
398 Example: .enforce * -enforcebans - will remove enforcebans from all hub channels and
399 all bots in botnet.
400 (+m) .enforceflag <flag(s)> [channel] - add or remove global (or channel) userflag for all
401 bots in botnet.
402 Example: .enforceflag +K #test
403 (-) .help [command] - very usefull command :)
404 Example: .help enforce
405 (+m) .list <c/i/n/d/p/s/u/v> [bot] - show some info about bots:
406 c - channels on which bots are opped
407 i - inactive channels
408 n - channels on which bots are not opped
409 d - disconnected bots
410 p - ping between bots
411 s - bot's server
412 u - bot's uptime
413 v - bots binary and tcl version
414 (+m) .mclear [-slave <nick>] <mode/server/help/all> - clean specific type of queue.
415 .mclear server
416 (+m) .mcycle [-slave <nick>] <time> <channel> - force bots to leave channel for
417 some <time> in seconds
418 Example: .mcycle 60 #test
419 (+n) .mdie [-slave <nick>] - botnet die ;)
420 (+n) .mdump [-slave <nick>] <data> - botnet dump.
421 Example: .mdump PRIVMSG #test :blah
422 (+n) .mexport [-slave <nick>] - mass userfile export.
423 (+n) .mflood [-slave <nick>] <user> <type> - flood <user> on IRC with choosen flood <type>.
424 Example: .mflood blah version
425 (+m) .mjoin [-ajf <time>/-slave <nick>] <channel> [server] [key] - add channel to botnet.
426 To join with anty-join-flood: .mjoin -ajf 15 #test - will join bot every 15 seconds.
427 (+n) .mjump <server> [port] [password] - botnet jump (really needed?).
428 Example: .mjump krakow.irc.pl
429 (+n) .mkick <all/ops> <channel> [6kick] - kick <all> or <ops> from <channel>. [6kick] is
430 dangerous option.
431 Example: .mkick all #test
432 (+m) .mmsg [-slave <nick>] <user/channel> <msg> - send message from all bots to <user>
433 or <channel>.
434 Example: .mmsg #test blah blah
435 (+m) .modenforce [-slave <nick>] <channel> [+/-]<chanmode(s)> - set chanmodes which
436 have to be kept on <channel>.
437 Example: .modenforce #test +nt-k
438 (+m) .mpart [-slave <nick>] <channel> [server] - botnet part
439 Example: .mpart #test
440 (+n) .mrehash [-slave <nick>] - botnet rehash
441 (+n) .mrestart [-slave <nick>] - botnet restart
442 (+n) .mupdate [-m <mirror number>] [-force] - botnet tcl update.
443 (+m) .netchanmode [-slave <nick>] <channel> [+/-]<chanmode(s)> - set chanmodes which
444 have to be kept on <channel>.
445 Example: .netchanmode #test +nt-k
446 (+m) .netchanset [-slave <nick>] <channel> [+/-]<setting(s)> - change channel settings in
447 botnet.
448 Example: .netchanset -slave slave1 <channel> -enforcebans - will remove enforcebans from
449 #channel on all bots linked to slave1.
450 Example: .netchanset * -enforcebans - will remove enforcebans from all hub channels
451 and all bots in botnet.
452 (+m) .netclear [-slave <nick>] <mode/server/help/all> - clean specific type of queue.
453 .netclear mode
454 (+m) .netcycle [-slave <nick>] <time> <channel> - force bots to leave channel for
455 some <time> in seconds
456 Example: .netcycle 60 #test
457 (+n) .netdie [-slave <nick>] - botnet die ;)
458 (+n) .netdump [-slave <nick>] <data> - botnet dump.
459 Example: .netdump PRIVMSG #test :blah
460 (+n) .netexport [-slave <nick>] - mass userfile export.
461 (+m) .netflag <flag(s)> [channel] - add or remove global (or channel) userflag for all
462 bots in botnet.
463 Example: .netflag +K #test
464 (+n) .netflood [-slave <nick>] <user> <type> - flood <user> on IRC with choosen
465 flood <type>.
466 Example: .netflood blah version
467 (+n) .netsend (more data on .netsend) - send file to bot/group of bots.
468 Example: .netsend bot1 cfg/settings
469 (+m) .nnick <-all/bot> - force bot or all bots to switch to normal nicks.
470 (+m) .openchan <bot> <channel> - open channel (MODE #channel -i).
471 Example: .openchan bot1 #test
472 (+n) .optimize [channel] - optimize channel settings for channel or all channels in
473 botnet.
474 Example: .optimize #test
475 (+n) .preset <channel> <preset/off> - set or disable presets.
476 Example: .preset #channel defense or .preset #channel maxbots 10
477 (+n) .rbotattr <bot> <target bot> [+/-]<botflag(s)> - set/remove botflag from <target bot> on
478 <bot>
479 Example: .rbotattr bot1 hub +p
480 (+n) .rchaddr <bot> <target bot> <address> <bots port> [users port] - change <target bot>
481 address on <bot>.
482 Example: .rchaddr bot1 hub 192.168.0.1 24010 24011
483 (+m) .rchanmode <bot> <channel> [+/-]<chanmode(s)> - change chanmode for <channel> on <bot>.
484 Export: .rchanmode bot1 #test +nt-i
485 (+m) .rchanset <bot> <channel> [+/-]<settings> - change channel setting for <channel> on
486 <bot>.
487 Example: .rchanset bot1 #test -enforcebans
488 (+n) .rchattr <bot/*> <handle> [+/-]<flags> - change userflags for <handle> on <bot> or
489 all bots.
490 Example: .rchattr bot1 main +H or .rchattr * main +H
491 (+m) .rclear <bot> <mode/server/help/all> - clear queue on <bot>.
492 Example: .rclear bot1 mode
493 (+n) .rdeop <-all/bot> <nick> [channel] - deop <nick> on [channel] or all channels by
494 all bots or one <bot>.
495 Example: .rdeop bot1 KrzychuG #test
496 (+n) .rdie <bot> - kill bot ;)
497 Example: .rdie bot1
498 (+n) .rdop <-all/bot> <nick> [channel] - deop <nick> on [channel] or all channels by all
499 bots or one <bot>.
500 Example: .rdop bot1 KrzychuG #test
501 (+n) .rdump <bot> <data> - bot dump.
502 Example: .rdump bot1 MODE #test +o bot2
503 (+n) .rexport <bot> - force <bot> to export userfile.
504 Export: .rexport bot1
505 (+m) .rmode <-all/bot> <channel> <data> - force <bot> or all bots to enforce mode (<data>) on
506 <channel>.
507 Example: .rmode bot1 #test +o blah
508 (+m) .rmsg <-all/bot> <user/channel> <msg> - <bot> or all bots say <msg> to <user> or <channel>.
509 Example: .rmsg -all #test blah blah
510 (+n) .rnick <-all/bot> - force <bot> or all bots to change their nick(s) to random generated.
511 (+m) .rop <-all/bot> <nick> [channel] - force <bot> or all bots to op <nick> on <channel> or
512 on all channels.
513 Example: .rop bot1 KrzychuG #test
514 (+n) .rpart <bot> <channel> - force <bot> to part from <channel>.
515 Example: .rpart bot1 #test
516 (+n) .rrehash <bot> - force <bot> to rehash.
517 (+n) .rrestart <bot> - force <bot> to restart.
518 (+n) .rupdate <bot> [-m <mirror number>] [-force] - force bot update tcl.
519 (+m) .savenet - save chanlist and userlist on all bots.
520 (+m) .syspass <password> - authorize.
521 (+m) .tkm <channel> [6kick] - takeover <channel> (kick opped users without + userflag).
522 Example: .tkm #test
523 (+n) .tkmjoin [-slave <nick>/-auto] <channel> [6kick] [server] [key] - force botnet to join
524 channel and prepare to takeover (-auto option will set proper channel settings on proper
525 bots).
526 Example: .tkmjoin -auto #test
527 (-) .unalias <alias> - remove an alias.
528 Example: .unalias .blah
529 (+n) .update [-m <mirror number>] [-force] - update current bot tcl script.
530 (+m) .users - show some info about users.
531 (+m) .verify - show all handles without password.
532
533(7) Channel settings:
534
535 All of those setting can be changed via '.chanset' command or '.enforce'
536 and '.rchanset' from hub.
537
538 *FLAGS?*
539 idle-kick 0
540 This setting will make the bot check every minute for idle users. Set
541 this to 0 to disable idle check.
542
543 stopnethack-mode 0
544 This setting will make the bot kick anyone who enters the channel
545 with serverops. There are seven different modes for this settings:
546
547 0 turn off
548 1 isoptest (allow serverop if registered op)
549 2 wasoptest (allow serverop if user had op before split)
550 3 allow serverop if isop or wasop
551 4 allow serverop if isop and wasop.
552 5 If the channel is -defense, see stopnethack-mode 3
553 If the channel is +defense, see stopnethack-mode 1
554 6 If the channel is -defense, see stopnethack-mode 2
555 If the channel is +defense, see stopnethack-mode 4
556
557 revenge-mode 0
558 This settings defines how the bot should punish bad users when
559 revenging. There are four possible settings:
560 0 Deop the user.
561 1 Deop the user and give them the +d flag for the channel.
562 2 Deop the user, give them the +d flag for the channel, and
563 kick them.
564 3 Deop the user, give them the +d flag for the channel, kick,
565 and ban them.
566
567 ban-time 120
568 Set here how long temporary bans will last (in minutes). If you
569 set this setting to 0, the bot will never remove them.
570
571 exempt-time 60
572 Set here how long temporary exempts will last (in minutes). If
573 you set this setting to 0, the bot will never remove them. The bot will
574 check the exempts every X minutes, but will not remove the exempt if a
575 ban is set on the channel that matches that exempt. Once the ban is
576 removed, then the exempt will be removed the next time the bot checks.
577
578 invite-time 60
579 Set here how long temporary invites will last (in minutes). If you set
580 this setting to 0, the bot will never remove them. The bot will check
581 the invites every X minutes, but will not remove the invite if a
582 channel is set to +i. Once the channel is -i then the invite will be
583 removed the next time the bot checks.
584
585 aop-delay (minimum:maximum)
586 This is used for autoop, autohalfop, autovoice. If an op or voice joins
587 a channel while another op or voice is pending, the bot will attempt to
588 put both modes on one line.
589
590 aop-delay 0 No delay is used.
591 aop-delay X An X second delay is used.
592 aop-delay X:Y A random delay between X and Y is used.
593
594
595 flood-chan 10:60
596 Set here how many channel messages in how many seconds from one
597 host constitutes a flood. Setting this to 0 or 0:0 disables text
598 flood protection for the channel.
599
600 flood-deop 3:10
601 Set here how many deops in how many seconds from one host constitutes
602 a flood. Setting this to 0 or 0:0 disables deop flood protection for
603 the channel.
604
605 flood-kick 3:10
606 Set here how many kicks in how many seconds from one host constitutes
607 a flood. Setting this to 0 or 0:0 disables kick flood protection for
608 the channel.
609
610 flood-join 5:60
611 Set here how many joins in how many seconds from one host constitutes
612 a flood. Setting this to 0 or 0:0 disables join flood protection for
613 the channel.
614
615 flood-ctcp 3:60
616 Set here how many channel ctcps in how many seconds from one host
617 constitutes a flood. Setting this to 0 or 0:0 disables ctcp flood
618 protection for the channel.
619
620 flood-nick 5:60
621 Set here how many nick changes in how many seconds from one host
622 constitutes a flood. Setting this to 0 or 0:0 disables nick flood
623 protection for the channel.
624
625 *CHANSETS*
626
627 enforcebans
628 When a ban is set, kick people who are on the channel and match
629 the ban? (Should be set only on 1/3 of all channel bots)
630
631 dynamicbans
632 Only activate bans on the channel when necessary? This keeps the
633 channel's ban list from getting excessively long. The bot still
634 remembers every ban, but it only activates a ban on the channel
635 when it sees someone join who matches that ban.
636
637 userbans
638 Allow bans to be made by users directly? If turned off, the bot will
639 require all bans to be made through the bot's console.
640
641 dynamicexempts
642 Only activate exempts on the channel when necessary? This keeps the
643 channel's exempt list from getting excessively long. The bot still
644 remembers every exempt, but it only activates a exempt on the channel
645 when it sees a ban set that matches the exempt. The exempt remains
646 active on the channel for as long as the ban is still active.
647
648 userexempts
649 Allow exempts to be made by users directly? If turned off, the bot will
650 require all exempts to be made through the bot's console.
651
652 dynamicinvites
653 Only activate invites on the channel when necessary? This keeps the
654 channel's invite list from getting excessively long. The bot still
655 remembers every invite, but the invites are only activated when the
656 channel is set to invite only and a user joins after requesting an
657 invite. Once set, the invite remains until the channel goes to -i.
658
659 userinvites
660 Allow invites to be made by users directly? If turned off, the bot
661 will require all invites to be made through the bot's console.
662
663 autoop
664 Op users with the +o flag as soon as they join the channel?
665 This is insecure and not recommended.
666
667 defense
668 Only let users with the proper flagf to op people on channel.
669
670 greet
671 Say a user's info line when they join the channel?
672
673 protectops
674 Reop a user with the +o flag if they get deopped?
675
676 protectfriends
677 Reop a user with the +f flag if they get deopped?
678
679 revenge
680 Remember people who deop/kick/ban the bot, valid ops, or friends
681 and punish them? Users with the +f flag are exempt from revenge.
682
683 revengebot
684 This is similar to to the 'revenge' option, but it only triggers
685 if a bot gets deopped, kicked or banned.
686
687 autovoice
688 Voice users with the +v flag when they join the channel?
689
690 secret
691 Prevent this channel from being listed on the botnet by
692 non-owners.
693
694 shared
695 Share channel-related user info for this channel?
696
697 cycle
698 Cycle the channel when it has no ops?
699
700 dontkickops
701 Do you want the bot not to be able to kick users who have the +o
702 flag, letting them kick-flood for instance to protect the channel
703 against clone attacks?
704
705 inactive
706 This prevents the bot from joining the channel (or makes it leave the
707 channel if it is already there). It can be useful to make the bot
708 leave a channel without losing its settings, channel-specific user
709 flags, channel bans, and without affecting sharing.
710
711 nodesynch
712 Allow non-ops to perform channel modes? This can stop the bot from
713 fighting with services such as ChanServ, or from kicking IRCops when
714 setting channel modes without having ops.
715
716 dkopper
717 Special version of +defense mode, which react on 4op or 5op.
718 Should be set on 1/3 of all channel bots (bot with +dkopper
719 won't react on 1op, 2op or 3op).
720
721 takeover
722 Lame takeover mode ;) When bot got op, it tries to op rest
723 of bots and take channel.
724
725 fastkick
726 6kick for +takeover mode.
727
728 fastop
729 5op for +takeover mode and for BotnetOP (should be turned on
730 on 1/3 of all channel bots).
731
732(8) Linking bots:
733
734 *MANUALLY*
735
736 *HUBS*
737
738 - Main alt: ( h - on main hub, a - on alt, r - on bots linked to main )
739 h) .+bot alt_nick alt_ip:bots_port/users_port
740 h) .botattr alt_nick +gs
741 a) .+bot main_nick main_ip:bots_port/users_port
742 a) .botattr main_nick +ghp
743 a) .chattr main_nick +H
744 a) .link main_nick
745 for every bot linked to main hub:
746 a) .botattr bot +gs
747 r) .botattr alt_nick +agp
748
749 - Slave alt: (h - on main hub, on alt, r - on bots linked to slave hub)
750 h) .+bot alt_nick alt_ip:bots_port/users_port
751 h) .botattr alt_nick +gs
752 a) .+bot main_nick main_ip:bots_port/users_port
753 a) .botattr main_nick +ghp
754 a) .chattr main_nick +H
755 a) .link main_nick
756 for every bot linked to slave hub:
757 a) .botattr bot +gs
758 r) .botattr alt_nick +agp
759
760 - Slave (h - on main hub, s - on slave hub)
761 h) .+bot slave_nick slave_ip:bots_port/users_port
762 h) .botattr slave_nick +gs
763 s) .+bot main_nick main_ip:bots_port/users_port
764 s) .botattr main_nick +ghp
765 s) .chattr main_nick +H
766 s) .link main_nick
767
768 *LEAFS*
769
770 - To Main Hub: (h - on main hub, l - on leaf)
771 h) .+bot leaf_nick leaf_ip:port
772 h) .botattr leaf_nick +gs
773 h) .chattr leaf_nick +foK
774 h) .+host leaf_hostname
775 l) .+bot main_nick main_ip:bots_port/users_port
776 l) .botattr main_nick +ghp
777 l) .chattr main_nick +H
778 l) .link main_nick
779 If you want to add alt, type: (a - on alt)
780 a) .botattr leaf_nick +gs
781 l) .botattr alt_nick +agp
782
783 - To Slave Hub: (h - on main hub, s - on slave hub, l - on leaf)
784 h) .+bot leaf_nick leaf_Ip:port
785 h) .chattr leaf_nick +foK
786 h) .+host leaf_nick leaf_hostname
787 s) .botattr leaf_nick +gs
788 l) .+bot slave_nick slave_ip:bots_port/users_port
789 l) .botattr slave_nick +ghp
790 l) .link slave_nick
791 Wait for userfile from slave_nick
792 l) .botattr main_nick +gp
793 l) .chattr main_nick +H
794 If you want to add alt, type: (a - on alt)
795 a) .botattr leaf_nick +gs
796 l) .botattr alt_nick +agp
797
798 *ADDBOT*
799
800 *HUBS*
801
802 - Alt hub:
803 .aa <name> <ip/host> <port bots> <port users> [hubpass]
804 <name> - alt hub's botnet-nick
805 <ip/host> - alt hub's address
806 <port bots> - alt hub's bots-listenport
807 <port users> - alt hub's users-listenport
808 [hubpass] - if you set hubpass on althub, type it here
809 Rest must be done manually :(
810
811 - Slave hub:
812 .as <name> <ip/host> <port bots> <port users> [hubpass]
813 <name> - alt hub's botnet-nick
814 <ip/host> - alt hub's address
815 <port bots> - alt hub's bots-listenport
816 <port users> - alt hub's users-listenport
817 [hubpass] - if you set hubpass on althub, type it here
818
819 - Leaf (IPv4/BNC) to main hub:
820 .ab <name> <ircname> <ident> <hostname> <ip/host> <port>
821 <name> - leaf's botnet-nick
822 <ircname> - leaf's nick on irc
823 <ident> - leaf's ident (string between ! and @ in hostname)
824 <hostname> - hostname on irc (for example evangeline.b3ta.org)
825 <ip/host> - leaf's address
826 <port> - leaf's port
827 Example: .ab blah blah krzychug evangeline.b3ta.org 192.168.0.1 9999
828
829 - Leaf (IPv6) to main hub:
830 .ab <name> <ircname> <ident> <hostname> <ip/host> <port> [ipv6host]
831 <name> - leaf's botnet-nick
832 <ircname> - leaf's nick on irc
833 <ident> - leaf's ident (string between ! and @ in hostname)
834 <hostname> - hostname on irc (for example evangeline.b3ta.org)
835 <ip/host> - leaf's IPv4 address
836 <port> - leaf's port
837 [ipv6host] - leaf's IPv6 IP address
838 Example: .ab blah blah krzychug evangeline.b3ta.org 192.168.0.1
839 9999 2009:888:1524:10:0:0:0:0
840
841 - Leaf (IPv4/BNC) to slave hub:
842 .ab <name> <ircname> <ident> <hostname> <ip/host> <port>
843 [-slave <nick>]
844 <name> - leaf's botnet-nick
845 <ircname> - leaf's nick on irc
846 <ident> - leaf's ident (string between ! and @ in hostname)
847 <hostname> - hostname on irc (for example evangeline.b3ta.org)
848 <ip/host> - leaf's address
849 <port> - leaf's port
850 [-slave <nick>] - slave's botnet-nick
851 Example: .ab blah blah krzychug evangeline.b3ta.org
852 192.168.0.1 9999 -slave slave1
853
854 - Leaf (IPv6) to main hub:
855 .ab <name> <ircname> <ident> <hostname> <ip/host> <port> [ipv6host]
856 <name> - leaf's botnet-nick
857 <ircname> - leaf's nick on irc
858 <ident> - leaf's ident (string between ! and @ in hostname)
859 <hostname> - hostname on irc (for example evangeline.b3ta.org)
860 <ip/host> - leaf's IPv4 address
861 <port> - leaf's port
862 [-slave <nick>] - slave's botnet-nick
863 [ipv6host] - leaf's IPv6 IP address
864 Example: .ab blah blah krzychug evangeline.b3ta.org 192.168.0.1
865 9999 -slave slave1 2009:888:1524:10:0:0:0:0
866
867(10) Frequently asked questions (FAQ):
868
869 * I get 'ld-elf.so.1: Shared object 'libtcl84.so.1' not found or
870 'error in loading shared libraries libtcl8.4.so: cannot open shared
871 object file: No such file or directory' while starting the bot (or
872 similiar error):
873
874 It looks that bot was compiled with one Tcl version and tries to load
875 another. Maybe administrator upgraded Tcl and didn't tell you. You need
876 to recompile bot.
877
878 Maybe while administator upgrading Tcl, he/she didn't clean the old
879 version of Tcl or installed it into another directory. Tell your admin
880 about that :)
881
882 You might also try:
883 ./configure --with-tcllib=<path_to_tcl_lib>
884 --with-tclinc=<path_to_tcl.h>
885
886 For example:
887 ./configure --with-tcllib=/usr/local/tcl8.4.6/lib/libtcl.so
888 --with-tclinc=/usr/local/tcl8.4.6/include/tcl.h
889
890 This will tell configure where to look for the Tcl files.
891
892 Try looking for libtcl by:
893 ls /usr/lib/libtcl*
894 ls /usr/local/lib/libtcl*
895
896 Try looking for tcl.h by:
897 ls /usr/include/tcl.h
898 ls /usr/local/include/tcl.h
899
900 If everything else fails, try to install Tcl to your home dir ;)
901
902 * Installing Tcl in home directory:
903
904 Download newest version of tcl (check links section), then unpack
905 and go to unix/ directory. Configure, compile and install Tcl in
906 your home directory in tcl directory (if you're using bash you can
907 use $HOME variable):
908 ./configure --prefix=$HOME/tcl
909 make
910 make install
911
912 Now you should have Tcl libraries and tclsh in $HOME/tcl directory.
913 Add $HOME/tcl/bin to your PATH variable (in bash:
914 export PATH="$PATH:$HOME/tcl/bin") and LD_LIBRARY_PATH to $HOME/tcl/lib
915 (in bash: export LD_LIBRARY_PATH="$HOME/tcl/lib").
916
917 NOTE: You should add your new PATH and LD_LIBRARY_PATH in shell
918 startup files (~/.bashrc in bash), so it should work next time too.
919
920 Bot should now compile and start without problems.
921
922 NOTE: If you installed Tcl in diffrent directory than: $HOME/tcl add
923 --with-tclinc=/path/to/tcl.h --with-tcllib=/path/to/libtcl.so
924 (or similiar), For example:
925 --with-tclinc=$HOME/tcl8.4/include/tcl.h
926 --with-tcllib=$HOME/tcl8.4/lib/libtcl.so
927
928 * +user - i can't add new user(s)
929 You have to be admin, permowner or adder. First two have to be set
930 before compilation in src/main.c ('char admin[121]' and
931 'char owner[121]'), third is an user with +r flag. Flag can only be
932 added by admin or permowner.
933
934 * Kick reasons - how to change?
935 It's preety simple. Before compilation open modules/irc.mod/chaos.c in
936 editor and find 'static const char *kreasons[]'. Below you've got all
937 my reasons, which you can change or remove (enter one: '"",').
938 If you also want to change 'Evangeline' string added before kick reason,
939 find and change it 'char outputr[120]'
940
941 * How can i load my tcl scripts?
942 There are 2 methods to load user tcl scripts. Both can be enabled
943 before compilatio in src/main.c:
944
945 - open src/main.c and find 'char Tcl2Load[512]' and add path to
946 your tcl script, for example:
947 char Tcl2Load[512] = "scripts/mc.limit.tcl scripts/blah.tcl"
948 (scripts/ directory must be created by user).
949 You cannot change (add or remove) loaded scripts after compilation.
950 Every bot started from that directory will load same tcl scripts.
951
952 - open src/main.c and find 'char Tcl2Load[512] = "";'. Put '//' at
953 the same beggining of that line, then find '//char Tcl2Load[121]'
954 and remove '//' from that line. This will enable loader. loader.tcl
955 is available in .data/.scripts/ directory. This file is very easy to
956 edit:
957
958 array set Tcl2Load {
959 ipv4 "scripts/tcl1.tcl scripts/tcl2.tcl"
960 ipv6 "scripts/tcl2.tcl"
961 bnc "scripts/tcl3.tcl .data/.scripts/tcl55.tcl"
962 } ;# Tcl2Load
963
964 For example, if you want bot with 'mybot' as botnet-nick to
965 load 'scripts/mc.limit.tcl' just add:
966
967 array set Tcl2Load {
968 ipv4 "scripts/tcl1.tcl scripts/tcl2.tcl"
969 ipv6 "scripts/tcl2.tcl"
970 bnc "scripts/tcl3.tcl .data/.scripts/tcl55.tcl"
971 mybot "scripts/mc.limit.tcl"
972 } ;# Tcl2Load
973
974 * Problems with start fresh bot, segmentation fault.
975 If you see a message like:
976
977 * Last context: tclhash.c/215 []
978 * Please REPORT this BUG!
979 * Check doc/BUG-REPORT on how to do so.
980 * Wrote DEBUG
981 * SEGMENT VIOLATION -- CRASHING!
982 Segmentation fault (core dumped)
983
984 You can try to replace binary/tbcload.so file with 1.4 version
985 (or 1.3 version if it won't help). If you still have that error
986 you can try to compile tbcload 1.4 on that account.
987
988 Precompiled tbcload libraries can be found here:
989 http://www.averse.piasta.pl/list/ in libs/tbcload directory
990 Tbcload 1.4 source code can be found here:
991 http://www.averse.piasta.pl/_data/tcl-sources/tbcload.tar.gz
992
993 * My bot QUIT irc with reason: 'Segmentation fault!':
994 Probably you found a bug. Make sure your bot dumped core file
995 (file should be named core, code.PIDNUMBER or evangeline-VERSION.core).
996 Load core file using gdb debugger (gdb ./evangeline core) and type
997 'bt'. Post whole info at forum (www.averse.piasta.pl/forums). Logs
998 and/r some explanation what happend before bot crashed is also welcome.
999
1000 * Non-working botnet - Linked bots doesn't respond as "botnet"
1001 To use commands like .mjoin, .enforce (.netchanset) etc you have to
1002 compile 2 packages: msa (main/slave/alt hubs) and normal (v4/v6/bnc).
1003 Bots from msa package doesn't connect to irc (there is no need to) but
1004 contains all useful commands and options to manage whole botnet.
1005 Bots from normal package work as normal bots connectiong to irc and
1006 operating there. They have to be linked to bot from msa package.
1007
1008 * Failed connection; aborted userfile transfer
1009 This anoying problem depends on server. If you've got something like
1010 this, add to you hub config file 'my-ip "ip_address"' and eventually
1011 'my-hostname "hostname_for_above_ip"'. This should help.
1012
1013 * Upgrade from previous versions:
1014
1015 - AversE:
1016
1017 *NOTE:* If you've got AversE v1.7 or earlier, you have to add
1018 '-telnet!*@*' mask to one of your users (should be you).
1019 *NOTE:* If you've got AversE v1.8-1.8.2 you can't do an upgrade.
1020 *NOTE:* If you've got AversE v1.8.6 you don't have to modify
1021 userfile. Just move/copy userfile and chanfile to
1022 .data/.bdata and start Evangeline with '-u' param
1023 (only v4/v6/bnc). If you want to import userfile on hub
1024 copy AversE userfile to evangeline-msa/ and type
1025 '.import filename.uf'.
1026
1027 - Evangeline:
1028 *OPOMBA:* �e nadgrajuje� Evangeline 0.9 ali 1.0... skratka starej�ega od
1029 RC3, posku�aj izvoziti listo uporabnikov (userfile) s komando '.export'
1030 (ali .mexport). In�taliraj novega bota in uporabi v njem '.import' komando.
1031 *OPOMBA:* �e nadgrajuje� Evangeline 1.0 RC3 ali novej�ega in si ob in�talaciji uporabil '--custom-key' samo odpakiraj novo verzijo v isti direktorij in rein�taliraj (./configure --custom-key;make) z istim kodirnim kju�em. �e si uporabil avtomatsko generiran kodirni klju�, mora� izvoziti listo uporabnikov (.export/.mexport) in jo potem ponovno uvoziti v novega bota (.import).
1032
1033(10) Pomo�:
1034 Pomo� lahko poi��ete na AversE/Evangeline spletni strani (glej povezave!).
1035 �e ne najdete odgovora na va�e vpra�anje/te�avo lahko poskusite na #evangeline@IRCnet kanalu.
1036
1037
1038(11) Povezave:
1039 Evangeline website: http://www.averse.piasta.pl
1040 Eggdrop website: http://www.eggheads.org
1041 Eggdrop help: http://www.egghelp.org
1042 Tcl download: ftp://tcl.activestate.com/pub/tcl and
1043 ftp://ftp.eggheads.org/pub/tcl
1044
1045((12) O meni:
1046 Moj e-mail: arcain@evangeline.x86.cl
1047 Moj vzdevek (nickname): KrzychuG, dosegljiv na IRC-u (#evangeline@IRCnet).
1048
1049
1050(13) Pozdravi in zahvale (po abecednem vrstnem redu):
1051 assassin: zaradi dobrih idej, bug poro�il, pomo�i/podpore (na kanalu in forumu) in posoja botneta za par mesecev ;)
1052 Bogas: zaradi dobrih idej, testiranja, bug poro�il in pomo�i (na kanalu in forumu)
1053 Dafcio: zaradi nekaterih zanimivih idej, testiranja, bug poro�il in pomo�i (na kanalu)
1054 Jorhn: zaradi shell accounta, testiranja, bug poro�il in nekaj pomo�i (na kanalu)
1055
1056 Ostala #evangeline ekipa in vsi, ki uporabljajo AversE/Evangeline bote.
1057
1058---------------------------------- OPOMBA -------------------------------------
1059 Deli tega dokumenta so uporabljeni iz Eggdrop's Readme.
1060----------------------------------------------------------------------------
1061____________________________________________________________________________
1062# Copyright (C) 1999 - 2005 Eggheads Development Team
1063# Copyright (C) 2001 - 2005 Arcain/[Xp-AvR]
1064
1065
1066