Установка 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} ]}.
Обсуждение