Установка и настройка InspIRCd IRC на Ubuntu 16.04

Сперва нужно обновить систему:

apt-get update && apt-get upgrade

Далее включим файервол ufw и настроим порты по умолчанию

ufw allow 22/tcp
ufw allow 6667/tcp
ufw enable

Брандмауэр предложит диалоговое окно для принятия изменений. Просто нажмите Y

Command may disrupt existing ssh connections. Proceed with operation (y|n)?

Далее мы можем установить InspIRCd:

apt-get install inspircd

После завершения установки мы можем приступить к настройке службы. Основная конфигурация находится в /etc/inspircd/inspircd.confфайле и имеет макет файла XML.

Сначала найдите server тег. В этом теге вы вводите данные своего сервера / сети, большинство этих настроек видны вашим пользователям.

  • name: Имя хоста вашего сервера. У него должен быть правильный синтаксис (например:) sub.example.net.
  • description: Описание сервера.
  • network: Имя сети, указанное при подключении к клиентам. Должен быть одинаковым на всех серверах в сети и не содержать пробелов.

В нашем руководстве мы будем использовать следующее:

<server name="irc.lexblog.org"
        description="My IRC server"
        network="ExampleNET">

Замените оригинальный тег на приведенный выше.

Далее ищем adminтег. Эти настройки являются административными данными вашего сервера. Они отображаются при вводе /ADMINкоманды.

  • name: Настоящее имя
  • nickПсевдоним (желательно, какой вы используете в сети).
  • email: Адрес электронной почты. Не обязательно должен быть действительным, но этот адрес будет тот, который ваши пользователи должны связаться с вами в случае возникновения проблем.

Давайте использовать администратора Xenial:

<admin name="USER"
   nick="USER"
   email="[email protected]">

Теперь перейдите к bind address. Этот тег используется для открытия сервиса. По умолчанию вы увидите локальный IP-адрес ( 127.0.0.1). Это означает, что сервис не может связаться с внешним миром. Давайте откроем наш сервис, не используя адреса вообще. Это приведет к привязке службы к любому интерфейсу Ethernet, которым владеет машина:

<bind address="" port="6667" type="clients">

Следующий тег будет powerтегом. Этот тег определяет два пароля.

  • diepass: Пароль для операторов, если они хотят выключить сервер.
  • restartpass: Пароль для операторов, если им нужно перезапустить сервер.

Лучше всего изменить эти пароли по умолчанию:

<power diepass="1234" restartpass="12345" pause="2">

Последние настройки, которые мы будем менять, это operнастройки. Они определяют логины оператора.

  • name: логин оператора, который используется для работы (Пример:) /oper name password.
  • password: ну, пароль 🙂 
  • host: Какие имена хостов / IP разрешено использовать. Вы можете просто использовать *или @для этого раздела.
  • typeТип операци. Блок выше должен иметь три класса уже определен: NetAdminGlobalOpи HelperNetAdminтот, который мы будем использовать.

Измените operтег, используя следующий контент. Обратите внимание, что для нашего примера мы будем использовать » @» для хоста. В производственной среде нежелательно использовать это:

<oper name="USER"
   password="mypassword"
   host="*@*"
   type="NetAdmin">

Перед тем , как перезапустить службу, отредактировать motdи rulesфайлы:

nano /etc/inspircd/inspircd.motd

Замените его своим собственным, например:

This is the motd of example.net. Here you can list planned outages or information your users need to know about this IRC server.

Наконец, отредактируйте файлы правил.

nano /etc/inspircd/inspircd.rules

Добавьте свои собственные правила, например:

The first rule of Fight Club is: You do not talk about Fight Club. The second rule of Fight Club is: You DO NOT TALK ABOUT FIGHT CLUB! 

Теперь, когда все настроено, перезапустите службу IRC:

service inspircd restart

Чтобы убедиться, что все работает, запросите netstatинструмент:

netstat -tulpn | grep -i inspircd

В нем должна быть указана программа inspircd, прослушивающая порт 6667:

tcp6       0      0 :::6667                 :::*                    LISTEN      31313/inspircd
udp        0      0 0.0.0.0:39335           0.0.0.0:*                           31313/inspircd

Для тестирования сервера мы можем установить клиент IRC терминала.  В нашем примере мы будем использовать weechat. Это текстовый IRC-клиент, который можно использовать в терминальной сессии.

Установите приложение weechat через репозитории:

apt-get install weechat 

После установки этого приложения запустите этот IRC-клиент:

weechat

Чтобы просмотреть все команды, которые может предложить weechat, вы можете запросить команду справки:

/help

Чтобы выйти, вы можете набрать следующую команду:

/quit    

Добавьте наш локальный сервер к соединению:

/server add local localhost

Теперь мы можем подключиться серверу с именем «local»:

/connect local

Вы увидите наш MOTD и правила, всплывающие в окне терминала.

Чтобы авторизоваться оператором, введите следующее:

/oper xenial mypassword

Мы должны увидеть следующее:

22:40:34   local  -- | User mode [+o] by irc.example.net
22:40:34   local  -- | You are now a NetAdmin

Вот и все. Удачи

Оставьте ответ