суббота, 1 июня 2013 г.

jabber сервер Prosody и Debian

Установка из репо как обычно:

aptitude install prosody

Конфиг у него в /etc/prosody/prosody.cfg.lua:
прописываем свой VirtualHost "example.com" и комментируем ("--") строку

--      enabled = false -- Remove this line to enable this host
что бы активировать хост.

Добавляем админа:

admins = {"admin@example.com"}

Для создания групп используется модуль "groups" (по умолчанию отключен в конфиге)
Создаем файл для групп в формате:

[Group1]
sdasd@example.com
sdssd@example.com

[+Group2]
asdf@example.com=Some body
zxcv@example.com=Cris

При этом пользователи из группы Group2 будут видны всем, а пользователи из группы Group1 будут видны только внутри этой группы.
Знак "+" как раз на это и влияет.

Сохраняем как /etc/prosody/sharedgroup.txt, и в конфигурационном файле указываем где он находится:

modules_enabled = {
....
"groups"; -- Shared roster support
....
}
groups_file = "/etc/prosody/sharedgroup.txt"

рестартим Prosody:
prosodyctl restart


Добавление пользователя:
интерактивное:
prosodyctl adduser xxx@example.com
запросит пароль и его повтор

пакетное:
prosodyctl register login domain password
удобно в скрпитах и т.п.

Настраиваем хранение данных в mysql
ставим нужный модуль
aptitude install lua-dbi-mysql

Создаем базу и права на нее (не забудьте везде поставить Ваш пароль)
mysql> GRANT ALL ON prosody.* TO 'prosody'@'localhost' IDENTIFIED BY 'password';
mysql> CREATE DATABASE prosody;

Раскомментируем строку
storage = "sql"
и раскомментируем и отредактируем соотв. источник sql

sql = { driver = "MySQL", database = "prosody", username = "prosody", password = "password", host = "localhost" }

рестартим Prosody:
prosodyctl restart

Prosody сам создаст нужные таблицы в базе и т.п. Единственный момент, если пользователей уже создавали и регистрировали в "локальном" хранилище, их нужно либо экспортировать в mysql, либо завести по новой.



Комментариев нет:

Отправить комментарий