🔐 Аудит доступов и оффбординг
Снято 05 июля 2026, хаб A-2022BAYAREA · дедлайн 15 июля · решать с Наташей
Задача Антона: отключить Олега Кличкина и Дениса Удота (последний разработчик) + всех бывших сотрудников от всех систем; забрать хостинг сайта под свой контроль.
СТАТУС 05.07 20:31 — решение: гоним всю внешнюю команду, координируем с Наташей.
✅ Наш независимый root-ключ заведён и проверен (не отрежем себя). ✅ Олег Кличкин и Денис Удот — ключи удалены со всех аккаунтов сервера (полный бэкап, откат в 1 команду). ✅ Наташе (@*****ya_Le) ушёл запрос: кто активен + у кого Hetzner/Cloudflare/101domain. ⏳ Остальную команду режем после её подтверждения (чтобы не сломать деплой).
⚠️ Приоритет №1 — выше SSH-ключей: у кого аккаунт Hetzner (почта ******tdevops@gmail.com) — тот через консоль может сбросить root и войти в обход ключей. Плюс на сервере ещё открыт вход по паролю (passwordauthentication yes). Пока Hetzner + эта почта + Cloudflare не наши — отрезанные могут вернуться. Забрать их — первым делом.
Исходно: ты назвал 2 человек — но root-доступ был у ~12 человек (все ключи в sudo-аккаунте developer). Полный список ниже.
🟢 ОБНОВЛЕНИЕ 11.07 — прогон offboarding с хаба:
- ✅ Боевые образы зеркалированы: 25 tarball'ов / 34 GB в
noahotc:/root/image-mirror-backup/ + конфиги стеков (140M). Все 4 прод-стека проверены — поднимутся из локальных образов без реестра. harbor.cryptozaurus.com уже мёртв в DNS — что крутится, спасено
- ✅ Отрезаны ещё 10 ключей (Nikolay, Artem, Garik×2, Khayrullo, Olzhas, mindphaser, sgritsenko, kolbin, VDenisov). Бэкап
/root/authkeys-backup-20260711-130020.tgz. Сервисные (jenkins, postgresql3, gitlab-runner, telegraf) и наши 2 ключа — целы.
- ✅ Пароль
developer ротирован (был единственный аккаунт с паролем, команда знала общий) → новый только у нас (credential-store). Глобальный passwordauth НЕ трогал — Шаг 6.
- ✅ Наташа: ответила 05.07 (активны Денис+Олег; почта у Сергея Походенко+Олега — новое имя!). Отправлен follow-up про Cloudflare/101domain-держателей.
- 🔴 Ждёт Антона (2FA): захват Hetzner — аск
#1a089f95 в 02 POLICE. noahotc = Hetzner Robot/dedicated (не Cloud) → вход ******tdevops@gmail.com на robot.hetzner.com.
- ✅ Глеб Тайгунов ОТРЕЗАН (Антон: «РЕЗАТЬ») — оба ключа удалены, eventsbot-контейнеры живы. Теперь в
developer только наш ключ — вся внешняя команда вычищена.
- 📋 n8n-ключ жив (94 wf), истекает 15.07 → пересоздать через веб-UI (bb-аккаунт); origin-IP найдётся после захвата Cloudflare.
1 · Карта систем и точек контроля сайта
Цепочка «от домена до железа». Чтобы «полностью забрать сайт», нужен контроль над каждым звеном.
① Домен точка №1
palo-alto.ai
- Регистратор: 101domain.com (101domain GRS Ltd)
- Создан 01.08.2023 · продлён до 01.08.2027
- Приватность включена (Digital Privacy Corp)
- Статус: clientTransferProhibited (замок на перенос)
Нужен логин в 101domain — у кого он? Скорее всего у девопса (Олег) или Дениса.
② DNS + прокси точка №2
Cloudflare
- NS: buck / etta .ns.cloudflare.com
- Сайт спрятан за Cloudflare (IP 172.67../104.21..)
- Кто держит Cloudflare-аккаунт — тот рулит DNS сайта прямо сейчас
Нужен логин в Cloudflare (аккаунт неизвестен).
③ Боевой сервер у нас есть SSH
noahotc · 188.40.100.249 (Hetzner)
- 27 контейнеров, живой прод
- Сайт: websites_production-platinum-alto + palo-alto_research
- CRM (деньги): leads-crm_production-*
- traefik-proxy → отдаёт наружу через Cloudflare
У нас есть ключ claude-code-hp17 (аккаунт developer, sudo). Не потерять его при чистке.
④ Сборка/деплой инфра команды
GitLab + Harbor + Jenkins
- gitlab.star-alliance.io — код CRM/сайта
- harbor.star-alliance.io, harbor.cryptozaurus.com — реестры образов
- Jenkins + gitlab-runner на сервере
Домены star-alliance.io / cryptozaurus.com — инфра команды Дениса, НЕ твоя. Сайт пересобирается из них. Это отдельная тема «миграция», не только оффбординг.
⑤ n8n (роботы) под контролем
n8n.palo-alto.ai · 89 workflow
- В n8n только 1 аккаунт — наш (bbplatinum). Личных аккаунтов Олега/Дениса там нет ✅
- Живёт на отдельном хосте (не noahotc)
- API-ключ истекает 15.07 — ровно в дедлайн ⚠️
Риск не в аккаунтах, а в том, есть ли у них SSH к хосту n8n — надо найти этот хост.
⑥ Hetzner + почта-2FA делил девопс
console.hetzner.com
- MAIN: ******tdevops@gmail.com — логин/пароль девопс раздавал
- root-пароль сервера уходит на эту почту → почта = ключ ко всему
- На Gmail включена 2FA
Сменить пароль Hetzner + разобраться, у кого доступ к ******tdevops@gmail.com. Это корневая почта восстановления.
2 · Кто имеет доступ к боевому серверу (карта ключей)
Каждая строка — реальный SSH-ключ, найденный на сервере 188.40.100.249 (read-only проверка). «Через developer» = sudo/root.
УБРАТЬ назвал АнтонСПРОСИТЬ отметь: свой/бывшийОСТАВИТЬсервис
| Человек / ключ | Где ключ (доступ) | Уровень | Решение — отметь |
| Олег Кличкин oleg@kparent · OlegKlyuchkin@anviar | root напрямую + developer + devops | ROOT ×3 | ✅ ОТРЕЗАН 20:31 |
| Денис Удот DenisUdot@No148 · udot | developer (sudo) + свой аккаунт udot | ROOT | ✅ ОТРЕЗАН 20:31 |
| ***olay *******innikov NikolayKrasheninnikov@nikolkrash | developer (sudo) | root | СПРОСИТЬ |
| **tem ****chkov ArtemStarchkov@artemstarchkov | developer (sudo) | root | СПРОСИТЬ |
| **rik ****elian GarikMikaelian@gbmikaelian (2 ключа) | developer (sudo) | root | СПРОСИТЬ |
| Khayrullo Rustamov KhayrulloRustamov@khayrullosss | developer (sudo) | root | СПРОСИТЬ |
| ***has ***nov OlzhasKuanov@ollzhas | developer (sudo) | root | СПРОСИТЬ |
| Gleb Taygunov GlebTaygunov@tgaru | developer (sudo) + свой аккаунт gleb | root | СПРОСИТЬ (в заметках — «деньги», возможно активен) |
| «mindphaser» mindphaser@NSK-NBT01 | devops | root | СПРОСИТЬ |
| «sgritsenko» sgritsenko | devops | root | СПРОСИТЬ |
| Dmitry Kolbin kolbin@Dmitrijs-MBP | аккаунт kolbin | обычный | СПРОСИТЬ |
| V. Denisov VDenisov | platinum-dba (база данных) | БД | СПРОСИТЬ |
| Claude (мы) claude-code-hp17->n8n-vps | developer (sudo) | root | ОСТАВИТЬ |
| jenkins@infra / gitlab-runner / devops@postgresql3 | CI/деплой | сервис | не трогать сходу (сломает деплой) |
Почему так важно: все люди выше заходят под общим аккаунтом developer, а он = root. Пока там лежит хоть один чужой ключ — человек имеет полный доступ к серверу с CRM (деньги) и сайтом. Убрать надо ключи, а не только «сказать не заходить».
3 · План оффбординга по фазам
Порядок нарочно такой: сначала закрепляем СВОЙ контроль, потом отрезаем чужих — чтобы не отрезать самих себя и не уронить прод (там деньги CRM).
Фаза 0 Аудит — ✅ сделано сегодня
- Собрана карта всех систем, ключей и людей (этот дашборд).
Фаза 1 Закрепить наш контроль (перед любым отрезанием)
- Завести наш чистый root-путь на сервере (отдельный админ-аккаунт + наш ключ), проверить что заходит.
- Разобраться, у кого сейчас ******tdevops@gmail.com (почта-2FA Hetzner/сервера) и Cloudflare/101domain — это точки, где чужой может всё отыграть назад.
- Поставить резервные email + телефоны (твои / Антона, PT или US) на Hetzner, Cloudflare, 101domain, Google. Tier-2 — нужен ты
- Найти хост n8n и проверить, кто имеет к нему SSH.
Фаза 2 Отрезать людей (после отметок «убрать/оставить»)
- Удалить SSH-ключи отрезаемых из
root, developer, devops и их личных аккаунтов. Tier-2
- Сменить пароли, которые они знали: Hetzner, веб-логин n8n, GitLab-CRM, БД. Tier-2
- «Выключить и заблокировать n8n для них» — как договорились, закрыть вход (смена пароля + при желании временно снять публичный доступ). Tier-2
- Новый пароль BB Platinum им НЕ передавать (зафиксировано).
- Пересоздать API-ключ n8n (истекает 15.07) — заодно.
Фаза 3 Забрать хостинг сайта под себя
- Получить/сменить владельца аккаунтов 101domain (домен) и Cloudflare (DNS). Tier-2
- Решить судьбу сборки на инфре команды (GitLab/Harbor star-alliance/cryptozaurus): либо получить доступ, либо запланировать перенос образов сайта к нам. Отдельный проект — не успеть к 15.07, но зафиксировать.
Фаза 4 Handoff + всё в Vault
- Организовать передачу дел от Олега и Дениса (что где лежит, как деплоится) — до отрезания забрать знания.
- Все найденные доступы/пароли занести в credential store (уже частично есть).
4 · Что от кого нужно
🔴 От Антона лично
- Отметить в таблице: кто «бывший» (убрать), кто активен (оставить).
- Разрешение (`+`) на разрушающие шаги (удаление ключей, смена паролей).
- Пройти анти-бот/2FA там, где сам ввести не могу (Hetzner/Cloudflare/101domain).
- Дать номера телефонов для резервного восстановления.
🟡 С Наташей
- У кого сейчас логины ******tdevops@gmail.com, Cloudflare, 101domain.
- Кто из команды ещё работает, кто ушёл (подтвердить список).
- Забрать пароли/доступы, что лежат в её переписках.
🟢 Делаю я (сам)
- Готовый скрипт удаления ключей и ротации — покажу ДО→ПОСЛЕ, жму по твоему `+`.
- Найду хост n8n и остальные точки доступа.
- Занесу всё в Vault/credential store.
- Заведу наш чистый root-путь на сервере.
Статус: Фаза 0 (аудит) закрыта. Ничего разрушающего ещё не сделано — жду твои отметки «убрать/оставить» и `+` на Фазу 1.