Magazyn Ready
Nr 6-7 - czerwiec-lipiec
www.ready.gery.pl

 

Magazyn Ready
Poprzednia strona

Spis Tre╢ci

NastΩpna strona

EGGDROP CZ╩ª╞ 3

ú▒czenie eggdrop≤w

ú▒czenie bot≤w ma kilka zalet. Przede wszystkim je┐eli boty s▒ na tym samym kanale mog▒ mieµ wsp≤ln▒ userliste tzn., ┐e je┐eli dokonamy zmiany w userli╢cie w kt≤rym╢ z bot≤w, automatycznie nast▒pi zmiana we wszystkich. Inn▒ zalet▒ jest wsp≤lne party line, na kt≤rej mog▒ siΩ porozumiewaµ osoby zar≤wno z tego samego kana│u jak i z innych kana│≤w poprzez przy│▒czone boty. DziΩki temu mo┐na porozmawiaµ z innymi w│a╢cicielami/u┐ytkownikami bot≤w lub po prostu jak czego╢ nie wiemy zapytaµ. Istnieje wiele sieci eggdropowych na ╢wiecie i w Polsce. W niekt≤rych liczba bot≤w siΩga 200-300.
1. ú▒czenie bot≤w bez wymiany userlisty
Jest najczΩ╢ciej stosowane. Za│≤┐my, ┐e bot1 to nasz bot, natomiast bot2 to bot, z kt≤rym chcemy siΩ po│▒czyµ. W≤wczas pytamy siΩ w│a╢ciciela (lub osobΩ maj▒ca flagΩ +t) bot2 jaki nick, adres oraz port ma jego bot. Dane te s▒ ustawione w pliku konfiguracyjnym bota. Nick ustawia siΩ zmienn▒ set nick "nick_bota". Port ustawia siΩ zmienn▒ listen nr_portu all lub listen nr_portu bots, aktualne ustawienie mo┐na zobaczyµ komend▒ .rehash .Natomiast adres to adres komputera, gdzie bot jest uruchomiony. Mo┐na go │atwo odczytaµ poprzez komendΩ na ircu /whois nick_bota. Oczywi╢cie znany nam jest nick, adres, port bota1. Dane te przekazujemy w│a╢cicielowi bot2.
W bot1 wpisujemy:
.+bot nick_bot2 adres_bot2:port_bot2 (np .+bot Bocisko linux.w.pwr.edu.pl:3334)
W bot2 w│a╢ciciel (lub +t) wpisuje:
.+bot nick_bot1 adres_bot1:port_bot1 (np .+bot Blacha blachowski.ds100.agh.edu.pl:3234)
Je┐eli chcemy aby bot1 zawsze po uruchomieniu, restarcie, zerwaniu po│▒czenia itd. │▒czy│ siΩ z bot2 to musimy w bot1 wpisaµ:
.botattr nick_bot2 +h
WiΩcej o botflagach tutaj.
2. ú▒czenie bot≤w z wymian▒ userlisty.
Wymiana userlisty polega na:
a) wysy│aniu z bota z botflag▒ +s (aggressive shared) userlisty do bota +p (passive shared) po po│▒czeniu siΩ bot≤w.
b) wymianie informacji o zmianie userlisty flag globalnych oraz, je┐eli jest ustawiona botflaga |+s #channel na obydwu botach, wymianie flag lokalnych dotycz▒cych tego kana│u.
Przed przyst▒pieniem do linkowania musimy zdecydowaµ, kt≤ry bot bΩdzie przyjmowa│ userliste, a kt≤ry wysy│a│, Od tej pory bot, kt≤ry bΩdzie wysy│a│ userliste do innego bota bΩdzie hubem. Bardzo wa┐ne jest aby przy pod│▒czaniu wiΩkszej liczby bot≤w nie tworzyµ "│a±cuszk≤w" bot≤w, w kt≤rych jeden jest zar≤wno hubem jak i odbiera userliste od innego huba, Nale┐y tworzyµ jak tylko jest to mo┐liwe sieµ "gwia╝dzist▒" czyli jeden hub i kilka bot≤w czerpi▒cych z niego userliste. Zatem niech bot2 bΩdzie hubem. Dodajemy boty tak samo jak w wariancie 1.
Dodatkowo w bot1 wpisujemy:
.botattr nick_bot2 +hp
.botattr nick_bot2 |+s #channel1
.botattr nick_bot2 |+s #channel2
itd.. Ustawiamy dla wszystkich kana│≤w, dla kt≤rych chcemy aby boty mia│y takie same ustawienia lokalne.
W bot2 wpisujemy:
.botattr nick_bot1 +s
.botattr nick_bot1 |+s #channel1
.botattr nick_bot1 |+s #channel2
W przypadku powy┐szego │▒czenia eggdrop≤w, w ka┐dym z po│▒czonych bot≤w musi byµ za│adowany modu│ share oraz transfer czyli w pliku konfiguracyjnym musz▒ byµ instrukcje loadmodule share oraz loadmodule transfer. Dodatkowo radzΩ ustawiµ zmienn▒ xfer-timeout na 300. Zmienna ta okre╢la czas, po kt≤rym nast▒pi przerwanie transferu userlisty, je┐eli nie zosta│o zako±czone. W wersji 1.3.27 jest ustawiona domy╢lnie na 30. Jest to stanowczo za ma│o. No chyba ┐e mamy bardzo niewielk▒ userlistΩ, albo super szybkie po│▒czenie miΩdzy botami :-)
Je┐eli chcemy aby boty wymienia│y siΩ ca│▒ userlist▒ tj. wszystkimi kana│ami zamiast flag |+s #channelX mo┐na u┐yµ globalnej flagi +g czyli w≤wczas w bot1 wpisujemy:
.botattr nick_bot2 +ghp
natomiast w bot2 wpisujemy:
.botattr nick_bot1 +gs
Komendy do rΩcznego linkowania bot≤w to .link bot lub .unlink bot. Ich u┐ycie nie jest potrzebne je┐eli boty maj▒ odpowiednio ustawione botflagi +h (same siΩ │▒cz▒). Inne komendy zwi▒zane z sieci▒ bot≤w tylko dla os≤b maj▒cych flage +t to:
.bots - podaje liste bot≤w po│▒czonych w sieci.
.trace botnick - wy╢wietla listΩ bot≤w po drodze do botnick.
.bottree - pokazuje drzewo po│▒cze± bot≤w.
.boot nick - Wyrzuca osobΩ o nicku nick z party line.
.botinfo - Podaje informacje o wszystkich botach w sieci.
Je┐eli │▒czymy nasze boty z jak▒╢ inn▒ sieci▒ bot≤w radzΩ r≤wnie┐ przestawiµ zmienn▒ remote-boots w pliku konfiguracyjnym bota na:
set remote-boots 1 - co oznacza, ┐e user≤w z naszego bota mog▒ tylko wyrzucaµ masterzy +t bot≤w wsp≤│u┐ytkuj▒cych nasz▒ userlistΩ, a nie ze wszystkich bot≤w, jak jest to domy╢lnie ustawione.
Skrypty TCL
Nie ma co tu siΩ du┐o rozpisywaµ. Skrypty tcl w eggdropie s▒ jego wielk▒ zalet▒. Jak dot▒d powsta│y ich setki i wci▒┐ powstaj▒ nowe. To w│a╢nie dziΩki nimi bot potrafi broniµ kana│u przed takeoverami, zmasowanymi floodami wszelkiego rodzaju, prowadziµ statystyki kana│owe wraz z tworzeniem stron www, odpowiadaµ na zapytania seen - czyli kiedy ostatnio bot widzia│ dan▒ osobΩ (co potrafi r≤wnie┐ modu│ seen, ale gorzej), zmieniaµ co jaki╢ czas topic, czy po prostu zabawiaµ ludzi znajduj▒cych siΩ na kanale... naprawdΩ w najr≤┐niejsze sposoby :-)

Sk▒d wzi▒µ skrypty tcl ?

Wejd╝ na stronΩ http://www.xcalibre.com/tcl.htm Skrypty s▒ tam pogrupowane wed│ug wersji eggdropa, z kt≤r▒ dzia│aj▒. Gdy ju┐ upatrzysz sobie jaki╢ skrypt skopiuj go na konto, mo┐esz siΩ pos│u┐yµ lynxem z wy┐ej wymienionej strony lub ftpem z wielu mirror≤w np:
ftp://ftp.mud.org.pl/mirrors/ftp.sodre.net/pub/eggdrop/
ftp://ftp.irc.pl/pub/irc/bots/eggdrop2  
NastΩpnie je┐eli jest spakowany rozpakuj go komend▒ tar -zxf plik_skryptu.tar.gz. Przegl▒dnij i poczytaj dokumentacje, a nastΩpnie przegraj do podkatalogu scripts gdzie znajduje siΩ eggdrop i zmodyfikuj plik konfiguracyjny. Na samym ko±cu w pliku konfiguracyjnym dodaj linijkΩ:
source scripts/plik_skryptu.tcl
Teraz w bocie wydaj komendΩ do ponownego przeczytania pliku konfiguracyjnego komend▒ .rehash i je┐eli bot nie zako±czy│ swojego dzia│ania znaczy, ┐e uruchomienie skryptu powiod│o siΩ.
Czasami podczas u┐ywania starych skrypt≤w lub wymianie wersji eggdropa na nowsz▒ bez wymiany wersji wszystkich skrypt≤w mog▒ co jaki╢ czas pojawiaµ siΩ w logach bota komunikaty typu:
[22:10] TCL error [jaka╢_procedura]: jaki╢ komunikat
W takim wypadku je┐eli siΩ nie znasz na TCLu powiniene╢ ╢ci▒gn▒µ nowsz▒ wersjΩ skryptu lub w og≤le z niego zrezygnowaµ.

Kt≤re skrypty s▒ warte uwagi ?

StatWWW - jest to skrypt do prowadzenia statystyk na kanale. Program zlicza ka┐dej osobie na kanale wszystkie wypowiedziane s│owa, wykonane kopniaki, zmiany topica itd. a nastΩpnie sortuje osoby wzglΩdem wypowiedzianych s│≤w. Najlepsza 10 - najwiΩkszych gadu│ :-) , dostΩpna jest na kanale za pomoc▒ komendy !topten, aktualna pozycja osoby na li╢cie za pomoc▒ !place. Skrypt tworzy r≤wnie┐ stronΩ WWW uaktualnian▒ co 10 min z pierwsz▒ 50. WiΩcej informacji o tym skrypcie, najnowsza wersja, pluginy dostΩpne s▒ na stronie WWW autora: http://www.goblet.net/scripts . [Download] ver 3.22
Sentinel - Zapewnia pe│n▒ ochronΩ przeciw floodom. Ten skrypt jest do│▒czony standardowo do eggdropa. Zatem na pewno go ju┐ posiadasz - wystarczy go tylko za│adowaµ w bocie.
Bseen - Skrypt do informowania ludzi na kanale gdzie i kiedy oraz jak d│ugo kto╢ by│ w przesz│o╢ci widziany przez bota. To on odpowiada na pytanie !seen nick. Jego wielk▒ zalet▒ jest to, ┐e tworzy w│asn▒ bazΩ danych o spotkanych ludziach na kanale, nie tylko tych, kt≤rzy s▒ wpisani w bocie. Skrypt ten uruchomiony na wielu botach po│▒czonych ze sob▒ umo┐liwia przesy│anie informacji o widzianych osobach. Najnowsza wersja dostΩpna jest pod adresem: http://bseen.tclslave.net . [Download] ver 1.4.2
Repeat - Skrypt powoduje wykopywanie os≤b, kt≤re powtarzaj▒ siΩ. [Download] ver 4.1
Limit - Ustawia +l na kanale w zale┐no╢ci ile jest os≤b na kanale. [Download]
Antybluzg - Wysy│a ostrze┐enia do os≤b przeklinaj▒cych na kanale. [Download]
Cleanup - Czy╢ci okresowo userliste kasuj▒c osoby kt≤re dawno nie pokaza│y siΩ na kanale. [Download]
mk_fun - wykopuje osoby ┐ebraj▒ce o opa i zapraszaj▒ce na inne kana│y. [Download]
nettools - Skrypt za│adowany w kilku botach jednocze╢nie umo┐liwia zarz▒dzanie nimi. Na przyk│ad komenda .netjoin #channel wysy│a wszystkie po│▒czone boty z za│adowanym skryptem na kana│ #channel. Mo┐na r≤wnie┐ zmieniµ ustawienie dotycz▒ce kana│u we wszystkich botach za pomoc▒ komendy: .netset #channel +dynamicbans wydanej z jednego bota... itd.. [Download ver. 3.4.1]
AntiOnJoinSend - Powoduje, ┐e bot co jaki╢ czas wychodz▒c i po chwili wchodz▒c na kana│ wykrywa osoby wysy│aj▒ce wirusy poprzez DCC. [Download]
CloneDetect - Skrypt do wykrywania klon≤w na kanale. [Download ver. 3B]
counter - Zlicza wej╢cia i kopniΩcia na kanale. [Download ver. 2.1]
superbitch - Skrypt rozszerza ustawienie kana│owe bitch. Dodatkowo jest deopowana osoba opuj▒ca. [Download ver. 2.0]
quitban - Banuje osoby wychodz▒ce z kana│u z okre╢lonym tekstem. [Download ver. 1.1]
botnick - Prosta zmiana nicku bota komend▒ dostΩpna dla owner≤w. [Download ver. 1.0]
partmsg - Wysy│anie tekst≤w do ludzi opuszczaj▒cych dany kana│. [Download ver. 1.0]
bitchxpack - Bot udaje, ┐e jest sesj▒ BitchX. [Download ver. 1.50]
autolog - Automatyczne tworzenie nowych plik≤w z logami kana│u. Bardzo przydatne gdy dodajemy kana│y dynamicznie. [Download ver. 1.0]
cronchk - Skrypt sprawdza, czy uruchomienie bota jest wpisane w crontab i je┐eli nie wysy│a ostrze┐enie ownerowi. [Download ver. 1.0]
antimschat - Automatyczne banowanie ludzi u┐ywj▒cych Microsoft Chat. [Download ver. 1.01]
publicnote - Umo┐liwia zostawianie wiadomo╢ci przez ludzi nie wpisanych w bocie. [Download]
slap - Wykopuje ludzi za slaps na kanale. [Download]
smiling - Bot odpowiada losowo wybranym u╢miechem na :) i :-). [Download]
botnetstats - Tworzy stronΩ WWW ze statystyk▒ botnetu. [Download ver. 1.1]
topiclogger - Tworzy stronΩ WWW z histori▒ topic≤w na kanale. [Download ver. 1.0]
topiclock - Umo┐liwia blokowanie topic≤w na kanale. Najnowsza wersja oraz kilka innych skrypt≤w dostΩpna na stronie www autora http://www.iki.fi/temex/eggdrop . [Download ver. 2.03]
urlcatcher - Tworzy stronΩ WWW z list▒ wszystki adres≤w przechwyconych na kanale. [Download ver. 1.2]
getops - Bezpieczniejszy autoop dla innych bot≤w. Boty wysy│aj▒ prosbe o opa poprzez botnet. [Download ver. 2.3]

Celowo nie umie╢ci│em tu skrypt≤w s│u┐▒cych do floodowania os≤b, przejmowania kana│≤w, itp... Boty nie s│u┐▒ do robienia obory na ircu tylko do pilnowania kana│≤w, zabawiania ircuj▒cych ludzi i nie powinny wyrz▒dzaµ nikomu ┐adnej krzywdy.

Jak samemu pisaµ w│asne skrypty ?

JΩzyk Tcl/Tk nie jest takim strasznie trudnym jΩzykiem i mo┐na siΩ go trochΩ nauczyµ. Przynajmniej na tyle aby m≤c samemu dokonywaµ poprawek w ju┐ istniej▒cych skryptach lub pisaµ w│asne nowe :-) Co jest potrzebne aby zacz▒µ poznawaµ tajniki tego jΩzyka? Oczywi╢cie jaki╢ manual i najlepiej za friko w wersji elektronicznej :-) Lokalna kopia anglojΩzycznego manuala do wersji Tcl8.0/Tk8.0 znajduje siΩ tutaj. DziΩki niej mo┐na poznaµ podstawowe instrukcje jΩzyka Tcl/Tk. Oczywi╢cie w czystym Tcl nie napiszemy ┐adnego skryptu. Potrzebne s▒ specjalne instrukcje, dziΩki kt≤rym skrypt mo┐e kontrolowaµ dzia│anie bota, posiadaµ dostΩp do userlisty, czy w ko±cu podk│adaµ odpowiednie procedury do zdarze± maj▒cych miejsce na kanale czy w bocie podczas jego dzia│ania. Wszystkie te rozszerzenia opisane s▒ w standardowej dokumentacji eggdropa w pliku doc/tcl-commands.doc

Przewodnik po TCLu w skryptach eggdropa dla pocz▒tkuj▒cych

Tcl/Tk 8.0 Manual
Jak broniµ siΩ przed takeoverami?
Dotyczy to raczej tylko i wy│▒cznie sieci IRCnet - najpopularniejszej sieci ircowej w Polsce. Niestety sprawa nie wygl▒da najlepiej. Przed takeoverem nigdy nie mo┐na zabezpieczyµ sie w 100%. Owszem, ka┐dy kolejny bot postawiony na kanale minimalizuje to ryzyko. Jednak┐e dziΩki splitom serwer≤w zawsze istnieje gro╝ba, ┐e po ponownym po│▒czeniu serwer≤w z drugiej strony wejdzie 100 bot≤w z opami i w mig rozniesie nasze boty. Dowodem tego s▒ chocia┐by czΩste takeovery takich kana│ow jak np. #polska i inne wiΩksze. Co wiΩc robiµ aby to ryzyko minimalizowµ?
a) boty stawiaj na r≤┐nych ircserwerach i najlepiej r≤┐nych kraj≤w. Niestety ircserwery poza 4 polskimi i 2 zachodnimi (chyba... jak siΩ mylΩ nich mnie kto╢ poprawi) nie wpuszczaj▒ na irca (bez +r) z kont shelowych w domenie *.pl Rozwi▒zaniem tego problemu jest posiadanie kont shelowych w innych krajach ni┐ polska lub te┐ takich kont w Polsce, kt≤re maj▒ wirtualne domeny innych kraj≤w. Innym rozwi▒zaniem problemu jest posiadanie kont shelowych na serwerach, kt≤re do╢wiadczalnie s▒ przy│▒czone tunelami do sieci ipv6. DziΩki temu mo┐na liste ircserwer≤w poszerzyµ o kilka nowych. Aktualnie znane mi serwery ipv6 wpuszcaj▒ce bez +r to it.irc6.net (W│ochy), de.irc6.net (Niemcy), irc.MissingU.com (USA) oraz irc.wanadoo.be (Belgia) . Niestety zwyk│y eggdrop nie potrafi po│▒czyµ siΩ z ircserwerami ipv6. Patch na eggdropa do │▒czenia sie z ipv6 mojego autorstwa mogΩ udostΩpnic emailem.
b) ograniczaj liczbΩ autoop≤w. To chyba wiadome - ┐adnych autoop≤w na dialupy, nie zaufane hosty lub te┐ dziurawe serwery ;-). Najlepiej to w og≤le zrezygnowaµ z autoop≤w :-). W przypadku w│amu na serwer lub zdobycia has│a na konto, na kt≤rym stoi eggdrop, osoba w│amuj▒ca mo┐e bez problemu przej▒c nasz kana│.
c) u┐ywaj skrypty TCL s│u┐▒cych do ochrony kana│u. Takie tclki jak superbitch i inne. Proponuje wej╢µ na http://www.xcalibre.com/tcl.htm i zaznaczyµ typ protection szukaj▒µ tclek. Skryty te maj▒ swoje minusy i plusy. Zazwyczaj plusy to zmniejszenie ryzyka takeoveru, a minusy to zamieszanie na kanale, nie wygoda ircownik≤w i w rezultacie kana│ mo┐e na tym straciµ.
d) i wiele innych rzeczy, kt≤rych ze wzglΩdu na sw▒ ma│ostkowo╢µ nie chcia│o mi siΩ tu opisaµ.

Dostarczy│: ReV
(moj qmpel wyszpera│ to w sieci, nawet nie wiem sk▒d :-/ )

 

__________________ REKLAMA __________________

System wymiany baner≤w NetBAN


Poprzednia strona   | 46 |  NastΩpna strona
Spis Tre╢ci


Copyright (C) 2001 by Ready. Wszelkie prawa zastrze┐one.