From 993e86086bb38043b697b1a8f480d52a62f7393e Mon Sep 17 00:00:00 2001 From: OpeItcLoc03 Date: Sun, 24 May 2026 12:03:02 +0000 Subject: [PATCH] meta(tasks): create [books-ssh-audit-shared-vds] in OpeItcLoc03/admin --- .tasks/STATUS.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index f98e93e..078923d 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -122,3 +122,32 @@ _Updated: 2026-05-24 (Cleanup: 25 🟢 closed blocks → [ARCHIVE.md](ARCHIVE.md --- + +## ⚪ [books-ssh-audit-shared-vds] — Ops-таска для Фазы 3, шаг 2 дизайна `tenant-split` из victor/books. SSH-аудит на текущем shared VDS перед cutover'ом. На промежуточной стадии (1 VDS, 2 стека, 2 БД) — infra-level изоляция временно скомпрометирована: пользователь с SSH к VDS может прочитать БД соседнего tenant'а через localhost. Минимизировать риск до Фазы 3. + +**Контекст dev-source:** дизайн в victor/books `.wiki/concepts/tenant-split.md` § «Двухуровневая изоляция пользователей → Infra-level». + +**Не блокируется ничем** — можно сделать сразу при начале Фазы 2 logical split. + +**Acceptance:** +- `~/.ssh/authorized_keys` на shared VDS reviewed. +- Все ключи, не принадлежащие core-разрабу или формально-назначенному админу клиента — отозваны. +- Особое внимание: ключи аналитиков (если они когда-то выдавались) — отозвать. Аналитики работают через app-level login, не SSH. +- Документировать список оставшихся ключей в `OpeItcLoc03/admin/.wiki/concepts/books-ssh-access.md` (или эквивалент): owner, дата выдачи, обоснование. + +**Status:** ready +**Where I stopped:** (not started) +**Next action:** 1. `ssh user@ 'cat ~/.ssh/authorized_keys'` или через panel провайдера. +2. Для каждого ключа: идентифицировать owner (по комментарию в ключе, по дате последнего login через `last`, по записи в локальной памяти). +3. Сформировать список «оставить / отозвать»: + - **Оставить:** core-разраб (ты), формально-назначенный админ клиента (если есть). + - **Отозвать:** аналитики, бывшие сотрудники, неопознанные ключи. +4. Согласовать с учредителями (формально) перед удалением — особенно если есть ключи их подчинённых. +5. Удалить отозванные ключи из `authorized_keys`. Backup старого файла в `/etc/ssh/authorized_keys.pre-audit-$(date +%F)`. +6. Verify: `ssh -i user@host` отвергается. +7. Документировать в `OpeItcLoc03/admin/.wiki/concepts/books-ssh-access.md`. +8. Закрыть с note: «N ключей оставлено (), M отозвано». +**Branch:** n/a + + +---