Установка и настройка Eggdrop на IRC

Среда, 23 Май 2007

После предыдущих статей про IRC обрушился просто лавинный поток писем, львиная часть которых была с просьбами описать в следующих частях про ботов, чем их мазать и каким местом есть. Итак, многие знают, что такое боты, но не знают откуда они берутся, как их настраивать и как запускать. Пришлось мне прикинуться ботом, выложиться на сайт и подождать, пока меня скачают и что-нибудь сотворят. Таким образом,я в шкуре бота узнал все тонкости и полезности. И на примере изложу подробно, какой бот взять, где и куда потом сувать.

Скачай

Первое, что ты должен знать, это какие разновидности ботов бывают. Существуют всего две часто используемые разновидности: боты на основе mIRC-клиентов и Eggdrop. Боты на основе mIRC-клиентов - это обычный mIRC, обвешанный скриптами, обычно ставится на NT сервера (если есть права) или же на компьютер пользователя, который находится круглосуточно в интернете. Но эти боты достаточно неустойчивы в работе, а так же есть возможность "копаться" в самом боте. Проще говоря, слабо защищенная программа. Мы на ней останавливаться не будем, оставим это занятия ламерюгам :). А вот на Eggdrop как раз подробно остановлюсь. Для того, чтобы установить этого бота, тебе нужен только Unix Shell Account. Ну с этим, я думаю, у тебя проблем не будет как у кулхацкера, так как уже много писалось в предыдущих номерах о том, как его можно раздобыть. Лучше всего, конечно, попросить Shell у доброго знакомого дядьки админа и угостить его пивом :). Допустим, Shell ты раздобыл. Теперь надо этого самого бота скачать. Ползи смело на любой сайт в инете: среди российских источников рекомендую http://www.irc.ru, а среди забугровых - ftp://ftp.eggheads.org. И скачивай любого тебе понравившегося бота, архив любого Eggdrop будет называться навроде eggdrop1.4.3.tar.gz (название зависит от версии). После этого заливай бота на твой Shell. Тебе уже не терпится запустить бота? Спешка нужна только при ловле блох :), тут ни к чему, ты же знаешь, так что не суетись и разархивируй его (лучше всего в Shell набрать команду mc, зайти в архив, а уж потом из архива скопировать бота куда тебе нужно). Пример установки я тебе покажу на примере бота eggdrop1.4.3, но на предыдущих, как и на последующих версиях, установка бота примерно одинаковая.

Установи.

Заходи в каталог eggdrop1.4.3 и смело набирай ./configure. После написания этой команды ты увидишь примерно следующее (смотри тут). Когда закончится выполнение этой команды, ты увидишь вот это.
Дальше, что тебе потребуется, так это настроить конфигурационный файл и смело его запускать. Прежде всего скопируй файл eggdrop.conf.dist в эту же директорию, но под другим именем, назвать можешь просто xaker :). После этого в режиме редактирования тебе нужно его настроить под себя. Для тех, кому лень читать хелпы, я приведу пример конфига, но для более индивидуальной настройки бота придется конечно же полазить по хелпам. Итак, пример конфига. Все, что стоит после # - это комментарии, но самая верхняя строка указывает путь для бота, который ты должен точно указать (пример для пользователя xaker).
{geshibot lang="tcl" head="Файл конфигурации Windrop"}#! /home/xaker/eggdrop1.4.3 ##### GENERAL STUFF ##### set username "xaker" - задает имя set admin "xaker " - установка админа и его мыло set network "xaker.net" - установка название сети для соединения ботов set timezone "EST" - установка Центрального Европейского времени set offset "5" - установка шага изменения времени set my-ip "IP сервера" - установка IP-адрес сервера ##### LOG FILES ##### set max-logs 5 - максимальное количество логов set max-logsize 0 - максимальный размер логов, если стоит 0 - нет ограничения set quick-logs 0 - запись логов и проверка их каждую минуту, 0 - не проверяет logfile mco * "eggdrop.log" - основной лог Eggdrop, туда пишутся команды пользователей и другая информация logfile jk #xaker "xaker.log" - запись лога канала set log-time 1 - вставляет время в лог set keep-all-logs 0 - держит отдельные логи по 48 часов set switch-logfiles-at 300 - каждый день пишется новый лог set quiet-save 0 - включает сообщения типа "Writing user file..." и "Writing channel file..." set console "mkcobxs" - установки консоли по умолчанию ##### FILES AND DIRECTORIES ##### set userfile "xaker.user" - название файла, в котором будут записаны все юзеры set sort-users 0 - включение или выключение сортировки юзеров set help-path "help/" - путь к файлам помощи set temp-path "/tmp" - путь к каталогу tmp set motd "motd" - установка сообщение дня set telnet-banner "telnet-banner" - показывает специальный флаг для telnet соединений ##### BOTNET ##### set botnet-nick "xaker" - название бота в сети ботов listen 3333 all - установка порта для соединения, как для ботов, так и для пользователей set protect-telnet 0 - включает защиту телнета set dcc-sanitycheck 0 - включает игнорирование telnet соединения при определенных ошибках set ident-timeout 5 - установка таймаута в секундах set require-p 0 - рекомендуется флаг +р для глобальных операторов или операторов канала set open-telnets 0 - открывает доступ по telnet set stealth-telnets 0 - запрашивает nickname при попытках соединиться по telnet set use-telnet-banner 0 - поуказывает флаг, если человек зашел через telnet set connect-timeout 15 - насколько долго ожидать ответа по telnet, DCC set dcc-flood-thr 3 - количество строк, при которых происходит игнор в partyline set telnet-flood 5:60 - количество соединений и время для telnet соединений set paranoid-telnet-flood 1 - защита от telnet флуда set resolve-timeout 15 - время ожидания ответа на hostname/address запроса Продолжить чтение... 1> 2 3> 4> ##### MORE ADVANCED STUFF ##### set ignore-time 15 - установка времени игнора set hourly-updates 00 - ежечасное обновление базы set owner "PUPKIN" - установка ника владельца бота set notify-newusers "$owner" - уведомление владельца при добалении новых пользователей set default-flags "hp" - флаги по умолчанию для нового пользователя (если ты добавил пользователя, но не дал ему флаги) set whois-fields "http://www.xaker.ru" - ответ на /whois запрос set remote-boots 2 - включение разговоров с людьми с других ботов в вашей сети ботов set share-unlinks 1 - если не хочешь разъединять бота через других командой set die-on-sighup 0 - включение die или sighup set die-on-sigterm 0 - включение die или sigterm unbind DCC n TCL *dcc:tcl - включает 'tcl' команды для владельца unbind DCC n set *dcc:set - включает 'set' команды для владельца set must-be-owner 0 - только владелец может использовать 'tcl' и 'set' unbind DCC n simul *dcc:simul - владелец может управлять пользователями в partyline set max-dcc 50 - максимальное количество DCC соединений set dcc-portrange 1024:65535 - диапазон портов, от 1024 до 65535 set enable-simul 1 - добавляет 'dccsimul' TCL команд (нужен скрипт, рекомендуется action.fix.tcl) set allow-dk-cmds 1 - допускает +d и +k флаги исполтьзовать пользователям ########## MODULES ########## set mod-path "modules/" - путь к модулям ##### CHANNELS MODULE ##### loadmodule channels - загрузить модуль каналов set chanfile "xaker.chan" - установка файла канала set ban-time 120 - временные баны, в минутах set exempt-time 60 - включение +e моды, в минутах set invite-time 60 - временные приглашения, в минутах set share-greet 0 - разделение приветствий пользователя set use-info 1 - пользователи могут добавлять информацию о себе set global-flood-chan 10:60 - установка глобального флуда канала set global-flood-deop 3:10 - установка глобального флуда деопа set global-flood-kick 3:10 - установка глобального флуда кика set global-flood-join 5:60 - установка глобального флуда входа set global-flood-ctcp 3:60 - установка глобального флуда ctcp #специальные установки для каналов по умолч анию 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" - установки флагов на канал по умолчанию #специальные установки на специальный канал (канал этот командой не может быть удален) channel add #xaker { chanmode "+nt-likm" idle-kick 0 need-op { putserv "PRIVMSG #xaker :op me cos i'm lame!" } need-invite { putserv "PRIVMSG #xaker :let me in!" } need-key { putserv "PRIVMSG #xaker :let me in!" } need-unban { putserv "PRIVMSG #xaker :let me in!" } need-limit { putserv "PRIVMSG #xaker :let me in!" } flood-chan 10:60 flood-deop 3:10 flood-kick 3:10 flood-join 5:60 flood-ctcp 3:60 } ##### SERVER MODULE ##### loadmodule server - загрузка модуля сервера set net-type 0 - тип сети: 0 = Efnet (не +e/+I hybrid), 1 = IRCnet, 2 = Undernet, 3 = Dalnet, 4 = Efnet +e/+I hybrid, 5 = Другие сети set nick "XAKEP" - установка ника бота set altnick "_XAKEP_" - установка альтернативного ника бота set realname "/msg XAKEP hello" - установка реального имени set init-server { putserv "MODE $botnick +i-ws" } - запуск скрипта при первом соединении с сервером set servers { irc.dal.net.ru:6666 koptevo.dal.net.ru:6667 forest.dal.net.ru:6667 } - открывает список серверов, куда будет соединяться бот set keep-nick 1 - если был сменен ник бота, он пытается вернуть свой ник назад set use-ison 1 - использование команд /ison и /trace set strict-host 0 - специфическая установка hostname для пользователей set quiet-reject 1 - отказ в соединении при определенных обстоятельствах set lowercase-ctcp 0 - запрос низкого формата ctcp set answer-ctcp 3 - количество запросов для ctcp set flood-msg 5:60 - сколько строк и за какое время будет считаться флудом для partyline set flood-ctcp 3:60 - сколько строк и за какое время будет считаться флудом для ctcp set never-give-up 1 - если не было соединений по всем серверам, то повторять заново set strict-servernames 0 - если стоит 0 - eggdrop держит разделенный список имен IRC серверов set default-port 6667 - порт по умолчанию для соединения с IRC сервером set server-cycle-wait 60 - время ожидания повтора set server-timeout 15 - время таймаута set servlimit 0 - если номер серверов в сети меньше этого номера, то будет попытка соединения с другим сервером set check-stoned 1 - проверять "плохие" сервера? set use-console-r 0 - включение +r для консоли set debug-output 0 - это большая дыра безопасности :) set serverror-quit 1 - выход с сервера, если он посылает ERROR сообщения set max-queue-msg 300 - максимальное количество строк для очереди сервера set trigger-on-ignore 0 - запуск связей для игнора пользователей #допуск msg быть дважды в очереди set double-mode 0 set double-server 0 set double-help 0 ##### CTCP MODULE ##### loadmodule ctcp - загрузка модуля ctcp set ctcp-mode 0 - нормальные установки для ctcp ##### IRC MODULE ##### loadmodule IRC - загрузка модуля IRC set bounce-bans 1 - установка снятия банов сервером set bounce-modes 0 - установка снятия модов сервером set kick-bogus-bans 1 - установка снятия киков сервером set bounce-bogus-bans 1 - установка снятия богус банов сервером set max-bans 20 - установка максимального количества банов для канала set max-modes 30 - установка максимального количества модов для канала set allow-desync 0 - включение работы с IRC сервисами set kick-bogus 0 - кик юзеров с богус модом set ban-bogus 0 - бан юзеров с богус модом set kick-fun 0 - включение аваланш киков set ban-fun 0 - включение аваланш банов set learn-users 0 - показывать пользователям вступление на команду "hello" set wait-split 600 - время в секундах ожидания возвращения из сплита set wait-info 180 - время в секундах для показа инфо в канале после перезахода пользователя set mode-buf-length 200 - максимум байт для отправки аргументов #включение команд /msg ident и /msg addhost unbind msg - ident *msg:ident unbind msg - addhost *msg:addhost set no-chanrec-info 0 - автопоказ инфы о пользователях в partyline set revenge-mode 1 - определение наказывания "плохих" пользователей ##### IRC MODULE - net-type 1 specific features (IRCnet) ##### set bounce-exempts 0 - показывает все +e моды сервера set bounce-invites 0 - показывает все +I моды сервера set max-exempts 20 - показывает максимум +е set max-invites 20 - показывает максимум +I set bounce-bogus-exempts 0 - удаляет богус исключения set kick-bogus-exempts 0 - кикает пользователя, поставившего богус исключение set bounce-bogus-invites 0 - удаляет богус приглашения set kick-bogus-invites 0 - кикает пользователя, поставившего богус приглашение set prevent-mixing 1 - предотвращает смешивание нормальных способов +I/+e ##### TRANSFER MODULE ##### set max-dloads 3 - максимальное число скачиваний set dcc-block 1024 - блокирование пакетов длиной 1024 байт set copy-to-tmp 1 - копирует файлы в tmp директорию set xfer-timeout 30 - время таймаута DCC пересылки файла ##### FILESYSTEM MODULE ##### set files-path "/home/xaker/eggdrop1.4.3" - путь к файлам set incoming-path "/home/xaker/eggdrop1.4.3/incoming" - путь к директории для входящих файлов set upload-to-pwd 0 - заменить или нет существующий файл set filedb-path "/home/xaker/eggdrop1.4.3" - путь к базе данных set max-file-users 20 - максимальное кол-во пользователей, которые могут пользоваться файлами через бота set max-filesize 1024 - максимальный размер файлов ##### NOTES MODULE ##### loadmodule notes - загрузить модуль сообщений set notefile "xaker.notes" - название файла сообщений set max-notes 50 - максимальное количество сообщений set note-life 60 - время в днях до истечения set allow-fwd 0 - разрешает пользователям пересылать сообщения на других ботов или специфический адрес set notify-users 1 - показывает пользователям кто им оставил сообщение set notify-onjoin 1 - уведомление о сообщении при входе ##### CONSOLE MODULE ##### loadmodule console - загрузка модуля консоли ##### variables: set console-autosave 1 - включить автосохранение консоли set force-channel 0 - установка автоматического наложения способов приглашения set info-party 0 - показывает глобальную информацию пользователя ##### SEEN MODULE ##### loadmodule seen - загрузка модуля seen ##### SCRIPTS ##### #пути к подключаемым скриптам и файлам помощи source scripts/alltools.tcl source scripts/action.fix.tcl source scripts/userinfo1.0.tcl loadhelp userinfo.help{/geshibot}
Последнее обновление ( Пятница, 14 Сентябрь 2007 )
< Пред.   След. >