Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| ejabberd:3 [2019/03/15 03:26] – [Установка в Windows] Luciferus | ejabberd:3 [2025/07/04 02:58] (текущий) – внешнее изменение 127.0.0.1 | ||
|---|---|---|---|
| Строка 8: | Строка 8: | ||
| * [[ejabberd: | * [[ejabberd: | ||
| * [[ejabberd: | * [[ejabberd: | ||
| - | * Установка из исходного кода - рекомендуется для опытных пользователей | + | |
| - | * Установка с определенными пакетами для операционной системы - рекомендуется для системных администраторов | + | |
| - | * Операции после установки - например, | + | |
| ===== Быстрый старт ===== | ===== Быстрый старт ===== | ||
| Строка 20: | Строка 20: | ||
| ===== Установка в Windows ===== | ===== Установка в Windows ===== | ||
| {{ : | {{ : | ||
| + | |||
| * Перейдите на [[https:// | * Перейдите на [[https:// | ||
| * Загрузите «**64**-битный установщик **Windows**». | * Загрузите «**64**-битный установщик **Windows**». | ||
| Строка 34: | Строка 35: | ||
| * в ответ на запрос брандмауэра **Windows** вы можете оба раза нажать «**Отмена**», | * в ответ на запрос брандмауэра **Windows** вы можете оба раза нажать «**Отмена**», | ||
| После успешной установки вы должны увидеть на рабочем столе два новых ярлыка: | После успешной установки вы должны увидеть на рабочем столе два новых ярлыка: | ||
| + | |||
| После запуска **ejabberd** в браузере по умолчанию должен открыться экран приветствия. Вы можете перейти на веб-панель мониторинга по адресу **[[http:// | После запуска **ejabberd** в браузере по умолчанию должен открыться экран приветствия. Вы можете перейти на веб-панель мониторинга по адресу **[[http:// | ||
| - | Если во время установки что-то пойдет не так, и вы захотите начать с нуля, вы найдете файл **ejabberd uninstall.exe** в каталоге, | + | |
| + | Если во время установки что-то пойдет не так, и вы захотите начать с нуля, вы найдете файл **ejabberd uninstall.exe** в каталоге, | ||
| + | |||
| + | ===== Установка в Linux ===== | ||
| + | {{ : | ||
| + | |||
| + | * Перейдите на [[https:// | ||
| + | * Загрузите «Linux x86_64-bit Intel Installer». | ||
| + | * Щелкните правой кнопкой мыши на загруженном файле и выберите «Свойства». Нажмите на вкладку «Разрешения» и установите флажок «Разрешить выполнение файла как программы». | ||
| + | * Теперь вы можете дважды кликнуть файл, чтобы запустить программу установки. Вы также можете сделать установщик исполняемым файлом в терминале | ||
| + | < | ||
| + | chmod a+x ejabberd-YY.MM-linux-x86_64-installer.run | ||
| + | </ | ||
| + | и запустить его с помощью командной строки: | ||
| + | < | ||
| + | ./ | ||
| + | </ | ||
| + | * Выберите язык установки, | ||
| + | * принятие лицензионного соглашения, | ||
| + | * выбор каталога для установки, | ||
| + | * определение домена **XMPP**: по умолчанию для него задано имя вашего компьютера в локальной сети. если не уверены, | ||
| + | * установка имени пользователя администратора, | ||
| + | * установка пароля администратора, | ||
| + | * выберите, | ||
| + | * начать установку, | ||
| + | |||
| + | После успешной установки запустите **ejabberd** с помощью терминала. В командной строке перейдите в рабочую директорию ejabberd и выполните <wrap hi> | ||
| + | |||
| + | Теперь вы можете перейти на веб-панель мониторинга по адресу **[[http:// | ||
| + | |||
| + | Если во время установки что-то пойдет не так, и вы захотите начать с нуля, вы найдете скрипт деинсталляции **ejabberd** в каталоге, | ||
| + | |||
| + | ===== Установка в macOS ===== | ||
| + | {{ : | ||
| + | |||
| + | ==== Использование бинарного установщика ==== | ||
| + | |||
| + | Прежде чем начать установку **ejabberd**, | ||
| + | |||
| + | * Перейдите на [[https:// | ||
| + | * Загрузите «**Установщик Mac OS X Intel**». Если ваша система старше, | ||
| + | * Дважды кликните файл **ejabberd-YY.MM-osx-installer.app.zip**, | ||
| + | * Дважды кликните файл **ejabberd-YY.MM-osx-installer.app**, | ||
| + | * Подтвердите диалог безопасности, | ||
| + | * Если вы видите диалоговое окно с заголовком «**Приложение не оптимизировано для вашего Mac**», вы можете безопасно его проигнорировать - оно относится только к установщику, | ||
| + | * Выберите язык установки, | ||
| + | * принятие лицензионного соглашения, | ||
| + | * выбор каталога установки, | ||
| + | * определение домена **XMPP**: по умолчанию для него задано имя вашего компьютера в локальной сети. если не уверены, | ||
| + | * установка имени пользователя администратора, | ||
| + | * установка пароля администратора, | ||
| + | * выберите, | ||
| + | * начать установку, | ||
| + | |||
| + | По завершении сценария установки он пытается запустить **ejabberd**. Может появиться приглашение с просьбой разрешить входящие соединения для **beam.smp**. Если вы не разрешите, | ||
| + | |||
| + | Если во время установки что-то пойдет не так, и вы захотите начать с нуля, вы найдете файл **ejabberd uninstall.app** в каталоге, | ||
| + | |||
| + | Бинарные установщики **ejabberd** до версии 19.02 не имели подписи **Apple Developer**. Если **macOS** жалуется, | ||
| + | < | ||
| + | sudo spctl --master-disable | ||
| + | </ | ||
| + | Установить **ejabberd** и снова включить его | ||
| + | < | ||
| + | sudo spctl --master-enable | ||
| + | </ | ||
| + | |||
| + | ==== Использование Homebrew ==== | ||
| + | |||
| + | **Homebrew** - менеджер пакетов для **macOS**, целью которого является портирование многих программ **Unix** и **Linux**, которые нелегко доступны или несовместимы. Установка **Homebrew** проста и инструкция доступна на его сайте. | ||
| + | |||
| + | * После того, как вы установили **Homebrew**, | ||
| + | * Каталог установки должен быть указан в конце этого процесса, | ||
| + | |||
| + | Запустите ваш **ejabberd**, | ||
| + | |||
| + | Создайте учетную запись администратора, | ||
| + | |||
| + | Теперь вы можете перейти на веб-панель мониторинга по адресу **[[http:// | ||
| + | |||
| + | ===== Установка из исходного кода ===== | ||
| + | {{ : | ||
| + | |||
| + | Канонической формой распространения стабильных выпусков **ejabberd** является пакет исходного кода. Компилировать **ejabberd** из исходного кода довольно просто в ***nix** системах, | ||
| + | |||
| + | ==== Технические требования ==== | ||
| + | |||
| + | Чтобы скомпилировать **ejabberd** в «**Unix-like**» операционной системе, | ||
| + | |||
| + | * **GNU Make** | ||
| + | * **GCC** | ||
| + | * **Libexpat 1.95** или выше | ||
| + | * **Libyaml 0.1.4** или выше | ||
| + | * **Erlang/ | ||
| + | * **OpenSSL 1.0.0** или выше, для шифрования STARTTLS, SASL и SSL. | ||
| + | * **Zlib 1.2.3** или выше, для поддержки потокового сжатия (XEP-0138). Необязательный. | ||
| + | * Библиотека **PAM**. Необязательно. Для сменных модулей аутентификации (**PAM**). Смотрите раздел **PAM**. | ||
| + | * **ImageMagick** Convert. Необязательно. Для генерации капчи. Смотрите раздел **CAPTCHA**. | ||
| + | |||
| + | ==== Загрузка ==== | ||
| + | |||
| + | Вышедшие версии **ejabberd** доступны на [[https:// | ||
| + | |||
| + | Кроме того, последний исходный код разработки может быть получен из репозитория **Git** с помощью команд: | ||
| + | < | ||
| + | git clone git:// | ||
| + | cd ejabberd | ||
| + | ./ | ||
| + | </ | ||
| + | |||
| + | ==== Компиляция ==== | ||
| + | |||
| + | Для компиляции **ejabberd** выполните команды: | ||
| + | < | ||
| + | ./configure --enable-user=ejabberd --enable-mysql | ||
| + | </ | ||
| + | |||
| + | Это говорит конфигуратору, | ||
| + | <WRAP center cube info 100%> | ||
| + | Для компиляции **ejabberd** вам потребуется доступ в Интернет, | ||
| + | </ | ||
| + | Сценарий конфигурации сборки допускает несколько вариантов. Чтобы получить полный список, | ||
| + | < | ||
| + | ./configure --help | ||
| + | </ | ||
| + | |||
| + | ==== Опции ==== | ||
| + | |||
| + | Некоторые доступные опции, которые могут вас заинтересовать в модификации: | ||
| + | |||
| + | * -–Bindir = /: указать путь к исполняемым файлам пользователя (где доступны **epmd** и **iex**). | ||
| + | * -–Prefix = /: Укажите префикс пути, куда будут копироваться файлы при запуске команды **make install**. | ||
| + | * -–Enable-user [= USER]: разрешить этому обычному системному пользователю выполнять сценарий **ejabberdctl** (смотрите раздел ejabberdctl), | ||
| + | * -–Enable-pam: | ||
| + | * -–Enable-tools: | ||
| + | * -–Enable-mysql: | ||
| + | * -–Enable-pgsql: | ||
| + | * -–Enable-sqlite: | ||
| + | * –-Enable-riak: | ||
| + | * -–Enable-redis: | ||
| + | * -–Enable-zlib: | ||
| + | * -–Enable-lager: | ||
| + | * –-Enable-debug: | ||
| + | * –-Enable-elixir: | ||
| + | * –-Enable-all: | ||
| + | * --enable-latest-deps: | ||
| + | |||
| + | Вот другие доступные варианты, | ||
| + | |||
| + | * –-Enable-hipe: | ||
| + | |||
| + | ==== Установка ==== | ||
| + | |||
| + | Чтобы установить **ejabberd** в каталогах назначения, | ||
| + | Обратите внимание, | ||
| + | |||
| + | По умолчанию создаются файлы и каталоги: | ||
| + | * / | ||
| + | * ejabberd.yml: | ||
| + | * ejabberdctl.cfg: | ||
| + | * inetrc: сетевой файл конфигурации **DNS** для **Erlang** | ||
| + | |||
| + | * / | ||
| + | * ebin/: двоичные файлы **Erlang** (***.beam**) | ||
| + | * include/: файлы заголовков **Erlang** (***.hrl**) | ||
| + | * priv/: дополнительные файлы требуются во время выполнения | ||
| + | * bin/: исполняемые файлы | ||
| + | * lib/: бинарные системные библиотеки (***.so**) | ||
| + | * msgs/: файлы перевода (***.msgs**) | ||
| + | |||
| + | * / | ||
| + | |||
| + | * / | ||
| + | |||
| + | * / | ||
| + | * .erlang.cookie: | ||
| + | * acl.DCD, ...: файлы буфера базы данных **Mnesia** (*.DCD, *.DCL, *.DAT) | ||
| + | |||
| + | * / | ||
| + | * ejabberd.log: | ||
| + | * erlang.log: системный журнал **Erlang**/ | ||
| + | |||
| + | ==== Особые заметки ==== | ||
| + | === BSD === | ||
| + | Команда для компиляции ejabberd в системах **BSD** - это <wrap hi> | ||
| + | |||
| + | === Macos === | ||
| + | При компиляции из исходников в **macOS** вы должны настроить **ejabberd** на использование пользовательских **OpenSSL**, | ||
| + | < | ||
| + | brew install git erlang elixir openssl expat libyaml libiconv libgd sqlite rebar rebar3 automake autoconf | ||
| + | export LDFLAGS=" | ||
| + | export CFLAGS=" | ||
| + | export CPPFLAGS=" | ||
| + | ./configure --enable-sqlite | ||
| + | make | ||
| + | </ | ||
| + | |||
| + | ===== Установка с определенными пакетами для операционной системы ===== | ||
| + | |||
| + | Некоторые операционные системы предоставляют специальный пакет **ejabberd**, | ||
| + | |||
| + | Теперь **[[https:// | ||
| + | |||
| + | ===== Запуск ejabberd ===== | ||
| + | |||
| + | **ejabberd** может быть запущен вручную в любое время или автоматически операционной системой во время загрузки системы.\\ | ||
| + | Чтобы запустить и остановить **ejabberd** вручную, | ||
| + | Вы также можете использовать сценарий администрирования командной строки **ejabberdctl** для запуска и остановки **ejabberd**. Если вы указали опцию конфигурации --enable-user=USER (смотрите раздел Компиляция), | ||
| + | |||
| + | Примеры использования: | ||
| + | < | ||
| + | prompt> ejabberdctl start | ||
| + | </ | ||
| + | < | ||
| + | prompt> ejabberdctl status | ||
| + | The node ejabberd@localhost is started with status: started | ||
| + | ejabberd is running in that node | ||
| + | </ | ||
| + | < | ||
| + | prompt> ejabberdctl stop | ||
| + | </ | ||
| + | |||
| + | Если **ejabberd** не запускается правильно и генерируется файл аварийного дампа, значит возникла серьезная проблема. Вы можете попробовать запустить **ejabberd** с помощью скрипта **bin/ | ||
| + | |||
| + | Сценарий администрирования **ejabberdctl** включен в каталог **bin**. Пожалуйста, | ||
| + | |||
| + | ==== Автостарт в Linux ==== | ||
| + | |||
| + | В системе ***nix** создайте системного пользователя с именем **' | ||
| + | |||
| + | Когда запускается **ejabberd**, | ||
| + | |||
| + | ==== Автостарт в Windows ==== | ||
| + | |||
| + | Установщик **Windows** также добавляет **ejabberd** в качестве системной службы и ярлык консоли отладки для опытных администраторов. Если вы хотите, | ||
| + | |||
| + | В **Microsoft Windows** процессы **Erlang** для **ejabberd** называются **erl.exe** и **epmd.exe**. | ||
| + | |||
| + | ===== Операции после установки ===== | ||
| + | |||
| + | ==== Аккаунт администратора ==== | ||
| + | |||
| + | Бинарный установщик **ejabberd** запрашивает учетную запись администратора, | ||
| + | Вот шаги для его создания: | ||
| + | |||
| + | * Зарегистрируйте учетную запись **XMPP** на своем сервере **ejabberd**, | ||
| + | Существует два способа регистрации учетной записи **XMPP**: | ||
| + | * Используя **ejabberdctl** (смотрите раздел ejabberdctl): | ||
| + | < | ||
| + | ejabberdctl register admin1 example.org password | ||
| + | </ | ||
| + | * Используя XMPP-клиент и In-Band регистрацию (смотрите раздел mod_register). | ||
| + | * Отредактируйте файл конфигурации ejabberd, чтобы предоставить права администратора созданной вами учетной записи XMPP: | ||
| + | < | ||
| + | acl: | ||
| + | admin: | ||
| + | user: | ||
| + | - " | ||
| + | access: | ||
| + | configure: | ||
| + | admin: allow | ||
| + | </ | ||
| + | Вы можете предоставить административные привилегии многим учетным записям **XMPP**, а также учетным записям с других серверов **XMPP**. | ||
| + | * Перезапустите ejabberd, чтобы загрузить новую конфигурацию. | ||
| + | * Откройте веб-админку (обычно это [[http:// | ||
| + | |||
| + | ==== Backend баз данных ==== | ||
| + | |||
| + | По умолчанию **ejabberd** использует собственную базу данных для хранения данных времени выполнения **Mnesia**. Во многих случаях вам может понадобиться разрешить **ejabberd** использовать внешнюю базу данных **SQL**. Поддерживаемые **SQL**-серверы: | ||
| + | |||
| + | При использовании внешней базы данных **ejabberd** не создает схемы и таблицы самостоятельно. Вы должны создать схему перед запуском ejabberd. Если вы устанавливаете **ejabberd** из исходников, | ||
| + | |||
| + | Смотрите схемы базы данных SQL **ejabberd** для получения подробной информации о схемах базы данных. Смотрите пошаговые руководства по настройке баз данных для получения подробных инструкций по их настройке. | ||