7 января 2011 г.

Jabber-сервер ejabberd под Ubuntu

Компьютер под управлением Ubuntu 10.10. Пробуем установить Jabber-сервер.

Ставить будем сервер ejabberd.

Устанавливаем пакет ejabberd из репозитария:
apt-get install ejabberd

Редактируем конфиг сервера - /etc/ejabberd/ejabberd.cfg.

Указанный пользователь будет записан в администраторы сервера:
{acl, admin, {user, "andrew" }}.

Хост, на котором будет работать сервер:
{host, "test.ru"}.

Ejabberd с версии 0.9 поддерживает виртуальный хостинг, так что хостов может быть много. Если нужно поддерживать несколько хостов, используйте опцию hosts.

Язык, на котором будут выдаваться сообщения сервера:
{language, "ru"}.

Проверяем, чтобы нужные порты были открыты:

  [{5222, ejabberd_c2s,     [{access, c2s},
  % это соединение клиент-сервер, достаточно для организации нешифрованных соединений.
  
  {5269, ejabberd_s2s_in,
  % соединение сервер-сервер, для общения с клиентами других серверов.
  
  {5280, ejabberd_http,
  % веб-интерфейс

Чтобы разрешить пользователям самостоятельно регистрироваться в системе, находим строчку
{access, register, [{deny, all}]}.
и меняем deny на allow
{access, register, [{allow, all}]}.

Пробуем перезапустить (или запустить) сервер.
/etc/init.d/ejabberd restart

Смотрим лог /var/log/ejabberd/ejabberd.log (возможно, /var/log/ejabberd/sasl.log).

Если всё нормально, регистрируем пользователей.

  ejabberctl
    Usage: ejabberdctl node command
    command:
      ...
      register user server password -- register a user
      ...

Регистрируем пользователя, которого указали как админа (andrew).
ejabberdctl register andrew test.ru password

Заходим браузером по адресу http://localhost:5280/admin, вводим полный JID администратора (andrew@test.ru) и пароль и администрируем.

Для Windows есть простой jabber-клиент jajc, под Ubuntu можно использовать Empathy, для мобильников есть клиент Bombus.


Ссылки по теме:

Обсуждение на русскоязычном форуме Ubuntu
Подробная инструкция на lissyara.su: ejabberd + mysql + icq transport
Установка ejabberd на Gentoo Linux
Записки старого сисадмина: если не получается зарегистрировать администратора
Установка и настройка сервера jabberd