Слайд 1Мониторинг серверов при помощи бота для мессенджера telegram
Выполнила: Верховодко
А.И
Научный руководитель: Дирвук Е.В.
Слайд 2Цель курсового проекта:
Разработать бота для мессенджера Telegram для мониторинга серверов.
Слайд 3Основные задачи:
Провести обзор существующих для Telegram ботов.
Организовать сеть из нескольких
серверов, которые необходимо мониторить.
Реализовать бота для Telegram.
Протестировать бота на организованной
сети.
Слайд 4Telegram и существующие боты
Telegram – бесплатный мессенджер, предназначенный для общения
и обмена медиафайлами.
При помощи специального Telegram API сторонние разработчики могут
создавать ботов.
Робот, или бот - специальная программа, выполняющая автоматически или по заданному расписанию какие-либо действия, что и обычный пользователь.
Слайд 8Мониторинг серверов
Термином мониторинг серверов описывают использование системы, которая следит (мониторит)
за компьютерной сетью, выявляя неисправность или уменьшение быстродействия сервисов.
Слайд 9Системы для мониторинга сети
Monit
Munin
Nagios
OpenNMS
Zabbix
Слайд 10Разработка бота
Последовательность действий:
Зарегистрировать бота через @BotFather
Получить его уникальный id (token)
Реализовать
программу управления созданным ботом
Настроить SSH соединение между серверами
Для успешного запуска
на сервере, где расположена программа, должен быть установлен Python и его библиотека Fabric
Слайд 11Разработанные классы:
TelegramBot – каркас приложения
TelegramApi – обработка команд и ответов
через Telegram Bot API
ServerModule – выполнение нужных команд на серверах
Список
имеющихся серверов:
Слайд 12Обновление, полученное после отправки сообщения “help”
Слайд 13Вывод сообщения пользователя и ответа бота в терминале
Через интерфейс Telegram
Слайд 15Использование SSH для мониторинга
Установить на каждом сервере OpenSSH
На каждом из
серверов создать пользователя inspector с домашним каталогом и паролем пользователя
На
главном сервере сгенерировать пару private/public rsa keys
С помощью ssh-copy-id отправить публичные ключи пользователю inspector на каждом сервере
Проверить подключение по SSH через сгенерированные ключи.
Усилить защиту SSH-серверов: установить нестандартный порт, указать конкретный интерфейс, ограничить время авторизации.