Сначала рекомендую обновить систему:
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