C:192.168.0.1:services:services.local.net::50
N:192.168.0.1:services:services.local.net::50
Учитывая, что твоя сетка имеет название local.net, а сервисы стартуются с хоста 192.168.0.1 (возможно оттуда же стартуется и IRCD). Пароль на сервисы сделаем "services" (рекомендую его переделать, чтобы какой-нибудь упырь не подконнектился на IRCD под сервисами =)), класс коннекта 50, порт не указывается.
Ты не задумывался, почему сервисам разрешено все (раздавать опов направо и налево, килять пользователей и даже менять их ники)? За это отвечает U-line в ircd.conf. Маска подпадающая под этот лайн может делать все на данном сервере, поэтому прописываем:
U:services.local.net:*:*
На этом настройка ircd.conf завершена. Пошли серверу SIGINT-сигнал (не путать с SIGKILL =)) командой killall -1 ircd, или набери
/rehash
в ирке на своем сервере (но для этого ты должен быть как минимум админом сервера).Теперь займемся самими сервисами. Законфигурим их, прописывая директорию для бинарников и вторую, для библиотек (в том числе и services.conf). Затем по порядку make, make install. Вроде все =).
Перейдем к настройке конфа. Файл должен называться serivces.conf и лежать в директории, которую ты указал в configure для библиотек. Коротко об его настройке (пишу, чтоб все корректно запустилось и немного о важных переменных):
RemoteServer - аналог C/N лайнов в ircd.conf. Формат: сервер порт "пароль", смело заполняем своими данными:
RemoteServer 192.168.0.1 6667 "services"
ServerName - имя сервера, под которым будут линковаться сервисы. Мы его задали, это имя services.local.net:
ServerName "services.local.net"
ServerDesc - Description для сервера, придумываем свой =)
ServerDesc "Services for Local IRC Daemon"
ServiceUser - маска, под которой будут выступать все сервисы данной сети. Сделаем [email protected] для наглядности:
ServiceUser "[email protected]"
Далее идет перечисление ников сервисов, их менять не советую, так как это стандарт, пусть он и останется стандартом =). Об этих никах и какую функцию они выполняют поговорим чуть позже.
Далее идут специфические настройки для каждого сервиса (например, когда дропать ник по таймауту, или сколько клонов допускать для коннекта на сервер). С этими тонкостями, я надеюсь, ты разберешься сам. Стоит вписать лишь свой ник в часть ServicesRoot, чтобы быть администратором сервисов.
После настройки, пробуем запустить сервисы. Заходим в директорию с бинарниками и стартуем их - "./services". Если все ок, сервер сообщит тебе о новом линке, а NickServ попросит зарегистрировать ник =). В противном случае смотри конфы (на 99% в них что-нибудь не так), либо логи сервисов (по умолчанию services.log в директории с библиотеками и конфами).
Теперь собственно об управлении =). После того, как ты зарегистрил свой ник, который совпадает с ником в переменной ServicesRoot (если ты не знал, чтобы зарегить ник нужно набрать
/ns register пароль_на_ник e@mail
), а затем стал опером на IRCD, тебе автоматически присвоится звание Services Administrator. После этого командуй: /os
set supass пароль
, чтобы установить пароль на Super-user Operators =), которые могут выполнять все операции над сервисами. Для этого статуса впоследствие нужно набирать: /os su пароль
. Чтобы добавить в сервис-админы кого-либо еще, набери /os oper add nick
, где nick - человек, которого добавляешь =). После всего вышеописанного, сделай /os update
, чтобы сохранить базы.А теперь о возможностях =). Дело в том, что через оперсерва возможно слать Raw-сообщения всем сервисам, например, чтобы поменять ник у кого-нибудь, достаточно набрать:
/os raw :NickServ svsnick Nick Nick2 1
, где Nick - текущий ник, Nick2 - ник, на который хочешь поменять текущий =). Также, через эти же Raw можно джойнить на канал сервисы, подобным путем (ограничений нет), но не злоупотребляй: если какой-нибудь сервис глюканет, то упадут все сервисы =). Я не говорю о таких банальных возможностях, как /os akill
или /os mode
, о них я думаю ты все знаешь, иначе - /os help
/os jupe server.name
зажупит =) сервер в твоей сети (такое бывает необходимо если с сервисом не все в порядке, сервисы как бы эмулируют коннект, но на самом деле сервер-жертва будет находиться не в сети). Для отмены JUPE, сделай сервису SQUIT, командой /squit server.name
Итак, сервисы состоят из:
- NickServ - заведует базой ников
- ChanServ - заведует базой каналов
- MemoServ - сервер сообщений
- OperServ - заведует сервисами =)
- Global - выводит глобальные сообщения
- DevNull - мусорка ;) Посредством нее сервисы общаются между собой.
- HelpServ - Хелп по всем сервисам.
Да, я еще не сказал, что админ может без проблем узнать пароль юзера на ник или канал, либо дропнуть что-нибудь без каких-либо на то ограничений. Но, не злоупотребляй этим, иначе ты не понравишься юзерам, и о тебе будет дурное мнение.
Как ты наверное понял, с сервисами в сети гораздо веселее, чем без них. Да и все высокоорганизованные сетки имеют свои сервисы, это уже стало стандартом IRC-сети =)