From a66b9086890875950112c02896c3b15ae7a65865 Mon Sep 17 00:00:00 2001 From: Repinoid Date: Sat, 10 Oct 2026 15:58:37 +0300 Subject: [PATCH] =?UTF-8?q?doc:=20=D0=BF=D1=80=D0=BE=D0=B4-=D1=85=D0=B0?= =?UTF-8?q?=D1=80=D0=B4=D0=BD=D0=B5=D0=BD=D0=B8=D0=BD=D0=B3=20(seed=20off,?= =?UTF-8?q?=20=D0=BD=D0=BE=D0=B2=D1=8B=D0=B9=20admin-token,=20logrotate)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HISTORY/2026-10-10-session-log.md | 5 +++++ doc/thinking/vm-public-entrypoint-2026-10-10.md | 9 +++++++++ 2 files changed, 14 insertions(+) diff --git a/HISTORY/2026-10-10-session-log.md b/HISTORY/2026-10-10-session-log.md index b7e6d12..9221ca7 100644 --- a/HISTORY/2026-10-10-session-log.md +++ b/HISTORY/2026-10-10-session-log.md @@ -101,6 +101,11 @@ `SaveMessages` + идемпотентность через `store.List()`. - Управление: `sudo systemctl {status,restart,stop} shared-sqs`. +### 2.12. Прод-хардненинг +- `SHARED_SQS_SEED_DEMO=false`; admin-token сменён на случайный 64-hex (в `/etc/shared-sqs.env`); + logrotate для `sqs.log`. +- Billing/JWT не настроены. Проверено: сервис работает на существующем тенанте из Redis. + ## 3. Грабли (для повторного использования) 1. **`proxy_set_header Host $host` теряет порт** → SigV4 `SignatureDoesNotMatch`. diff --git a/doc/thinking/vm-public-entrypoint-2026-10-10.md b/doc/thinking/vm-public-entrypoint-2026-10-10.md index 42b73df..bdcedd8 100644 --- a/doc/thinking/vm-public-entrypoint-2026-10-10.md +++ b/doc/thinking/vm-public-entrypoint-2026-10-10.md @@ -132,3 +132,12 @@ curl -sS https://sqs.sinefo.ru/health ### Для прода `SHARED_SQS_SEED_DEMO=false` (демо-данные не нужны), тенанты/очереди создаются через API (они персистятся штатно). + +## 9. Прод-хардненинг (2026-10-10, выполнено) + +- `SHARED_SQS_SEED_DEMO=false` — демо-данные отключены (существующий тенант подхватывается из Redis). +- **admin-token сменён** на случайный 64-hex (хранится в `/etc/shared-sqs.env`, 600). Прежний + `dev-token-123` был слабым, а сервис теперь публичный. Прочитать: `sudo sed -n '1p' /etc/shared-sqs.env`. +- **logrotate** `/etc/logrotate.d/shared-sqs`: daily, rotate 7, compress, delaycompress, + copytruncate, `su naeel naeel` (copytruncate — процесс держит файл открытым). +- Billing (PostgreSQL) и JWT-валидация — **не настроены** (сервис работает без них).