Виртуальные сотрудники без хаоса: роли, права и аудит в OpenClaw
Один общий бот для всех — риск и беспорядок. Как развести HR, поддержку и аналитику с правами и логами.
Читать →Сервер шлёт спам или майнит — признаки компрометации и план восстановления.
Хостинг пишет: с вашего IP идёт спам. Или `top` показывает неизвестный процесс на 200% CPU. Или соседи по сети жалуются на скан портов. Linux-сервер, который вчера просто крутил сайт, сегодня часть чужой инфраструктуры — ботнета, майнера, прокси.
Первый импульс — убить процесс и забыть. Через сутки он возвращается: в cron, в systemd, в скомпрометированном веб шелле, в ключе SSH, который никто не ротировал. Очистка без закрытия входа — театр.
Задача: остановить вред, понять вектор, вычистить устойчиво, вернуть сервис так, чтобы вас снова не включили в чужую сеть.
Резкий рост исходящего трафика, очередь почты, незнакомые пользователи в `/etc/passwd`, странные задания cron, новые ключи в `authorized_keys`, процессы с именами под системные, отключённый мониторинг «сам собой».
Сайт при этом может «открываться». Компрометация часто параллельна бизнесу: майнер живёт рядом с PHP-FPM и тихо ест деньги на CPU.
Чистить только то, что видно в `ps`. Persistence переживает перезагрузг.
Оставить сервер в проде и «лечить по живому» без снимка диска — потеряете улики и можете добить данные.
Переустановить ОС, но накатить старый диск с тем же веб корнем и теми же ключами. Бэкдор возвращается вместе с контентом.
Не менять секреты: пароли БД, токены CI, API-ключи — если их могли прочитать, они чужие.
Изолируйте хост от сети или режьте исходящий трафик, сохранив доступ админам. Остановите вредящую нагрузку, но сохраните образ/снимки для анализа, если это важно для разбора.
Определите вектор: устаревший сервис, утечка SSH-ключа, уязвимое веб приложение, слабый пароль панели. Без вектора чистка — лотерея.
Предпочтительный путь для серьёзной компрометации — новый чистый хост или переустановка, перенос данных из проверенных источников (бэкап до инцидента или вычищенное дерево после диффа с эталоном), ротация всех секретов и ключей.
Минимум после инцидента:
Если сервер слал спам — разберитесь с репутацией IP/домена и с тем, не открыт ли у вас релей.
Патч менеджмент, минимальная поверхность SSH, отделение приложений, бэкапы с проверкой восстановление, алерты на аномалии. Ботнет любит забытые VPS и «временные» серверы, которые стали постоянными.
Закройте вектор входа обновлениями и конфигурацией: лишние сервисы выключены, вход по ключам, ограничение источников администрирования, своевременные патчи.
Включите наблюдение за аномалиями: внезапный CPU, необычные исходящие соединения, рост очереди почты, новые пользователи и ключи. Ботнет любит тишину.
Пересмотрите бэкапы: есть ли точка до компрометации, проверяли ли восстановление. Иногда единственный честный путь — восстановление данных в чистую систему, а не «лечение» заражённого диска.
Проведите короткий разбор: как узнали, сколько длилось, что улучшили в процессе. Без разбора через полгода история повторится на соседнем «забытом» VPS.
Если инцидент может иметь юридические последствия, сохраните снимки и логи до агрессивной зачистки. Разговор с хостером, клиентами или страховкой проще вести на фактах.
Сообщайте бизнесу статус без лишней драмы и без утаивания: сервис изолирован, идёт восстановление, ожидаемое время, что уже проверено. Вакуум заполняется слухами.
Проверьте связанные системы: те же ключи SSH, те же пароли панели, те же токены CI. Компрометация одного хоста часто окно в соседние.
В конце закройте задачу не фразой «почистили», а списком изменений контроля: патчи, ключи, мониторинг, политика обновлений. Иначе через месяц ботнет найдёт вас снова.
Проверьте, не был ли сервер использован для атак на соседей: это влияет на репутацию IP и отношения с хостером. Иногда единственный выход — смена адреса после чистой пересборки.
Обновите инвентарь: какие ещё хосты с теми же ключами и паролями. Параллельная компрометация «тихого» тестовый контур — частый второй очаг.
Введите минимальный baseline для всех Linux-серверов: обновления, вход, агент мониторинга, запрет лишних сервисов. Ботнеты питаются исключениями из baseline.
Не возвращайте тот же набор «временных» исключений, через которые вас взломали: открытый SSH миру, общий пароль, забытый панельный доступ. Очистка без изменения привычек — пауза до следующего письма хостера.
Проверьте cron и systemd на всех похожих хостах, не только на пострадавшем. Persistence часто копируют шаблоном.
И отдельно усильте контроль исходящей почты и DNS-резолвинга с сервера: аномалии здесь часто выдают компрометацию раньше, чем «странный процесс» в топе.
После восстановления проверьте репутационные списки и очередь почты, если сервер участвовал в рассылке. Иначе чистый хост продолжит страдать от прошлого IP.
Добавьте контроль целостности критичных путей и алерт на новые sudo-права. Повторная компрометация часто начинается тихо, без майнера на весь CPU.
И проведите короткое обучение для тех, кто имеет доступ: фишинг ключей и слабые пароли панелей закрывают не только «сложными» средствами, но и дисциплиной.
Чистый сервер, новые секреты и закрытый вектор входа — единственная устойчивая тройка. Всё остальное лишь отодвигает следующее письмо от хостера.
Изоляция, чистая пересборка и ротация секретов важнее охоты за одним процессом в top — persistence всё равно переживёт наивную зачистку.
Попадание в ботнет — сигнал, что вход открыт и контроль потерян. Убить майнер недостаточно: нужны изоляция, понимание вектора, чистая пересборка или глубокая зачистка, ротация секретов и закрытие дыр.
Верните сервис с чистого контура и включите наблюдаемость исходящего трафика. Иначе следующий «непонятный» процесс на CPU снова объявит о себе письмом от хостера.
Один общий бот для всех — риск и беспорядок. Как развести HR, поддержку и аналитику с правами и логами.
Читать →
Десятки физических серверов с загрузкой 10–15% — платите за простой. Как консолидировать на виртуализации.
Читать →
На каждом сервере свой «зоопарк» правок. Как вернуть воспроизводимую конфигурацию.
Читать →Опишите ситуацию — предложим решение на основе нашего опыта.
Имя, Email, телефон и комментарий — остальное обсудим после заявки