Как установить ZNC, вышибалу IRC, на Ubuntu VPS
Статус: устарело
В этой статье рассматривается версия Ubuntu, которая больше не поддерживается. Если вы в настоящее время используете сервер под управлением Ubuntu 12.04, мы настоятельно рекомендуем обновить или перейти на поддерживаемую версию Ubuntu:
- Обновите Ubuntu до версии 14.04.
- Обновление Ubuntu 14.04 до Ubuntu 16.04
- Перенесите данные сервера в поддерживаемую версию.
Причина:
См. вместо этого:
Введение
ZNC — это программное обеспечение для защиты сети IRC. ZNC поставляется с различными модулями и функциями, которые могут удовлетворить ваши требования к использованию.
В этом руководстве мы будем компилировать ZNC с включенным веб-интерфейсом. В веб-интерфейсе вы можете создавать, редактировать, настраивать и удалять пользователей из вашего экземпляра ZNC.
Монтаж
В этом руководстве мы будем использовать Ubuntu 12.04 LTS в качестве нашего дистрибутива. Однако этот учебник должен по-прежнему работать в самых последних версиях Ubuntu или быть очень похожим.
Во-первых, мы хотим обновить наши источники:
sudo apt-get update
Затем нам нужно получить некоторые зависимости, необходимые для компиляции ZNC из исходного кода:
sudo apt-get install build-essential libssl-dev libperl-dev pkg-config
Возьмите последнюю версию tar-шара с исходным кодом ZNC:
cd /usr/local/src; sudo wget http://znc.in/releases/znc-latest.tar.gz
Распакуйте архив, затем войдите в каталог, содержащий исходный код для ZNC:
sudo tar -xzvf znc-latest.tar.gz; cd znc*
Теперь мы можем настроить исходный код для компиляции ZNC.
./configure
Наконец, скомпилируем ZNC:
sudo make; sudo make install
Это может занять несколько минут...
Если вы выполнили все вышеперечисленные шаги, вы успешно установили ZNC в Ubuntu Linux!
Конфигурация
Во-первых, мы добавим нового пользователя для запуска ZNC:
adduser znc-admin
Переключитесь на нашего нового пользователя, затем перейдите в домашний каталог:
su znc-admin; cd ~
Теперь мы создадим наш файл конфигурации:
/usr/local/bin/znc --makeconf
Теперь ZNC задаст нам несколько вопросов, чтобы создать файл конфигурации.
Я выбираю 5000, но вы можете выбрать что угодно:
What port would you like ZNC to listen on? (1025 to 65535): 5000
Далее речь пойдет о прослушивании SSL, это позволяет вам подключаться к ZNC с помощью SSL и HTTPS. Я рекомендую ввести yes для этого, однако вы можете нажать ENTER, чтобы использовать значения по умолчанию.
Я выбрал да:
Would you like ZNC to listen using SSL? (yes/no) [no]: yes
Если вы решили использовать SSL, может появиться сообщение \Невозможно найти pem-файл: [/home/znc-admin/.znc/znc.pem]\. Просто ответьте «да» на следующий вопрос, чтобы создать файл pem:
Would you like to create a new pem file now? (yes/no) [yes]: yes
Теперь он спросит, хотите ли вы, чтобы ZNC прослушивал с использованием ipv6, в настоящее время DigitalOcean не поддерживает IPv6, поэтому мы ответим «нет»:
Would you like ZNC to listen using ipv6? (yes/no) [yes]: no
Он попросит вас указать хост для прослушивания, вы можете ввести свой IP-адрес VPS здесь или оставить пустым, чтобы прослушивать все IP-адреса:
Listen Host (Blank for all ips):
Теперь мы загрузим некоторые глобальные модули ZNC:
Load global module? (yes/no) [no]: yes Load global module ? (yes/no) [no]: yes
Модуль partyline позволяет нам общаться с ZNC из вашего IRC-клиента.
Теперь мы создадим нашего первого пользователя ZNC.
Введите желаемое имя пользователя, которое вы будете использовать для входа в ZNC:
Username (AlphaNumeric): FirstUser
Введите желаемый пароль для этого пользователя:
Enter Password: ************
Повторно введите желаемый пароль еще раз для подтверждения:
Confirm Password: ************
Теперь мы дадим этому пользователю право администрировать ZNC:
Would you like this user to be an admin? (yes/no) [yes]: yes
Теперь мы начнем настраивать параметры нашей сети IRC.
Сначала мы установим наш ник IRC:
Nick [FirstUser]: IRCNickname
Введите свой альтернативный псевдоним на случай, если ваш основной псевдоним будет конфликтовать при подключении к сети IRC:
Alt Nick [IRCNickname_]: IRCNickname_
Введите свой идентификатор:
Ident [IRCNickname]: IRCIdent
Введите настоящее имя, которое вы хотите использовать:
Real Name [Got ZNC?]: John Doe
Теперь он спросит нас о нашем связанном хосте, это то, какой IP-адрес или имя хоста мы будем использовать для подключения к сети IRC.
Я просто выберу значения по умолчанию, оставив это поле пустым, однако вы можете указать здесь имя хоста вашего сервера, чтобы использовать его.
Bind Host (optional):
Мы установим строки для буферизации (строки истории для воспроизведения при повторном подключении вашего клиента) для каждого канала.
Number of lines to buffer per channel [50]: 50
Установите ZNC для очистки буферов каналов после воспроизведения:
Would you like to clear channel buffers after replay? (yes/no) [yes]: yes
Установите наши режимы каналов по умолчанию для сетей IRC:
Default channel modes [+stn]: +stn
Теперь мы загрузим некоторые пользовательские модули ZNC:
Load module <chansaver>? (yes/no) [no]: yes Load module <controlpanel>? (yes/no) [no]: yes Load module <perform>? (yes/no) [no]: yes
Модуль chansaver поддерживает нашу конфигурацию ZNC в актуальном состоянии с каналами, которые вы разделили/присоединили, так что вам не нужно добавлять их вручную.
Модуль панели управления позволяет редактировать конфигурацию ZNC через ваш IRC-клиент.
Модуль выполнения позволяет нам вести список команд, которые будут выполняться, когда ZNC подключается к сети IRC.
Теперь мы можем настроить нашу первую сеть IRC, к которой будет подключаться ZNC.
Would you like to set up a network? (yes/no) [no]: yes
В этом уроке я буду использовать сеть freenode и подключаться к каналу #digitalocean.
Network (e.g. 'freenode' or 'efnet'): freenode
Теперь включите некоторые сетевые модули для этой сети. Обратите внимание на описание каждого сетевого модуля, которое отображается для информации о том, что они делают, чтобы решить, хотите ли вы, чтобы они были включены или нет. Подробнее о каждом модуле здесь.
Load module? (yes/no) [no]: yes Load module <keepnick>? (yes/no) [no]: no Load module <kickrejoin>? (yes/no) [no]: yes Load module <nickserv>? (yes/no) [no]: yes Load module <perform>? (yes/no) [no]: yes Load module <simple_away>? (yes/no) [no]: yes
Теперь мы укажем, к какому IRC-серверу мы хотим подключиться:
IRC server (host only): irc.freenode.net
Установите, к какому порту мы подключаемся для этого сервера:
[irc.freenode.net] Port (1 to 65535) [6667]: 6667
Установите пароль (если требуется), разрешающий подключение к этому серверу.
[irc.freenode.net] Password (probably empty):
Установите ZNC для подключения через SSL, если вы используете порт, совместимый с SSL.
Я выбрал порт без SSL, поэтому я выбираю нет:
Does this server use SSL? (yes/no) [no]: no
Теперь он спросит, хотите ли вы добавить еще один сервер для этой сети IRC. Это полезно, если вы хотите подключиться к определенным IRC-серверам в сети.
Я выбираю нет, потому что мне это не нужно:
Would you like to add another server for this IRC network? (yes/no) [no]: no
Теперь мы установим наши каналы, к которым мы подключаемся для этой сети:
Would you like to add a channel for ZNC to automatically join? (yes/no) [yes]: yes
Channel name: #digitalocean
Я не хочу устанавливать другой канал в это время, поэтому я выберу нет:
Would you like to add another channel? (yes/no) [no]: no
В настоящее время я не хочу подключаться к другой сети, поэтому выберу нет:
Would you like to set up another network? (yes/no) [no]: no
Я не хочу настраивать другого пользователя в это время, поэтому я выберу нет:
Would you like to set up another user? (yes/no) [no]: no
Теперь он спросит вас, хотите ли вы запустить ZNC. Введите yes, чтобы запустить ZNC:
Launch ZNC now? (yes/no) [yes]: yes
Вы успешно настроили ZNC для использования. ZNC теперь работает!
Основное использование
Ваш веб-интерфейс ZNC должен быть доступен по адресу: http://<droplet_ip>:<specified_port> или, если вы использовали SSL https://<droplet_ip>:<specified_port>, вы можете войти в систему со своим пользователем и паролем для дальнейшей настройки ZNC. Дополнительную помощь по дальнейшей настройке ZNC можно найти здесь.