XMPP (Extensible Messaging and Presence Protocol), ранее известный как Jabber — основанный на XML, открытый, свободный для использования протокол для мгновенного обмена сообщениями и информацией о присутствии (см. список контактов) в режиме, близком к режиму реального времени. Изначально спроектированный легко расширяемым, протокол, помимо передачи текстовых сообщений, поддерживает передачу голоса, видео и файлов по сети. В отличие от коммерческих систем мгновенного обмена сообщениями, таких, как AIM, ICQ, WLM и Yahoo, XMPP является децентрализованной, расширяемой и открытой системой. Любой желающий может открыть свой сервер мгновенного обмена сообщениями, регистрировать на нём пользователей и взаимодействовать с другими серверами XMPP.
В сегодняшней статье рассмотрим настройку Jabber-сервера Openfire и транспортов к нему.
Подготовка к установке
Openfire работает на Java, поэтому для начала проверим наличие пакета java в системе:
java -version

Если пакет не установлен, выполните:
sudo apt-get install sun-java6-bin
Openfire управляется через веб-панель, для работы которой нужен Apache и php.
Если apache у вас еще не установлен, установите его командой:
sudo apt-get install apache2
Теперь необходимо установить php5 и libapache2-mod-php5.
sudo apt-get install php5 libapache2-mod-php5
Перезапустите веб-сервер apache командой:
sudo /etc/init.d/apache2 restart
Теперь необходимо установить mysql-server.
sudo apt-get install mysql-server
Теперь необходимо настроить mysql.
Выполните:
mysql -u root -p mysql
Для того чтобы задать пароль ROOT выполните:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('password');
где password — Ваш пароль.
Чтобы авторизироваться через mysql и чтобы в php была поддержка mySQL необходимы пакеты libapache2-mod-auth-mysql и php5-mysql.
Выполните:
sudo apt-get install libapache2-mod-auth-mysql php5-mysql
Перезапустите web-server apache выполнив:
sudo /etc/init.d/apache2 restart
Теперь необходимо создать базу mysql, выполните для входа как root:
mysql -u root -p
Введите пароль и выполните для создания базы команду:
CREATE DATABASE openfire;
Выйдите из mysql:
exit
Установка пакета openfire
Теперь необходимо скачать и установить пакет openfire.
Выполните:
wget http://download.igniterealtime.org/openfire/openfire_3.6.4_all.deb
Актуальную версию Openfire можно посмотреть на официальном сайте.
Для установки пакета выполните:
sudo dpkg -i openfire_3.6.4_all.deb
Настройка Openfire
Чтобы настроить jabber-server openfire откройте браузером http://localhost:9090 (если вы настраиваете систему на удаленном сервере, вместо localhost следует писать имя или IP этого сервера)
Русского языка к сожалению нет, выбираем английский и нажимаем кнопку Continue.
В строке Domain нам предлагается указать IP или имя нашего сервера.
Далее настройки базы пользователей. Выберите Embedded Database.
Следующий шаг - настройки системных групп и профилей.
Далее нужно указать Email и пароль администратора. Пароль по умолчанию - admin
Установка завершена. Теперь можно войти в панель управления для дальнейшей настройки.
Настройка транспортов ICQ и других IM
Для настройки транспортов протоколов необходимо установить плагин Kraken IM Gateway . К сожалению, из последних версий Openfire он исключен, как устаревший, но замены ему пока нет. Скачаем его и импортируем отдельно. Скачать можно на sourceforge.net или с этого сайта kraken.zip.
Для импорта следует перейти на вкладку "Plugins", в поле "Upload Plugin" выбрать jar-файл и загрузить его.
После успешной загрузки во вкладке "Server" появится подраздел "Gateways", в котором можно выбрать, какие транспорты добавить.
Поддерживаются рабочие:
- AOL Instant Messenger
- Gadu-Gadu
- ICQ
- IRC
- MSN Messenger
- Yahoo! Messenger
И экспериментальные:
- Google Talk
- Live Journal
- MySpaceIM
- SameTime
- SIP/SIMPLE
- XMPP
Другие плагины можно найти на официальном сайте Openfire: Plugins