Скачай.
Первое, что ты должен знать, это какие
разновидности ботов бывают. Существуют всего две часто используемые
разновидности: боты на основе mIRC-клиентов и Eggdrop. Боты на основе
mIRC-клиентов - это обычный mIRC, обвешанный скриптами, обычно ставится на NT
сервера (если есть права) или же на компьютер пользователя, который находится
круглосуточно в интернете. Но эти боты достаточно неустойчивы в работе, а так же
есть возможность "копаться" в самом боте. Проще говоря, слабо защищенная
программа. Мы на ней останавливаться не будем, оставим это занятия ламерюгам :).
А вот на Eggdrop как раз подробно остановлюсь. Для того, чтобы установить этого
бота, тебе нужен только Unix Shell Account. Ну с этим, я думаю, у тебя проблем
не будет как у кулхацкера, так как уже много писалось в предыдущих номерах о
том, как его можно раздобыть. Лучше всего, конечно, попросить Shell у доброго
знакомого дядьки админа и угостить его пивом :). Допустим, Shell ты раздобыл.
Теперь надо этого самого бота скачать. Ползи смело на любой сайт в инете: среди
российских источников рекомендую
Установи.
Заходи в каталог eggdrop1.4.3 и смело набирай ./configure.
Дальше, что тебе потребуется, так это настроить конфигурационный файл и смело его запускать. Прежде всего скопируй файл eggdrop.conf.dist в эту же директорию, но под другим именем, назвать можешь просто xaker :). После этого в режиме редактирования тебе нужно его настроить под себя. Для тех, кому лень читать хелпы, я приведу пример конфига, но для более индивидуальной настройки бота придется конечно же полазить по хелпам. Итак, пример конфига. Все, что стоит после # - это комментарии, но самая верхняя строка указывает путь для бота, который ты должен точно указать (пример для пользователя xaker).
#! /home/xaker/eggdrop1.4.3
##### GENERAL
STUFF #####
set username "xaker" - задает имя
set admin "xaker
<email: xaker@piva.net.ru>" - установка админа и его мыло
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
запроса
##### 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
После того, как ты отредактировал конфиг, тебе необходимо
создать директорию TMP в каталоге eggdrop1.4.3. Теперь тебе нужно всего лишь
запустить бота. Запомни, что первый раз, когда запускаешь Eggdrop, нужно
запускать с флагом -m, а все последующие разы без этого флага. Пример: ./eggdrop
-m xaker (xaker - это скопированный и отредактированный файл eggdrop.conf.dist).
В результате ты должен получить навроде:
[xaker@cpu eggdrop1.4.3]$
./eggdrop -m xaker
[15:24] LANG: 394 messages of 431 lines loaded from
./language/core.english.lang
[15:24] LANG: 394 adds, 0 updates to message
table
Eggdrop v1.4.3 (c)1999 Robey Pointer
[15:24] --- Loading eggdrop
v1.4.3 (Tue Jun 13 2000)
[15:24] Listening at telnet port 3333
(bots)
[15:24] Listening at telnet port 3333 (users)
[15:24] Module
loaded: channels
[15:24] === SERVER SUPPORT LOADED
[15:24] Module loaded:
server
[15:24] Module loaded: ctcp
[15:24] Module loaded: irc
[15:24]
Module loaded: transfer
[15:24] Module loaded: notes
[15:24] Module
loaded: console
[15:24] Module loaded: blowfish
[15:24] Userinfo v1.02 by
ButchBub loaded for: URL BF GF IRL EMAIL DOB.
[15:24] use '.help userinfo'
for comands.
[15:24] bseen1.4.2c: -- Bass's SEEN loaded --
[15:24] Loading
seen database...
[15:24] Done loading 1861 seen records.
[15:24] NickServ
nick Keeper by Bigooo Loaded !
[15:24] Userfile loaded,
unpacking...
[15:24] === XAKEP: 6 channels, 18 users.
Launched into
the background (pid: 28095)
[xaker@cpu eggdrop1.4.3]$
После того,
как ты запустил бота, беги скорее через IRC на сервер и пиши следующее: /msg
xaker hello :). Бот тебе ответит, что ты стал его владельцем и выдаст некоторую
информацию. Тебе останется только ввести для него пароль и потом сделать на него
dcc chat. Все команды в консоли бота пишутся через ".", для того, чтобы
посмотреть более полный список команд, пиши в консоли .help.
Полезные советы:
- используй всегда самую последнюю версию eggdrop,
она обычно включает все навороты предыдущих, плюс свои
- в eggdrop
применяется кодирование паролей, так что просто так пароль узнать нельзя
- в
eggdrop большой выбор подключаемых скриптов, которые давно отлажены и хорошо
работают
- два или несколько ботов можно объединить в одну сеть
- в
зависимости от того, как соединить ботов в сеть, можно сделать одну общая или
несколько разных баз пользователей
- боты изначально не умеют вести
статистику, разговоривать и прочее - для этого требуется навешивать на них
дополнительные скрипты
- самая лучшая статистика посещений лежит на
http://gamma.nic.fi/~mauvinen/mircstats/