HTTP Upload (XEP-0363): mod_http_upload, https 5281, upload.nixg.ru, LE-серт

This commit is contained in:
2026-08-28 19:43:41 +00:00
parent a104b6d764
commit cfaa7397aa
+12 -3
View File
@@ -107,9 +107,18 @@ chromium --headless --no-sandbox --disable-gpu --enable-logging=stderr --virtual
- Сертификат: /etc/letsencrypt/live/nixg.ru/ → скопирован в /opt/icq/certs/nixg.ru.{crt,key}
- Проверено снаружи: c2s 5222 и s2s 5269 отдают LE (issuer=Let's Encrypt, SAN nixg.ru+xmpp.nixg.ru), TLS 1.3
- Истекает 2026-11-26; certbot настроил автопродление — НО при dns-01 вручную автопродление НЕ сработает без повторного добавления TXT! Продление: `sudo certbot renew --manual-auth-hook /bin/true --manual-cleanup-hook /bin/true` (после добавления TXT). TODO: настроить напоминание/скрипт.
- [ ] HTTP Upload (XEP-0363): установить mod_http_upload из prosody-modules
(в docker Prosody 0.11.9 модуля НЕТ). Путь модулей: ./modules в compose.
Подробности в WALKTHROUGH.md раздел 7.
- [x] **HTTP Upload (XEP-0363) — ВЫПОЛНЕНО ✅ (2026-08-28)**
- Модуль: `mod_http_upload` из Ubuntu-пакета `prosody-modules` (apt) → скопирован в ./modules/
- Prosody: `Component "upload.nixg.ru" "http_upload"`, лимит 10MB, хранение 7 дней, require_authentication,
http_external_url=https://upload.nixg.ru, https-порт 5281 (глобальный ssl с LE-сертом nixg.ru)
- Caddy (vps02, /opt/caddy/Caddyfile): `upload.nixg.ru { reverse_proxy 10.8.0.2:5281 { transport http { tls_insecure_skip_verify } } }`
— skip verify нужен т.к. backend-серт для nixg.ru (не upload.nixg.ru)
- DNS: A upload.nixg.ru → 87.242.100.206 (Jino, добавлено пользователем 2026-08-28)
- Проверено slixmpp: disco фичи urn:xmpp:http:upload:0, слот, PUT, GET→200 с содержимым
(цикл через .venv: aiohttp+slixmpp 1.17; upload_file(filename,size,content_type,input_file=))
- НЕБОЛЬШАЯ ЗАСАДА: на bigbox старый DNS-кэш показывал 81.177.135.175 — лечится
`sudo systemctl restart systemd-resolved` (flush-caches недостаточно)
- Локальный кэш 1.1.1.1 ещё может держать старый IP до TTL — не ошибка
- [ ] OMEMO (сквозное шифрование) — Проверить включение модуля, клиенты.
- [ ] Бот-книгоискатель (slixmpp + OPDS) — Этап 3 PRD.
- [ ] Мосты mautrix (Telegram/WhatsApp) — Этап 4; нужен external component (mod_component).