Ситуация
Telegram-бот (кейс «Telegram-бот») работал на VPS, запущенный вручную в терминальном сеансе, без автозапуска. После перезагрузки сервера не осталось ни сеанса, ни процесса, и бот молчал больше суток: поднимать его было некому, а заметили это только по тому, что агент не отвечает. Часть инструментов (панели, админки) при этом не стоит открывать в интернет, но работать с ними нужно из разных мест.
Задача
Сделать так, чтобы сервисы поднимались сами после сбоя и перезагрузки, а внутренние инструменты были доступны только участникам рабочей группы.
Решение
- Базовая защита: вход по ключам вместо паролей, межсетевой экран (ufw) с минимумом открытых портов, защита от подбора паролей (fail2ban).
- Автозапуск: бот описан systemd-юнитом, который поднимает его после любой перезагрузки или возобновления хоста, независимо от причины, и перезапускает процесс при падении.
- Окружение: сервисы под systemd получают урезанный набор путей, поэтому пути к используемым утилитам заданы в юните явно; параметры лимита перезапусков перенесены в раздел, который поддерживает версия systemd на сервере.
- Проверка: после установки бот сам поднялся и забрал сообщения, накопившиеся за время простоя; падение процесса проверено вживую, а не по документации.
- Самоперезапуск: второй инцидент показал ловушку. Агент перезапустил собственный сервис из своей же сессии, сервис остался остановленным без ошибки, и штатное оповещение не сработало. Добавлено правило: сервис не перезапускается изнутри себя, изменения применяет оператор снаружи.
- Закрытая сеть: для рабочей группы поднята приватная шифрованная сеть; внутренние инструменты доступны только с устройств участников, клиенты настроены на компьютере и телефоне.
- Диагностика: при сбоях доступа есть отработанный порядок проверки на стороне сервера, а не поиск наугад.
Результат
- Бот и другие сервисы поднимаются сами после сбоя, перезагрузки и возобновления хоста, без ночных перезапусков руками.
- Перезагрузка сервера перестала означать молчащего бота.
- Ловушки вроде самоперезапуска записаны правилом, а не остались в памяти одного человека.
- Внутренние инструменты доступны только участникам группы, а не всем в интернете.
Связанные кейсы
Похожая задача? Начните с бесплатного ИИ-аудита: несколько вопросов о вашем бизнесе, и вы получите страницу с разбором.