Введение
Поддержание системы в актуальном состоянии — ключ к безопасности и стабильности. Ручное обновление отнимает время, а забывчивость может привести к уязвимостям.
В этой статье расскажу, как настроить автоматическое обновление пакетов и получать уведомления о результатах в Telegram.
1. Создание Telegram-бота и получение chat_id
- Найдите в Telegram бота @BotFather и создайте своего бота, получите токен.
- Узнайте ваш chat_id через @userinfobot.
2. Установка необходимых пакетов
sudo apt update
sudo apt install -y unattended-upgrades curl
3. Настройка автоматического обновления
Включите автоматические обновления:
sudo dpkg-reconfigure --priority=low unattended-upgrades
Это активирует автообновления безопасности.
4. Скрипт для уведомлений в Telegram
Создайте скрипт /usr/local/bin/update_notify.sh:
#!/bin/bash
TOKEN="your_bot_token"
CHAT_ID="your_chat_id"
LOGFILE="/var/log/unattended-upgrades/unattended-upgrades.log"
# Отправляем последние 20 строк лога в Telegram
tail -n 20 $LOGFILE | curl -s -X POST https://api.telegram.org/bot $TOKEN/sendMessage \
-d chat_id=$CHAT_ID \
-d text="$(cat)" \
-d parse_mode=Markdown
Сделайте скрипт исполняемым:
chmod +x /usr/local/bin/update_notify.sh
5. Настройка cron для отправки уведомлений
Добавьте в cron задачу, например, каждый день в 8 утра:
crontab -e
Вставьте:
0 8 * * * /usr/local/bin/update_notify.sh
6. Проверка работы
- Подождите, пока сработает cron, или запустите скрипт вручную: /usr/local/bin/update_notify.sh
- Убедитесь, что сообщение с логами обновлений пришло в Telegram.
Заключение
Автоматическое обновление с уведомлениями — простой способ поддерживать сервер в безопасности и всегда быть в курсе.