Настройка jabber оповещений в Zabbix

Для настройки jabber оповещений в Zabbix необходимо в веб-интерфейсе открыть «Администрирование» — «Способы оповещений«, создать способ оповещения jabber (либо выбрать существующий).

В способе оповещения указать следующие параметры:
Описание: любое
Тип: Jabber
Идентификатор Jabber: идентификатор (логин)
Пароль: пароль Jabber
Поставить галочку «Активно» и нажать «Сохранить«.

Теперь когда способ оповещения создан, откроем «Администрирование» — «Пользователи«, выберем пользователя, перейдем на вкладку «Оповещения» и добавим:
Тип: Jabber
Отправлять на: логин Jabber
Когда активно: Здесь можно ограничить время приема сообщений, например в рабочие дни 1-5,09:00-18:00
Использовать если важность: Важность триггеров для которых получать сообщения
Состояние: Активировано
Жмем «Добавить» и «Сохранить«.

Сервер Jabber обязательно должен быть настроен на этой же машине что и Zabbix сервер, иначе чтобы настроить отправку через внешний Jabber сервер необходимо писать скрипт и добавить его в «Способы оповещений».

Смотрите также:
Установка и настройка EJabberd в Ubuntu

Установка и настройка EJabberd в Ubuntu

Сначала рекомендую обновить систему:

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