Сначала рекомендую обновить систему:
sudo apt-get update sudo apt-get upgrade
Теперь выполним команду установки:
sudo apt-get install ejabberd
Откроем файл конфигурации:
sudo nano /etc/ejabberd/ejabberd.yml
Добавим узел на котором будет работать EJabberd, например имя домена или IP адрес сервера:
hosts: - "localhost" - "192.168.20.50"
Укажем что пользователь admin является администратором на узле 192.168.20.50:
admin: user: - "": "localhost" user: - "admin": "192.168.20.50"
Укажем русский язык:
language: "ru"
На этом редактирование файла конфигурации завершаем, если использовался редактор nano, то нажмем «CTRL+X» потом «y» и «Enter» для выхода и сохранения изменений.
Теперь создадим пользователя для локального и внешнего узлов:
sudo ejabberdctl register admin localhost PASSWORD sudo ejabberdctl register admin 192.168.20.50 PASSWORD
Перезапустим EJabberd:
sudo service ejabberd restart sudo /etc/init.d/ejabberd restart
В дальнейшем можно добавлять пользователей через Web интерфейс.
Откроем Web интерфейс Jabber сервера набрав в браузере https://192.168.20.50:5280/admin/ и введя имя/пароль ранее добавленного администратора.
Откроем вкладку «Виртуальные хосты», выберем наш сервер, далее выберем вкладку «Группы общих контактов», введем имя группы и нажмем «Добавить».
Теперь нажмем на нее и заполним поля: Название и Видимые группы: (имя группы которое ввели ранее), Члены: @all@
EJabberd использует порт 5222(tcp) для подключений клиентов, порт 5269(tcp) для межсерверных подключений, порт 5280(tcp) для http панели администратора.
Если используется iptables, то приведу пример правил для разрешения доступа конкретному IP:
iptables -A INPUT -s 192.168.5.50/32 -p tcp -m tcp --dport 5222 -j ACCEPT iptables -A INPUT -s 192.168.5.50/32 -p tcp -m tcp --dport 5269 -j ACCEPT iptables -A INPUT -s 192.168.5.50/32 -p tcp -m tcp --dport 5280 -j ACCEPT
Все, для подключения к серверу можно использовать любой месседжер поддерживающий XMPP, например Pidgin.
Пример команд просмотра различной информации:
sudo ejabberdctl connected_users sudo ejabberdctl connected_users_info sudo ejabberdctl connected_users_number sudo ejabberdctl registered_users HOST
Изменение пароля пользователя командой:
sudo ejabberdctl change_password
Удаление пользователя:
sudo ejabberdctl unregister
На этом все.
ИНСТРУКЦИЯ НАСТРОЙКИ ДЛЯ СТАРЫХ ВЕРСИЙ UBUNTU.
Откроем конфигурационный файл в текстовом редакторе nano (Ctrl+X для выхода, Ctrl+O для записи изменений):
sudo nano /etc/ejabberd/ejabberd.cfg
В котором раскомментируем строку:
override_local
Укажем имя администратора и DNS имя или IP-адрес сервера:
%% Admin user {acl, admin, {user, «АДМИН», «192.168.0.1»}}
Укажем DNS имя или IP-адрес сервера:
%% Hostname {hosts, [«192.168.0.1»]}
Чтобы разрешить пользователям самостоятельно регистрироваться на сервере изменим deny на allow в строке:
{access, register, [{deny, all}]}
Укажем язык по умолчанию:
{language, «ru»}
Чтобы пользователи видели друг друга без добавления в контакты раскомментируем строку:
{mod_shared_roster, []}
Изменим приветственное сообщение:
{welkome_message,
Смотрите также:
Решение ошибки /usr/sbin/ejabberdctl: line 428: 14615 Segmentation fault
Здравствуйте.
На этапе создания второго админа (для внешнего узла), появляется ошибка:
Error: cannot_register
Да и после (как и до) перезагрузки ejabberd, вебморда не доступна.
Установку выполняю на чистом сервере (Ubuntu 18.04)
Строго придерживаясь вашего мануала и пунктуации.
Не могу понять где моя ошибка, и в чём проблема.