Выбор сервера
Для запуска собственного Jabber-сервера необходимо установить одну из программ-серверов. На данный момент из всех существующих реализаций серверов наиболее популярны три:
В последнее время также активно развивается сервер под названием Tigase, написанный на Java.
- Ejabberd
- Является самым популярным решением. Он имеет модульную архитектуру, поддерживает виртуальные узлы (может обслуживать несколько доменов), умеет работать с разнообразными хранилищами данных (MySQL, PostgreSQL, LDAP), также есть возможность использования внешнего скрипта для авторизации пользователей. За счет использования Erlang ejabberd может выдерживать большую нагрузку. Единственным серьёзным недостатком ejabberd является громоздкость — даже при небольшом числе онлайн-пользователей потребление памяти будет довольно высоким, что связано с особенностями внутреннего представления строк в erlang-машине. Использование памяти можно несколько сократить отказом от TLS и zlib, но вряд ли это понравится вашим пользователям. Если вы готовы терпеть этот единственный недостаток, к слову, присущий также и Openfire, то ejabberd — лучший выбор для вас.
- Prosody
- Относительно молодой проект, тем не менее, быстро завоевавший большую популярность. Это связано с отличительной чертой Prosody — компактностью. Бесспорно, такие проекты, как Jabberd14 и Jabberd2 тоже нетребовательны к ресурсам, но на сегодняшний день их можно считать морально устаревшими. Prosody отвечает всем требованиям, предъявляемым к современному серверу — поддержка современных XEP, модульная архитектура, расширяемость. Как и ejabberd, Prosody может работать с самыми разнообразными внешними хранилищами данных. Если же хочется получить готовое решение "все в одном", но при этом нетребовательное к ресурсам - стоит обратить внимание на Snikket - это тот же Prosody, поставляемый в предустановленном варианте с необходимыми сервисами.
- Openfire
- Как уже было отмечено выше, также характеризуется значительным потреблением ресурсов. Другим недостатком Openfire является отсутствие поддержки виртуальных узлов, то есть, сервер, работающий на базе Openfire, может обслуживать только один домен. А неоспоримым преимуществом при использовании Openfire является его веб-интерфейс, позволяющий решать любые административные задачи: создание и удаление пользователей, просмотр статистики, установку дополнений. Установка дополнений производится в автоматическом режиме при помощи нескольких щелчков мыши. Среди дополнений есть полнофункциональный набор транспортов, Kraken, во многом похожий на универсальный Spectrum. Такой веб-интерфейс, в совокупности с поддержкой LDAP, делает Openfire хорошим выбором для локальных сетей фирм, учебных заведений и любых других предприятий, где нужно внедрить мгновенную переписку сотрудников.
Что ejabberd, что Openfire полностью настраиваются до рабочего состояния во время или сразу после установки и сразу поддерживают многопользовательские конференции.
- Jabberd
- Этот сервер имеет модульную архитектуру, например, поддержка конференций обеспечивается установкой отдельного пакета в случае использования сервера под Linux или распаковкой архива с MUC-модулем в каталог установки jabberd в случае с Windows. Отличается низкими требованиями к ресурсам, самым малым занимаемым местом на диске (менее 10 Мб) после установки и отсутствием веб-интерфейса для управления - вся настройка делается правкой конфигурационных файлов, что может потребовать некоторого опыта и знаний. Рекомендуется для использования на слабых машинах, однако не стоит ожидать от этого сервера поддержки современных функций - проект уже несколько лет, как прекратил развитие.
После того, как Вы определитесь с выбором программы-сервера, можно переходить регистрации доменного имени.