Шаг 4 — Установка и базовая настройка UnrealIRCd
Что делает этот шаг
Этот шаг копирует собранные бинарные файлы и шаблоны конфигураций UnrealIRCd в целевые директории (/home/ircadmin/bin и /home/ircadmin/conf), устанавливает права и готовит среду для первого запуска демона IRC. Также здесь рассматривается копирование сертификатов SSL (если они были сгенерированы) и создание удобной символьной ссылки для запуска.
Важно: команды ниже изменяют владельца/права файлов и логически предполагают, что у вас есть учётная запись ircadmin и соответствующие директории. Если вы используете другой путь, замените его во всех командах.
Команды, которые нужно выполнить
Выполните вход под суперпользователем (root):
su
Должны оказаться в той же папке, где вы были, но с доступом суперпользователя. Затем выполните команду установки:
make installПример типичного вывода установки (screen dump):
zcworld@dhcppc2:~/build/Unreal3.2> su -
Password:
dhcppc2:~ # cd /home/zcworld/src/Unreal3.2/
dhcppc2:/home/zcworld/src/Unreal3.2 # make install
Building src
make[1]: Entering directory `/home/zcworld/src/Unreal3.2/src'
cd modules; make 'CFLAGS=-I../include
-I/home/zcworld/src/Unreal3.2/extras/regexp/include
-I/home/zcworld/src/Unreal3.2/extras/c-ares/include -L../extras/c-ares/lib -pipe
-g -O2 -funsigned-char -fno-strict-aliasing -Wno-pointer-sign -DZIP_LINKS
-export-dynamic ' 'CC=gcc' 'IRCDLIBS=-lcrypt -lnsl -lz -ldl
-L/home/zcworld/src/Unreal3.2/extras/regexp/lib -ltre -lcares' 'LDFLAGS='
'IRCDMODE=711' 'BINDIR=/home/ircadmin/bin/ircd' 'INSTALL=/usr/bin/install'
'INCLUDEDIR=../include' 'IRCDDIR=/home/ircadmin/conf' 'MANDIR=' 'RM=/bin/rm'
'CP=/bin/cp' 'TOUCH=/usr/bin/touch' 'RES=' 'SHELL=/bin/sh' 'STRTOUL='
'CRYPTOLIB=-lssl -lcrypto' 'CRYPTOINCLUDES=' 'URL=' all
make[2]: Entering directory `/home/zcworld/src/Unreal3.2/src/modules'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/zcworld/src/Unreal3.2/src/modules'
make[1]: Leaving directory `/home/zcworld/src/Unreal3.2/src'
__________________________________________________
| Compile is now complete. |
| You should now read the documentation and learn |
| how to configure your IRCd. |
| |
| If you really like UnrealIRCd, and would like to |
| make a donation, please read the Donation file in |
| this archive. :) |
| |
| Thanks for using Unreal IRCd! If you are in need |
| for any kind of help regarding the IRCd please |
| read the Unreal.nfo file. |
|__________________________________________________|
/usr/bin/install -m 0700 -d /home/ircadmin/conf
/usr/bin/install -m 0700 src/ircd /home/ircadmin/bin/ircd
/usr/bin/install -m 0700 -d /home/ircadmin/conf/networks
/usr/bin/install -m 0600 networks/*.network /home/ircadmin/conf/networks
/usr/bin/install -m 0700 networks/makenet /home/ircadmin/conf/networks
/usr/bin/install -m 0600 networks/networks.ndx /home/ircadmin/conf/networks
/usr/bin/install -m 0700 -d /home/ircadmin/conf/doc
/usr/bin/install -m 0600 doc/Authors doc/example.conf doc/coding-guidelines
doc/tao.of.irc doc/unreal32docs.html /home/ircadmin/conf/doc
/usr/bin/install -m 0700 -d /home/ircadmin/conf/aliases
/usr/bin/install -m 0600 aliases/*.conf /home/ircadmin/conf/aliases
/usr/bin/touch /home/ircadmin/conf/unrealircd.conf
chmod 0600 /home/ircadmin/conf/unrealircd.conf
/usr/bin/install -m 0600 spamfilter.conf dccallow.conf /home/ircadmin/conf
/usr/bin/install -m 0600 badwords.*.conf help.conf LICENSE Donation
/home/ircadmin/conf
/usr/bin/install -m 0700 unreal /home/ircadmin/conf
/usr/bin/install -m 0700 -d /home/ircadmin/conf/modules
/usr/bin/install -m 0700 src/modules/*.so /home/ircadmin/conf/modulesЕсли вы не собирали/не настраивали SSL, пропустите следующие строки. Если SSL был настроен — скопируйте приватный ключ и сертификат в каталог конфигурации ircadmin:
cp server.*.pem ~ircadmin/conf/Затем переключитесь в домашнюю директорию пользователя ircadmin:
cd ~ircadmin/Скопируйте папку conf в /home/ircadmin и замените все файлы. Если вы будете использовать демонстрационные конфиги из примера, загружайте их под учётной записью ircadmin (например, через WinSCP) — это гарантирует корректные права и владельца.
Альтернативно можно просто скопировать пример конфигурации в место назначения:
cp /home/zcworld/src/Unreal3.2/doc/example.conf /home/ircadmin/conf/unrealircd.conf
После копирования выполните в корне /home/ircadmin следующие команды для установки владельца и прав:
cd /home/ircadmin
chown -R ircadmin:ircadmin ./Откройте новый терминал, войдите под пользователем ircadmin и выполните команды для создания удобной ссылки на исполняемый файл и проверки содержимого bin:
cd conf/
ln -s $(pwd)/unreal ~/bin/unreal
cd ../bin
ls -alОжидаемый вывод выглядит примерно так (пример):
total 1928
drwxr-xr-x 2 ircadmin ircadmin 4096 2007-01-20 23:02 .
drwxr-xr-x 10 ircadmin ircadmin 4096 2007-01-20 22:32 ..
-rwx------ 1 ircadmin ircadmin 1959302 2007-01-20 22:20 ircd
lrwxrwxrwx 1 ircadmin ircadmin 26 2007-01-20 23:02 unreal -> /home/ircadmin/conf/unreal
ircadmin@dhcppc2:~/bin>Частые ошибки и способы их устранения
- Ошибка: “permission denied” при запуске ircd. Решение: проверьте владельца и права, используйте chown -R ircadmin:ircadmin /home/ircadmin и chmod для бинарника (обычно 0700 или 0755 в зависимости от политики).
- Ошибка: отсутствуют сертификаты SSL. Решение: либо пересоберите с поддержкой SSL, либо пропустите шаги, связанные с копированием server.*.pem, и отключите TLS в конфиге до получения сертификатов.
- Ошибка: конфигурация не загружается из-за синтаксиса. Решение: используйте пример конфигурации как отправную точку и внимательно проверяйте пути к модулям и включения (include).
Важно: никогда не храните приватные SSL-ключи с доступом 0644; установите 0600 и владельца ircadmin.
Контрольный список ролей
- Администратор сборки (builder): убедиться, что make завершился без ошибок; подтвердить наличие /home/ircadmin/bin/ircd и /home/ircadmin/conf/unrealircd.conf.
- Системный администратор (sysadmin): настроить владельца и права, создать сервис/скрипт для управления демоном (systemd или init) и провести тестовый запуск в безопасной среде.
- Оператор (operator): протестировать базовые команды IRC, проверить соединения с клиентом и логирование.
Критерии приёмки
- Бинарник ircd присутствует и исполняем: /home/ircadmin/bin/ircd (право на выполнение у владельца).
- Конфигурационный файл /home/ircadmin/conf/unrealircd.conf существует и читается процессом ircd.
- Если используется TLS — файлы server.*.pem в /home/ircadmin/conf с правами 0600 и владельцем ircadmin.
- При ручном запуске демона в тестовом режиме не возникает ошибок загрузки модулей.
Быстрый SOP — запуск после установки
- Проверить права и владельца: chown -R ircadmin:ircadmin /home/ircadmin
- При необходимости включить SELinux/AppArmor политики или создать исключения.
- Запустить демона в фоне или через systemd: sudo -u ircadmin /home/ircadmin/bin/ircd или systemctl start unrealircd (если создан unit-файл).
- Проверить логи (/home/ircadmin/conf/logs или системные) на предмет ошибок модулей и SSL.
- Подключиться клиента/клиентов, проверить базовый функционал.
Короткий перечисляемый глоссарий (1 строка)
- ircd — демон IRC, серверная часть, которая обрабатывает соединения IRC.
- unrealircd.conf — главный файл конфигурации UnrealIRCd.
- ircadmin — системный аккаунт, под которым рекомендуется запускать ircd.
- server.*.pem — файлы сертификата и ключа для TLS.
Советы по безопасности и приватности
- Ограничьте права на конфигурации и ключи (владелец ircadmin, режим 0600 для приватных данных).
- Если сервер будет публично доступен, настройте firewall, rate-limiting и мониторинг попыток подключения.
- Не храните приватные ключи в общедоступных резервных копиях без шифрования.
Резюме
Шаг 4 завершает установку бинарников и шаблонов конфигурации UnrealIRCd. Проверьте права и владельца, скопируйте SSL-файлы при необходимости и создайте удобную символьную ссылку для запуска. Выполните тестовый запуск и проверьте логи перед переходом в рабочую эксплуатацию.
Важно: если вы используете другие пути установки или другую учётную запись, адаптируйте все команды соответственно.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента