Допустим мы установили ircd-hybrid как я описывал в этой статье — Установка IRC сервера — ircd-hybrid
Теперь приступим к настройке.
Отредактируем текст приветственного сообщения:
sudo nano /etc/ircd-hybrid/ircd.motd
Сделаем копию конфигурационного файла на всякий случай:
sudo cp /etc/ircd-hybrid/ircd.conf /etc/ircd-hybrid/ircd_original.conf
Откроем в текстовом редакторе основной файл конфигурации, настроим параметры и закомментируем ненужные:
sudo nano /etc/ircd-hybrid/ircd.conf
В конфигурационном файле сначала идут стандартные параметры serverinfo, по желанию изменим их:
serverinfo {
name = "hybrid8.debian.local";
description = "test";
network_name = "debian";
network_desc = "This is My Network";
hub = no;
default_max_clients = 512;
max_nick_length = 15;
max_topic_length = 300;
};
Далее контакты администратора сервера, по желанию изменим их:
admin {
name = "SYSADMIN";
description = "Main Server Administrator";
email = "<admin@example.com>";
};
Сетевые параметры (на каких портах будет работать ircd-hybrid, например можно изменить на один 6667):
listen {
port = 6665 .. 6669;
};
Первый блок auth который разрешает подключаться всем с локального адреса 127.0.0.1:
auth {
user = "*@127.0.0.1";
spoof = "i.love.debian.org";
class = "opers";
flags = need_password, spoof_notice, exceed_limit, kline_exempt,
xline_exempt, resv_exempt, no_tilde, can_flood;
};
Еще один блок auth разрешающий подключаться всем (его закомментируем или изменим под свои нужды):
auth {
user = "*@*";
class = "users";
flags = need_ident;
};
Например, создадим пароль пользователю, скопируем результат команды в зашифрованном виде:
mkpasswd PASSWORD
Добавим возможность авторизации любым пользователям только с паролем и с указанной сети:
auth {
user = "*@192.168.3.0/24";
class = "users";
flags = need_password;
encrypted = yes;
password = "PASSWORD_FROM_mkpasswd";
};
В блоке auth пароль будет хранится в шифрованном виде, в IRC клиенте указывается как есть.
Чтобы указать в блоке auth пароль в нешифрованном виде, нужно убрать encrypted.
В секции general отключим need_ident:
general {
...
disable_auth = yes;
...
};
Перезапустим ircd-hybrid чтобы применить изменения:
sudo /etc/init.d/ircd-hybrid restart
sudo service ircd-hybrid restart
Также можем добавить оператора:
auth {
name = "admin";
user = "admin@192.168.3.254/32";
class = "opers";
flags = need_password, spoof_notice, exceed_limit, kline_exempt;
encrypted = yes;
password = "PASSWORD_FROM_mkpasswd";
};
Блокировать IP адреса в случае необходимости можно следующим образом:
deny {
ip = "192.168.4.4/32";
reason = "Spam";
};
После изменений в конфигурационном файле нужно перезапустить ircd-hybrid.
В качестве клиента можно использовать например бесплатный AdiIRC.