Установка ejabberd под Linux

Материал из Мир Jabber
Версия от 12:52, 2 ноября 2023; Rain (обсуждение | вклад) (Поменял местами блоки)
Перейти к навигацииПерейти к поиску

Рассмотрим установку сервера ejabberd на компьютеры под управлением одного из дистрибутивов GNU/Linux для использования в локальной сети с открытым доступом из Интернет и с использованием службы DynDNS.

Предполагается, что у Вас уже установлена операционная система, настроен доступ в Интернет, а доменное имя на DynDNS (допустим, это будет myjabber.ath.cx) указывает на внешний адрес Вашего компьютера (либо тот, который доступен из Вашей локальной сети, если Вы настраиваете сервер без возможности подключения к нему из Интернета).

Ejabberd может быть установлен на ваш сервер различными способами. Опишу три по убыванию предпочтительности:

  1. Установка из репозитория/портов. Идеальный по оптимизации и самый простой вариант.
  2. Сборка из исходного кода. Если этого пакета нет в репозиториях к вашему дистрибутиву, но очень хочется, чтобы сервер был оптимизированным и работал без ошибок - засучиваем рукава и переходим к соответствующему разделу. Тут вам понадобятся некоторые знания о Linux и/или помощь гуру.
  3. Предварительно собранные бинарные файлы с инсталлятором. Вариант весьма прост, но вряд ли оптимизирован именно под ваш дистрибутив.

Далее подробно рассмотрены эти варианты.

Установка из репозитория

Дистрибутивов Linux великое множество, и нет никакой возможности рассмотреть детали установки в каждом из них. Упомянем наиболее популярные (предполагается наличие прав root):

openSuSE 11.4

Сначала подключим репозиторий, посвящённый программам обмена сообщениями:

zypper addrepo http://download.opensuse.org/repositories/server:/messaging/openSUSE_11.4/ Messaging
Потом установим сервер:
zypper install ejabberd

Fedora

По умолчанию нужный репозиторий обычно подключен.

yum install ejabberd

Debian-based дистрибутивы (Debian, *Ubuntu и другие)

Ejabberd входит в основную ветку репозитория, поэтому для установки просто скомандуйте:

apt-get install ejabberd

Gentoo

Для установки ejabberd в Gentoo GNU/Linux выполните команды

echo "net-im/ejabberd pam ssl zlib mod_muc mod_pubsub web" >> /etc/portage/package.use
emerge ejabberd

Установка готовых бинарников

Рассмотрим установку stable-версии 2.1.8 для 32-битного Linux. Для начала нужно скачать инсталлятор:

wget http://www.process-one.net/downloads/ejabberd/2.1.8/ejabberd-2.1.8-linux-x86-installer.bin.gz

Распаковать его:

gunzip ejabberd-2.1.8-linux-x86-installer.bin.gz

И запустить:

chmod +x ejabberd-2.1.8-linux-x86-installer.bin
./ejabberd-2.1.8-linux-x86-installer.bin

Далее следуйте указаниям программы установки.

Сборка из исходников

Пример для версии 2.0.5

Настройка

А дальше надо настроить сервер: что делать при загрузке, какие модули использовать, какие порты прослушивать, и т.п.

Настройка сервера сводится к редактированию файла конфигурации /etc/ejabberd/ejabberd.cfg (путь показан на примере Debian GNU/Linux, в других дистрибутивах или при самостоятельной сборке из исходных кодов путь может отличаться). Откройте этот файл от пользователя root в любом удобном для Вас текстовом редакторе, после чего найдите следующие строки:

%% Admin user
{acl, admin, {user, "", "localhost"}}.
%% Hostname {hosts, ["example.com"]}.

В первом параметре задается Jabber ID администратора, а во втором - доменное имя сервера. Приведите эти строки примерно к такому виду:

%% Admin user
{acl, admin, {user, "admin", "myjabber.ath.cx"}}.
%% Hostname {hosts, ["myjabber.ath.cx"]}.

В данном случае JID администратора задан admin@myjabber.ath.cx, а имя сервера, как уже условились выше - myjabber.ath.cx.

Теперь в том же файле найдите строки

%% No username can be registered via in-band registration:
%% To enable in-band registration, replace 'deny' with 'allow'
{access, register, [{deny, all}]}.

и замените deny на allow - без этого пользователи сервера не смогут регистрироваться напрямую из своего Jabber-клиента.

Логин в веб-интерфейсе


Сохраните изменения и перезапустите ejabberd командой

/etc/init.d/ejabberd restart


Сервисы и статистика сервера


После этого создайте нового пользователя admin@myjabber.ath.cx используя Ваш Jabber-клиент. В браузере сервисов для этой учетной записи будут доступны основные функции администрирования, а используя параметры этого аккаунта Вы сможете авторизоваться в веб-интерфейсе по адресу http://myjabber.ath.cx:5280/admin

Ссылки