Песочница: различия между версиями

Материал из Мир Jabber
Перейти к навигацииПерейти к поиску
7730 байт добавлено ,  11:56, 21 августа 2022
Строка 97: Строка 97:
== Настройка ejabberd ==
== Настройка ejabberd ==


Все подготовительные процедуры завершены, теперь можно приступать непосредственно к настройке своего jabber-сервера.
Все подготовительные процедуры завершены, теперь можно приступать непосредственно к установке и настройке своего jabber-сервера. В Debian установить ejabberd можно командой
 
sudo apt-get install ejabberd
 
Зачастую самая свежая версия может находиться в backports, поэтому при необходимости можно указать конкретный репозиторий из вашего /etc/apt/sources.list с помощью ключа '''-t''' - например, '''-t bullseye-backports'''. Кроме того, с недавних пор у ejabberd появился официальный DEB и RPM-репозиторий - подробнее об этом можно почитать по [https://www.process-one.net/blog/announcing-ejabberd-deb-and-rpm-repositories/ этой ссылке].
 
Штатно ejabberd использует собственную базу данных - Mnesia. Ее объем ограничен 2 ГБ, поэтому если планируется большое количество пользователей, большие объемы сообщений или просто хочется использовать удобные популярные инструменты для работы с привычной вам базой - я бы рекомендовал использовать внешнюю базу данных - например, MySQL или MariaDB. Я так и поступил, тем более сделать это весьма просто - кроме ejabberd просто установите еще пакет '''erlang-p1-mysql''' командой
 
sudo apt-get install erlang-p1-mysql
 
Создайте базу для jabber-сервера, после чего импортируйте туда схему базы из '''/usr/share/ejabberd/sql/mysql.sql'''.
 
Ниже приводится пример конфигурации jabber-сервера. Рассмотрим его подробнее.


{{Hider hiding
{{Hider hiding
Строка 608: Строка 620:
</pre>
</pre>
}}
}}
* Первым делом указывается один или несколько хостов, которые будет обслуживать сервер - в конфигурационном файле выше он указан как '''EXAMPLE.COM'''.
* Далее надо указать перечень файлов сертификатов, которые мы создали раньше.
* Секция '''Listen''' описывает порты, которые слушает сервер. Тут перечисляются порты для STUN/TURN ('''3478''') и их шифрованных аналогов ('''5349'''); порты для подключения клиентов ('''5222''' и '''5223''') и серверов ('''5269''' и '''5270'''), а также ряд дополнительных портов. К ним относятся порты для админ-панели сервера ('''5281'''), веб-страницы для регистрации пользователей ('''5282'''), а также подключений к серверу через Websocket или BOSH и загрузка файлов через HTTP Upload ('''5283''') - я постарался разнести различные сервисы по разным портам, чтобы в дальнейшем было проще, например, ограничить доступ к админ-панели определенными адресами, не блокируя при этом доступ к остальным функциям. Еще одним полезным сервисом является веб-клиент ConverseJS - под него выделен порт '''5000''' - о нем будет написано чуть ниже. Для некоторых описанных портов необходимо указывать внешний IP-адрес сервера - это нужно, чтобы сервис знал, какой именно адрес отдавать клиентам - это относится к настройкам STUN/TURN и Proxy. В качестве шаблона в показанном конфиге указаны адреса '''123.123.123.123''' для IPv4 и '''2a01:0123:0123:0123::''' для IPv6 - если не используете IPv6, то просто закомментируйте соответствующие строки.
* Далее необходимо указать хост, с которого будет отдаваться картинка Captcha.
* Далее указывается один или несколько администраторских аккаунтов - с помощью них можно будет попасть в веб-интерфейс администрирования, зайти в любую [[Конференции|конференцию]], а также в [[Браузер сервисов|браузере сервисов]] будут доступны дополнительные административные пункты.
* После настроек шейпера идет довольно объемное описание различных модулей. Из интересного:
** В '''server-info''' для '''mod_disco''' можно указать контакты администратора сервера, техподдержки или просто дополнительную информацию.
** В '''mod_http_upload''' можно указать адрес, с которого будут отдаваться загруженные на сервер через HTTP Upload файлы. При желании можно использовать не встроенный веб-сервер, а тот веб-сервер, что был настроен для получения сертификатов. Чуть ниже этой опции есть настройка времени устаревания файлов - в примере выше это 180 дней. Если у вас мало места на сервере, то можно поставить это значение поменьше.
** Аналогичным образом можно поступить с '''mod_muc_log''' - модулем, позволяющим вести логи конференций (при включении соответствующей опции в настройках этой конференции). В примере выше файлы просто складываются в определенный каталог, а дальше их уже раздает веб-сервер.
** Для модуля proxy65 не забудьте указать внешний адрес сервера.
** Если хотите получать уведомления о новых регистрациях - обратите внимание на параметр '''registration_watchers''' в секции '''mod_register'''. Тут в том числе можно запретить регистрацию пользователей вообще или ограничить ее определенными адресами (например, локальной сетью), а также задать приветственное сообщение, отправляемое каждому новому пользователю.
** Ниже идет большой блок параметров STUN/TURN-сервера. Укажите внешние IP-адреса сервера и обслуживаемый домен; если у сервера нет IPv6-адреса - закомментируйте соответствующие блоки.
**


[[Category:Вики]]
[[Category:Вики]]

Навигация