Jabber-сервер
Установка Jabber-сервера на Centos 7. Установка ejabberd.
Al-Sher
Всем привет! Сегодня я хочу рассказать про установку Jabber-сервера, а именно ejabberd. Устанавливать будем на Centos 7.
Перед установкой
Перед установкой нам необходимо установить необходимые библиотеки, gcc и компилятор erlang'a. Установим их. Начнем необходимых библиотек и gcc:
yum groupinstall "Development Tools"
yum install ncurses-devel
А далее скачаем erlang:
wget http://erlang.org/download/otp_src_20.0.tar.gz
Распакуем:
tar -xvf otp_src_20.0.tar.gz
Зайдем в папку:
cd ./otp_src_20.0
И собираем, указав необходимые директории:
./configure --prefix=/usr --sysconfdir=/etc
make
make install
Использование других версий может привести к ошибкам!
Установка
Для начала скачаем ejabberd:
https://www.process-one.net/downloads/downloads-action.php?file=/ejabberd/17.09/ejabberd-17.09-linux-x86_64-installer.run
Даем права на выполнение файла:
chmod +x ejabberd-17.09-linux-x86_64-installer.run
И запускаем:
./ejabberd-17.09-linux-x86_64-installer.run
Во время установки вас попросят принять соглашение, а так же ответить на пару вопросов. Запускаем:
./jabber/bin/start
Предполагается, что установка выполнена в ./jabber
Порты
Не забываем открыть необходимые порты для Jabber сервера:
firewall-cmd --add-port=5222/tcp --zone=public --permanent
firewall-cmd --add-port=5269/tcp --zone=public --permanent
firewall-cmd --add-port=5280/tcp --zone=public --permanent
firewall-cmd --reload
Настройка
Если у Вас получилось зайти на jabber сервер, то всё отлично. Давайте походим немного по конфигу и разрешим регистрацию пользователей. Давайте зайдем в файл конфигурации:
nano conf/ejabberd.yml
И ищем конфигурацию для mod_register. Там есть строка
ip_access: trusted_network
Которая позволяет регистрацию пользователей внутри локальной сети. Давайте исправим это. Изменим данный параметр на
ip_access: all
Там же можно изменить сообщение приветствия, добавить новых администраторов и много чего еще... Вся конфигурация хранится в формате yml, будьте осторожны при редактировании. Надеюсь, что у вас всё получилось и всё работает. На этом хочу закончить данную небольшую статью(инструкцию). Спасибо за ваше внимание.
Al-Sher
Вадим, Для добавления Ejabberd в автозагрузку, достаточно создать юнит-файл по пути /lib/systemd/system/ejabberd.service с следующим содержанием: [Unit] Description=Ejabberd Script Service After=multi-user.target [Service] Type=idle ExecStart=path_to_ejabberd/bin/start [Install] WantedBy=multi-user.target Дать права на данный файл: chmod 644 /lib/systemd/system/ejabberd.service И добавить его в автозагрузку: systemctl enable ejabberd.serviceВадим
Спасибо! Отличная статья. Уже неделю бьюсь с поисковиками с вопросом: как добавить Ejabberd в автозагрузку. Не подскажете?