
Настройка уведомлений в Telegram из Bareos

Настройка уведомлений в Telegram из системы резервного копирования Bareos
Шаг 1. Создание бота в Telgram
Добавляем бота под названием BotFather и отправляем ему команду /newbot
, выбираем имя, которое будет отображаться в списке контактов и адрес. Например, «My Alert Checker» с адресом «MyPrivateBot».
Если адрес не занят, а имя введено правильно, BotFather пришлет в ответ сообщение с токеном — «ключом» для доступа к созданному боту. Его нужно сохранить и никому не показывать.
Шаг 2. Создание канала
Создаём канал с любым названием и адресом, и переходим в его настройки.
Необходимо добавить в список администраторов созданного нами бота — именно он будет публиковать уведомления в канал.


Шаг 3. Идентификация чата
Отправим в чат любое сообщение, чтобы отследить ID-канала для отправки уведомлений.
После того, как отправили сообщение, выполним curl-запрос, подставив ранее полученный токен для бота.
1 | curl --silent "https://api.telegram.org/bot${TOKEN}/getUpdates" |
1 | # curl --silent "https://api.telegram.org/bot521924663:AAH7t61mNpKLOToyIsPm3vFOJ3GNaD9-LSI/getUpdates" |
Получаем ID канала - -1001348922431
.
Шаг 4. Настройка Bareos для отправки уведомлений в Telegram
Создаем новый конфигурационный файл:
1 | nano /etc/bareos/bareos-dir.d/messages/Telegram.conf |
Со следующим содержимым:
1 | Messages { |
ID_CHAT_HERE
- ID канала или пользователя, кто будет получать уведомления.API_TELEGRAM_KEY
- API ключ для бота Telegram
В эскизе (Jobdefs), не забываем изменить способ получения уведомлений на Telegram.
1 | Messages = Telegram |
Если у вас очень много хостов, то можно настроить уведомления только об ошибках, например таким образом:
1 | Mail On Error = root@localhost = all, !skipped, !saved, !audit |