Меню Рубрики

Установка и настройка openfire centos

Установка и настройка Openfire на CentOS

Openfire — сервер на базе XMPP, позволяющий обмениваться мгновенными сообщениями. В данной инструкции разберем его установку на Linux. Инструкция протестирована на CentOS 7.

Подготовка сервера

1. Системные требования

Требования к программному продукту, в основном, программные:

Компонент Требования
Операционная система Приложение является кроссплатформенным и его можно установить на различные операционные системы — Windows, Linux (CentOS, Ubuntu, Debian, Red Hat и так далее), FreeBSD, MacOS.
Программная платформа Openfire разработан на базе JAVA, поэтому необходимо наличие соответствующей платформы.
СУБД Поддерживаются MySQL/MariaDB, PostgreSQL, MS SQL Server, Oracle Database, IBM DB2, Adaptive Server Enterprise, HSQLDB (встраиваемая).
Аппаратная часть Не критична — openfire не требует много ресурсов для своей работы.

2. Вспомогательные пакеты

Установим пакет, который необходимы для загрузки файлов:

3. Безопасность

Настраиваем брандмауэр — разрешаем порты 5222, 9090 и 9091, на которых по умолчанию работает Openfire:

firewall-cmd —permanent —add-port=5222/tcp —add-port=<9090,9091>/

* где порт 5222 — подключение клиента к серверу; 9090 для соединения по HTTP, 9091 — HTTPS.

Отключаем SELinux командами:

sed -i ‘s/^SELINUX=.*/SELINUX=disabled/g’ /etc/selinux/config

Установка JAVA

Openfire написан на языке JAVA и для своей работы требует установки соответствующей платформы.

Переходим на страницу загрузки Java JDK — принимаем лицензионное соглашение:

После появятся ссылки на платформу — кликаем по ссылке для скачивания RPM пакета:

Нас перебросит на страницу аутентификации — необходимо ввести свои логин и пароль или зарегистрироваться. После авторизации начнется процесс загрузки пакета. Когда он завершится, перекидываем файл на сервер CentOS, например, при помощи WinSCP.

Если у нас нет аккаунта на портале Oracle и нет возможности его зарегистрировать, то можно скачать не самую последнюю версию jdk следующей командой:
curl -LO -H «Cookie: oraclelicense=accept-securebackup-cookie» «https://download.oracle.com/otn-pub/java/jdk/13.0.1+9/cec27d702aa74d5a8630c65ae61e4305/jdk-13.0.1_linux-x64_bin.rpm»

После устанавливаем скачанный пакет командой:

После окончания установки можно ввести команду:

Она должна вернуть, примерно, следующее:

openjdk version «1.8.0_212»
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)

Открываем файл для создания общесистемных переменных:

Проверяем, что переменная создалась:

Загрузка и установка пакета для Openfire

Для установки XMPP-сервера необходимо загрузить RPM — для этого переходим на официальную страницу загрузки Openfire. В открывшемся окне выбираем загрузку приложения для Linux и переходим по ссылке для загрузки rmp:

* в данном примере мы копируем ссылку на RPM версии х64

На открывшейся странице копируем прямую ссылку на загрузку openfire:

Воспользовавшись ссылкой, загружаем установочный пакет:

wget -O openfire.x86_64.rpm https://www.igniterealtime.org/downloadServlet?filename=openfire/openfire-4.4.4-1.x86_64.rpm

* в данном примере мы сохраним скачанный файл под именем openfire.x86_64.rpm. На момент написания инструкции последняя версия была 4.4.4.

Устанавливаем скачанный пакет:

yum install openfire.x86_64.rpm

Разрешаем автозапуск сервиса и стартуем его:

systemctl enable openfire

Настройка базы данных

В качестве СУБД установим и настроим MariaDB.

Установка и запуск

Для установки вводим команду:

yum install mariadb-server mysql-connector-java libldb

* данной командой мы установим сервер mariadb и библиотеки для связки с java.

Зададим пароль для mysql root-пользователя:

mysqladmin -u root password

* система дважды запросит пароль, который мы должны задать.

Создание и настройка базы для Openfire

Подключаемся к установленной базе:

* в качестве пароля вводим тот, что задали при установке.

* мы создадим базу с именем openfire.

Создаем пользователя и дадим ему права на созданную базу:

> GRANT ALL PRIVILEGES ON openfire.* TO openfire@localhost IDENTIFIED BY ‘openfirepass’;

* в данном примере будет создан пользователь openfire, которому можно подключаться с локального компьютера (localhost); доступ пользователю будет предоставлен на базу openfire; пароль пользователя — openfirepass.

Подключимся к созданной базе:

. и загрузим в нее данные из файла openfire_mysql.sql (поставляется с Openfire):

Чтобы убедиться в загрузке данных, выполняем команду:

* мы должны увидеть список таблиц.

Установка Openfire

Выполняем установку и конфигурирование Openfire через веб-интерфейс. Запускаем браузер и переходим по ссылке http:// :9090 — откроется страница установки.

Выбираем русский язык и нажимаем Continue:

В настройках задаем серверу имя домена и полное имя сервера:

. и кликаем по Продолжить.

Оставляем Стандартное подключение к базе данныхПродолжить:

Задаем настройки подключения к базе:

  1. Выбрали подключение к базе MySQL
  2. В строке jdbc:mysql://HOSTNAME:3306/DATABASENAME?rewriteBatchedStatements=true&characterEncoding=UTF-8&characterSetResults=UTF-8 заменили
    • HOSTNAME — сервер MySQL. Задаем локальный адрес 127.0.0.1
    • DATABASENAME — имя базы данных. Прописываем openfire.
    • + добавили &useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC — в противном случае сервер будет выдавать ошибку при попытке подключиться к базе.
    • Итого:jdbc:mysql://127.0.0.1:3306/openfire?rewriteBatchedStatements=true&characterEncoding=UTF-8&characterSetResults=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
  3. В настройках имени пользователя и пароль прописываем логин и пароль пользователя, который создавали для подключения к базе openfire (openfire/openfirepass).

После кликаем по Продолжить. На следующей странице задаем настройки профиля — просто оставляем положение по умолчанию и нажимаем Продолжить:

* если нам необходима интеграция с Active Directory, переключаемся на Сервер каталогов (LDAP) и выполняем настройку по инструкции ниже.

На последнем шаге создаем учетную запись администратора. Для этого вводим адрес почты и пароль:

. и нажимаем Продолжить.

Установка завершена — переходим в консоль, кликнув по Вход в консоль администратора:

Чтобы зайти в openfire используем логин admin и пароль, который задали после установки Openfire.

Установка и подключение клиента

Для примера, установим jabber-клиент Spark, который разработан тем же разработчиком, что и сам Openfire. Переходим на страницу загрузки Spark и скачиваем клиента, например, для Windows:

Дожидаемся загрузки файла и устанавливаем приложение, отвечая на вопросы мастера установки (можно оставить все по умолчанию).

После запускаем программу — кликаем по Дополнительно (1) — снимаем галочку Автоматически найти сервер и порт (2) и прописываем адрес сервера (3) — устанавливаем галочки для Accept all certificates. и Disable certificate hostname verification . (4) — OK (5):

Вводим данные для входа на сервер и нажимаем Войти:

. клиент должен подключиться к серверу.

Интеграция с Active Directory

Интеграция с Active Directory должна настраиваться в момент веб-установки сервера. Если у нас уже установлен Openfire, и мы хотим переключиться на использование LDAP, открываем конфигурационный файл:

systemctl restart openfire

Ждем секунд 10 (приложение перезапускается долго).

Открываем в браузере адрес http:// :9090 — откроется мастер установки. Проходим снова по всем шагам до настройки профилей и выбираем Сервер каталогов (LDAP):

1) Откроется страница настройки профилей LDAP. Заполняем поля:

  • Из списка Тип сервера выбираем Active Directory.
  • В качестве хоста прописываем имя контроллера домена или целиком весь домен.
  • База DN — корневая директория LDAP, откуда будет выполняться поиск объектов.
  • Администратор DN — учетная запись в LDAP с правами на чтение. Правильнее всего создать отдельную запись и использовать ее.

Кликаем по Тестовые настройки — мы должны увидеть отчет об успешном прохождении тестирования:

2) Нажимаем Сохранить и продолжить — откроется страница с настройками полей и атрибутов. Данные атрибуты должны соответствовать атрибутам Active Directory. В моем случае пришлось заменить jpegPhoto на thumbnailPhoto и homePostalAddress на physicalDeliveryOfficeName. Правильные атрибуты можно посмотреть в оснастке Active Directory — пользователи и компьютеры (на вкладке Редактор атрибутов любого пользователя).

Нажимаем Тестовые настройки — откроется окно, в котором можно загрузить информацию от случайных профилей в AD и убедиться, что нужные нам данные загружаются корректно. После нажимаем Сохранить и продолжить.

3) На последнем шаге настройки интеграции с Active Directory оставляем предложенные настройки:

. и нажимаем Тестовые настройки — мы должны увидеть информацию о группах, которую сможет получить Openfire. Кликаем Сохранить и продолжить.

Конфигурирование LDAP завершено. Теперь добавим администраторов системы, которые смогут управлять сервером из панели управления:

Обратите внимание, что доступ к панели управления под встроенным администратором Openfire будет невозможен после смены профилей на использование LDAP. Обязательно добавляем хотя бы одного пользователя, у которого будут привилегии настройки.

Настройка завершена. Пробуем авторизоваться в панели управления под учетной записью администратора, которую мы добавили. После подключаемся клиентом под своей учетной записью в AD.

Аутентификация на основе групп

Если необходимо ограничить пользователей, которые могут подключаться к серверу, можно использовать группы Active Directory. Для этого открываем панель управления Openfire и переходим в раздел СерверНастройки сервера и кликаем по кнопке Изменить:

В открывшемся окне переходим к разделу 2. Отображение пользователей — кликаем по Расширенные настройки и добавляем Пользовательский фильтр:

* например, как на изображении выше, можно добавить фильтр (memberOf=cn=Domain Admins,cn=Users,dc=dmosk,dc=local) — это означает, что к серверу смогут подключиться только те пользователи, которые принадлежат группе Domain Admins.

Установка плагинов

Для установки плагинов в Openfire необходимо сам файл плагина (с расширением .jar) поместить в каталог с установленной программой. Подробнее разберем на примере установки «SIP Phone Plugin».

Переходим на страницу загрузки плагинов и копируем ссылку на его скачивание:

Теперь с помощью данной ссылки загружаем плагин на сервере с Openfire:

Переносим загруженный плагин в каталог с программой:

mv sip.jar /opt/openfire/plugins/

Открываем панель управления Openfire — переходим в Плагины — мы должны увидеть установленный плагин:

Аналоги и клиенты

Среди распространенных аналогов можно назвать:

  • ejabberd — свободный, распределенный и устойчивый к отказам XMPP-сервер. Написан на Erlang.
  • jabberd2 — модульный XMPP-сервер, написанный на C.
  • Prosody — кроссплатформенный XMPP-сервер, написанный на языке программирования Lua.

Другие клиентские приложения, которыми можно подключиться к Openfire:

источник

Установка Openfire на CentOS 6

В этой статье будет описана установка и базовая настройка Openfire на CentOS 6. Openfire — полнофункциональный XMPP-сервер, необычно простой в обращении для ПО с открытым исходным кодом.

Подготовка к установке Openfire

Для начала, устанавливаем сервер MySQL, если он не установлен (в нём будет храниться база данных Openfire).

Запускаем сервер MySQL и включаем запуск при старте системы (на всякий случай, он должен быть включен по умолчанию).

service mysqld start
chkconfig mysqld on

Рекомендуется после установки выполнить скрипт mysql_secure_installation (ответить утвердительно на все вопросы и поставить пароль для пользователя root)

Создаём базу данных для Openfire

mysql -u root -p -e ‘CREATE DATABASE openfire’

Создаём пользователя MySQL с полными правами на БД openfire.

mysql -u root -p -e ‘GRANT ALL PRIVILEGES ON openfire.* to openfire@localhost IDENTIFIED BY «mysql_secret»‘

mysql -u root -p -e ‘FLUSH PRIVILEGES’

На этом этапе можно, также, настроить правила файрвола сервера. Администратору нужен будет доступ к TCP-порту 9090 и/или 9091 (9091 с TLS) для подключения к web-интерфейсу Openfire, XMPP-клиенты будут подключаться к TCP-порту 5222, можно ещё открыть порт 7777 для передачи файлов.

Всё, можно приступать к установке openfire.

Установка и настройка сервера Openfire

Установка RPM-пакета и запуск Openfire

Скачиваем и устанавливаем RPM-пакет Openfire, последнюю версию можно скачать здесь — http://www.igniterealtime.org/downloads/(на момент написания статьи последняя версия — 3.10.3)

wget -O openfire-3.10.3-1.i386.rpm ‘http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire-3.10.3-1.i386.rpm’

yum install ./openfire-3.10.3-1.i386.rpm

В базе данных openfire нужно создать таблицы, для этого нужно выполнить SQL-скрипт /opt/openfire/resources/database/openfire_mysql.sql

mysql -u openfire -p openfire :9090

где адрес_сервера — адрес сервера Openfire.

Выбираем язык и нажимаем «Continue» (лучше оставить английский, т.к. документация доступна только на английском)

На следующей странице нужно указать в поле «Domain» DNS-имя сервера, на котором производится установка Openfire, и нажать «Continue»

Далее выбираем «Standard Database Connection» (выбрано по умолчанию) и жмём «Continue»

Здесь указываем параметры подключения к MySQL и жмём «Continue»

«Database Driver Presets» — выбираем MySQL
«Database URL» — заменяем [host-name] на имя или IP-адрес сервера MySQL, [database-name] — на имя базы данных для Openfire
«Username» и «Password» — имя пользователя и пароль для доступа к MySQL

Оставляем значение «Default» (для хранения учетных записей пользователей в MySQL) и нажимаем «Continue»

Задаём имя пользователя и пароль для администратора (для входа будет использоваться не адрес электронной почты, а имя пользователя из него, в данном случае «admin») и нажимаем «Continue», затем нажимаем «Login to the admin console» и вводим учетные данные администратора для доступа к админке Openfire.

До выполнения последнего шага можно в любой момент вернуться к предыдущим шагам и поменять внесённые значения. Для возврата к первоначальным настройкам после выполнения последнего шага, нужно в файле /opt/openfire/conf/openfire.xml поменять значение тэга «setup» с «true» на «false» и перезапустить Openfire (таким образом можно наиболее безболезненно менять настройки хранилища учетных записей и подключения к базе данных).

Перед использованием сервера, предлагаю обратить внимание на некоторые настройки безопасности, доступные в разделе «Server» -> «Server Settings»:

На странице «Server to Server» можно отключить возможность соединения между серверами, если не планируете пользоваться этой функцией.

На странице «HTTP binding» можно запретить собственно HTTP binding, если не планируете этим пользоваться.

На странице «Registration & Login» нужно отключить возможность самостоятельного создания учетных записей пользователями (если не собираетесь этим пользоваться) и анонимный вход.

На странице «Security Settings» рекомендуется включить обязательное шифрование соединений.

Создание пользователя и подключение клиента Spark

Для создания пользователя, нужно перейти в раздел «Users/Groups» -> «Users» на страницу «Create New User», ввести логин и пароль пользователя (остальные поля необязательны) и нажать «Create User»

Для подключения клиента Spark, нужно ввести имя пользователя, пароль и адрес сервера в соответствующие поля и нажать «Войти» (не обязательно вводить DNS-имя сервера, можно ввести IP-адрес)

Если клиент не подключается, проверьте правильность введённых данных и настройки файрвола сервера Openfire (клиенты подключаются на порт 5222 по TCP).

источник

Читайте также:  Установка газовой плиты в муниципальной квартире

Добавить комментарий