Об IRC. Доступно и со вкусом.

Установка и настройка сервера UltimateIRCd

В данной статье речь пойдёт о процессе установки и конфигурировании сервера UltimateIRCd версии 3.0.1. В статье используются файлы из комплектации сервера от BestIRC.
UltimateIRCd - это IRC сервер, основанный на Bahamut IRCd и Hybrid IRCd, включающий в себя основные возможности этих серверов. Несмотря на небольшой размер, обладает весьма широким набором опций, поддерживает IPv6, SSL, и многое другое.

В статье описывается конфигурирование сервера на базе UltimateIRCd 3.0.1, взять его можно здесь.

Скачанный архив распаковываем в любую папку, по Вашему усмотрению. На этом установка завершена; запускать сервер еще рано - сначала надо его сконфигурировать.

Прежде всего, серверу нужен конфигурационный файл, именуемый ircd.conf, который должен храниться в папке etc\. Для его создания открываем example.ru.conf, который находится в папке doc\ и сохраняем его как ircd.conf (в папке etc\ соответственно).

Файл ircd.conf можно редактировать любым текстовым редактором (я использовал WordPad).

Открыли? Сохранили? Поехали.

-
Доходим до строки, начинающейся с M:
-

Директива M: назначает имя, адрес и описание сервера. В принципе, для базовой настройки сервера указанная строка подходит, поэтому ее можно не менять:

M:server.your.net:*:My IRC Server:7000

Примечание: Вместо My IRC Server можете написать все, что хотите (это описание сервера).

-
Ниже ищем строку, начинающуюся с A: (далее буду просто писать букву)
-

Директива A: содержит информацию, отображаемую по команде /admin. Можно писать здесь что угодно, но рекомендуется как минимум имя администратора сервера и его e-mail. Каждое двоеточие - новая строка. Пример:

A:MyNick:Server Administrator:admin@your.net

Измените MyNick на Ваш ник, admin@your.net - на Ваш e-mail, если нужно.

-
Y:
-

Директивы Y: определяют классы соединений. Эти директивы лучше не трогать, текущие настройки подходят для большинства серверов.

-
I:
-

Директивы I: назначают клиент-авторизацию; без этого параметра никто не сможет подключиться к этому серверу. В конфигурации уже прописана строка:

I:*@*::*@*::1

Она разрешает соединения всем клиентам с любым адресом, не требует пароль, и присваивает класс соединения "1" (клиенты). Лучше ее не менять.

-
O:
-

Директива O: определяет IRC-операторов сервера. Параметр необязательный, но рекомендуемый :) Находим строку:

O:*@127.0.0.1:operpassword:MyNick:ONbckrwl:5

вместо "*@127.0.0.1" - просто "*", чтобы разрешить брать оператора с любого хоста; или оставьте без изменений для доступа только с локального компьютера (здесь и далее - без кавычек!);
вместо "operpassword" - Ваш пароль;
вместо "MyNick" - Ваш ник.

Примечание: "ONbckrwl" - флаги оператора, их можно менять, в соответствии с правами операторов; подробнее в секции "Флаги операторов" файла example.ru.conf. Для начала Вам будет вполне достаточно и этих :)

-
J:
-

Директива J: аналогична O:, но предназначена для удаленных IRC-операторов. Не нужна, оставьте ее без изменений.

-
U:
-

Директива U: определяет серверы, подключающиеся к этому серверу и имеющие максимум привилегий на нем. Поскольку нам этот параметр пока не нужен, можно оставить директиву без изменений.

-
X:
-

В этой директиве прописаны пароли для перезапуска и остановки сервера. Найдите строку

X:diepass:restartpass

и измените: diepass - на пароль остановки сервера, restartpass - на пароль его перезагрузки. В принципе, пароли можно и не менять.

-
C: N:
-

Эти директивы предназначены для линковки других серверов или сервисов; пока они не нужны, и их можно оставить без изменений.

-
K:
-

Директива K: определяет пользователей, которые не могут присоединиться к этому серверу. Поскольку она в данном случае не нужна, оставляем строки K: без изменений.

-
q:
-

Эта директива определяет серверы "в карантине", то есть не имеющие права присоединяться к Вашему серверу. Не нужна, посему оставляем без изменений.

-
Q:
-

Директива Q: определяет запрещенные ники. Как правило, используется для резервирования ников сервисов, когда они не в сети, чтобы предотвратить возможность сбора паролей. Q:строки уже сконфигурированы как надо, посему оставим их без изменений.

-
Z:
-

Директива Z: определяет IP-адреса пользователей, которые не могут присоединиться к этому серверу. Поскольку она в данном случае не нужна, оставляем строки Z: без изменений.

-
L: H:
-

Эти директивы определяют "лист"-серверы (L:) и "хаб"-серверы (H:). Не нужны, потому оставьте L: и H:строки без изменений.

-
P:
-

Директива P: определяет порты, которые будет "слушать" сервер (для соединений). В конфигурации уже прописана строка:

P:*:::6667

Эта строка разрешает подключение всем клиентам на порт 6667. Оставим без изменений: она подходит для большинства сетей.

-
E: F:
-

Директива E: определяет исключения из K:строк; F: - исключения лимитов I: и Y:строк. Не нужны, поэтому игнорируем E: и F:строки.

---


На этом конфигурирование ircd.conf завершено. Сохраняем его, и переходим к следующему файлу: ircd.ru.ini (находится в папке doc\), копируем его в папку etc\ под именем ircd.ini и открываем.

Ищем строку Set geo_location и меняем Somewhere on Earth, in the Solar System на желаемое Вами местоположение сервера.

В строке Set server_kline_address меняем Admin@your.net на Ваше e-mail (если нужно).

Больше в этом файле можно ничего не менять. Сохраняем его (под именем ircd.ini, не забудьте!).

---

Заходим в папку doc\ и открываем файл ru.template.network любым текстовым редактором.

Set ircnetwork - меняем MyIRCnet на короткое имя Вашей сети (не используйте пробелы)

Set ircnetwork_name - меняем My IRC Network на полное название Вашей сети

Set helpchan - канал помощи; впишите вместо #help другой канал, если хотите.


Остальное можно не менять.
Сохраните файл под именем template.network в папке etc\networks\.

---

На этом конфигурирование Вашего IRC-сервера завершено. Запустите UltimateIRCd.exe из папки с сервером... и можете коннектиться (/server localhost:6667)

Автор: SentXS