[[Установка ejabberd на Gentoo Linux]]

Gentoo

Установка ejabberd на Gentoo Linux

Установка

emerge ejabberd -ap

Разберемся с некоторыми флагами

mod_irc поддержка IRC
mod_muc поддержка конференций
mod_pubsub поддержка Publish-Subscribe (какой-то бред)
web Web интерфейс

Добавляем нужные флаги

echo "net-im/ejabberd mod_muc web" >> /etc/portage/package.use

Установка

emerge ejabberd -av

Настройка

Первичные настройки

/etc/jabber/ejabberd.cfg

%%%   ================
%%%   SERVED HOSTNAMES
%% Имена поддерживаемых хостов
{hosts, ["mygentoo"]}.

%%%   ====================
%%%   ACCESS CONTROL LISTS
%% Определяем права пользователю 'vasya' - админ
{acl, admin, {user, "vasya", "mygentoo"}}.

%%%   ===============
%%%   LISTENING PORTS
{listen,
 [

/.../

%% На порт 5280 вешается http сервер 
  {5280, ejabberd_http, [
                         http_poll,
                         web_admin
                        ]}
]}.

Запуск и добавление в автозагрузку

/etc/init.d/ejabberd start
rc-update add ejabberd default

Проверка

ejabberdctl status
Что если получили сообщение:

RPC failed on the node ejabberd@localhost nodedown

Нужно проверить соответствие всех параметров, особенно, что касается имён хоста.

~ # hostname 
mygentoo
~ # hostname -s
mygentoo

/etc/hosts

127.0.0.1 localhost.localdomain localhost
192.168.0.7 mygentoo

/etc/conf.d/ejabberd

# Name of your ejabberd node. Used by ejabberdctl to determine which
# node to communicate with.
EJABBERD_NODE="ejabberd@`hostname -s`"

/etc/jabber/ejabberdctl.cfg

# Default: ejabberd
#ERLANG_NODE=ejabberd

Регистрируем пользователя vasya

ejabberdctl register vasya mygentoo PaSsWord

Заходи в панель управления как vasya@mygentoo

http://192.168.0.7:5280/admin
Скрипт /etc/init.d/ejabberd иногда глючит, для перезапуска сервиса
/etc/init.d/ejabberd stop
/etc/init.d/ejabberd zap
killall -9 beam epmd
/etc/init.d/ejabberd start


Регистрация пользователей

mod_register : добавляет поддержку In-Band Registration - самостоятельную регистрацию клиента

ejabberd.cfg

Разрешает регистрацию клиентов

%% 'allow' <-> 'deny'
{access, register, [{allow, all}]}.

Фильтровать имена при регистрации, на примере из документации - запрет имен короче 2х символов.

{acl, shortname, {user_regexp, "^..?$"}}.
{access, register, [{deny, shortname},
                    {allow, all}]}.

Настройки модуля

{modules, [
/.../
 
{mod_register, [
                 %%%% Приветственное сообщение после регистрации (тема-subject и текст)
                 {welcome_message, {"Welcome!", "Hi\nWelcome to this Jabber server."}},
                 %% Без subject {welcome_message, {"", "text"}},
 
                 %%%%% Уведомления о зарегистрировавшихся пользователях
                 {registration_watchers, ["vasya@mygentoo"]},
 
                 {access, register}
]}.




off

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
108 -8 = ?
 
howto/gentoo/ejabberd.txt · Последние изменения: 2012/06/03 21:52 (внешнее изменение)
Gentoo Linux Driven by DokuWiki