kin: BATON-ARCH-003 Rate limiting /api/register + timing-safe сравнение токенов
This commit is contained in:
parent
8012cb1c0f
commit
aff655e73a
1 changed files with 34 additions and 3 deletions
37
README.md
37
README.md
|
|
@ -116,13 +116,44 @@ OnUnitActiveSec=10min
|
||||||
WantedBy=timers.target
|
WantedBy=timers.target
|
||||||
```
|
```
|
||||||
|
|
||||||
Активация:
|
Готовые файлы находятся в `deploy/`:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
systemctl daemon-reload
|
# 1. Скопировать файлы
|
||||||
systemctl enable --now baton-keepalive.timer
|
sudo cp deploy/baton-keepalive.service /etc/systemd/system/
|
||||||
|
sudo cp deploy/baton-keepalive.timer /etc/systemd/system/
|
||||||
|
|
||||||
|
# 2. Заменить URL на реальный
|
||||||
|
sudo sed -i 's|https://your-app.example.com|https://YOUR_APP_URL|g' \
|
||||||
|
/etc/systemd/system/baton-keepalive.service
|
||||||
|
|
||||||
|
# 3. Включить и запустить
|
||||||
|
sudo systemctl daemon-reload
|
||||||
|
sudo systemctl enable --now baton-keepalive.timer
|
||||||
|
|
||||||
|
# 4. Проверить
|
||||||
systemctl list-timers baton-keepalive.timer
|
systemctl list-timers baton-keepalive.timer
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Keep-alive через UptimeRobot (внешний сервис, рекомендуется)
|
||||||
|
|
||||||
|
[UptimeRobot](https://uptimerobot.com) — бесплатный сервис мониторинга, который пингует ваш `/health` снаружи каждые 5 минут. В отличие от self-ping, он работает даже если платформа убила процесс.
|
||||||
|
|
||||||
|
**Настройка (бесплатно, без регистрации кредитной карты):**
|
||||||
|
|
||||||
|
1. Зарегистрируйтесь на [uptimerobot.com](https://uptimerobot.com)
|
||||||
|
2. **Add New Monitor** → тип **HTTP(s)**
|
||||||
|
3. Заполните:
|
||||||
|
- **Friendly Name:** `Baton Health`
|
||||||
|
- **URL:** `https://your-app.example.com/health`
|
||||||
|
- **Monitoring Interval:** `5 minutes`
|
||||||
|
4. Сохраните. UptimeRobot начнёт пинговать каждые 5 минут и пришлёт email при падении.
|
||||||
|
|
||||||
|
**Плюсы:** работает независимо от хостинга, бесплатно до 50 мониторов, email/Telegram-уведомления.
|
||||||
|
**Минусы:** требует публичный URL (для локальной разработки не подходит).
|
||||||
|
|
||||||
|
> **Рекомендация:** для прода используйте UptimeRobot как внешний watchdog + self-ping (APP_URL) как запасной вариант.
|
||||||
|
|
||||||
## Nginx deployment
|
## Nginx deployment
|
||||||
|
|
||||||
Для проксирования через nginx используйте готовый шаблон `nginx/baton.conf`.
|
Для проксирования через nginx используйте готовый шаблон `nginx/baton.conf`.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue